---
# System prepended metadata

title: 'OverTheWire: Bandit 解題筆記｜Level 0'
tags: [OverTheWire, 資訊安全, Linux]

---

---
title: 'OverTheWire: Bandit 解題筆記｜Level 0'
tags:
- OverTheWire
- Linux
- 資訊安全
---
# Bandit: Level 0
**關卡目標**
這一關的目標是讓你使用 SSH 登入遊戲。你需要連接的伺服器是 `bandit.labs.overthewire.org`，埠 `2220`。用戶名是 `bandit0`，密碼是 `bandit0`。登入後，請前往 [第 1 關](https://overthewire.org/wargames/bandit/bandit1.html) 頁面，了解如何通過 [第 1 關](https://overthewire.org/wargames/bandit/bandit1.html) 。

**你可能需要用到的指令**
- [ssh](https://man7.org/linux/man-pages/man1/ssh.1.html)

**有用的閱讀資料**
- [Secure Shell (SSH) on Wikipedia](https://en.wikipedia.org/wiki/Secure_Shell)
- [How to use SSH on wikiHow](https://www.wikihow.com/Use-SSH)

## 解題思路
從題目可以知道，要進入遊戲要透過 SSH 登入遠端的主機。所以我們的重點就是去了解要怎麼透過 `ssh` 指令來進入遠端的主機。

如果對題目的一些名詞不太熟悉的話這邊列出幾個會要了解的知識：
- [Wiki: IP 網際網路協定](https://zh.wikipedia.org/wiki/網際網路協定)
- [Wiki: 埠](https://zh.wikipedia.org/wiki/通訊埠)
- [Wiki: 域名](https://zh.wikipedia.org/wiki/域名)
- [Wiki: Secure Shell](https://zh.wikipedia.org/zh-tw/Secure_Shell)

那簡單來說，我們在使用網路上網的時候。網路上的資源是透過類似現實生活中的信件、包裹的方式傳送資料（網頁、影片...等等）。

就如同寄信的時候會需要寄件人以及收件人一樣，電腦也需要被編號成不同的地址，也就是所謂的 IP 地址（IP address）。

而埠（通訊埠，port），可以想像成一棟大樓的許多樓層及房間。在寄包裹時我們也會標示要給幾號幾樓幾室的某某某。在電腦和電腦之間溝通時，除了必須指定地址外，也必須標示清楚要透過哪一個埠來傳輸資料。

域名則是幫 IP 地址取一個綽號。人們可以用簡單易懂的名稱來取代原本一坨數字的 IP 地址，例如告訴你 `172.217.160.110` 這個 IP 地址，會知道這個地址是 Google(google.com) 的 IP 地址嗎？幾乎是不太可能。

SSH 是一種遠端連線到電腦的協定，可以透過加密方式建立安全的遠端連線。而我們通常會透過 `ssh` 來連接到其他電腦。

# 詳解
首先要先理解如何使用 `ssh`。這個我就直接問 Chat GPT 了。
:::info
連接到特定通訊埠：

如果 SSH 伺服器使用非默認通訊埠（22），可以使用 `-p` 選項指定通訊埠：
```
ssh -p port_number username@remote_host
```
:::
這就簡單了，以此類推，要連接上題目要求的伺服器可以這樣下指令：
```zsh
$ ssh -p 2220 bandit0@bandit.labs.overthewire.org
```
然後就會跳出一個大大的 BANDIT 要求你輸入密碼，這時把 `bandit0` 輸入進去就好（輸入沒顯示文字是正常的）。

那恭喜你成功進入了 level 0 🎉。成功登入之後，會顯示一大堆資訊在螢幕上，大致上在講這個遊戲的資訊、規則，可以斟酌閱讀。

接著就進入 [Level 0 → Level 1](/NbmShGg7RjqrfzCni_t3Mg) 吧。