---
title: OpenWrt 初始設定步驟
description: "設定指南 BESTNET 提供之 **OpenWrt 範本** 初始設定說明 首次啟動後安全開始使用的步驟。請先設定 WAN，再以 HTTPS 保護 LuCI 的同時逐步進行設定。 WAN = eth0 工作 LAN = eth1 HTTPS GUI（LuCI） 僅在必要時使用 SSH ## 適用範圍與前提條件 - 適用對象：BESTNET 提供之 OpenWrt 範本 - WAN = `eth0`（設定全域 IP 的介面） - 工作 LAN =…"
url: "https://bestnetllc.co.jp/zh-hant/docs/openwrt-%e5%88%9d%e5%a7%8b%e8%a8%ad%e5%ae%9a%e6%ad%a5%e9%a9%9f/"
updated: "2026-06-08"
category: "BESTNET-CLOUD"
---

# OpenWrt 初始設定步驟

設定指南

BESTNET 提供之 **OpenWrt 範本** 初始設定說明

首次啟動後安全開始使用的步驟。請先設定 WAN，再以 HTTPS 保護 LuCI 的同時逐步進行設定。

WAN = eth0
工作 LAN = eth1
HTTPS GUI（LuCI）
僅在必要時使用 SSH

## 適用範圍與前提條件

- 適用對象：BESTNET 提供之 OpenWrt 範本
- WAN = `eth0`（設定全域 IP 的介面）
- 工作 LAN = `eth1`（DHCP／用於主控台復原的網路）
- 初次登入透過 HTTPS GUI（LuCI）進行
- SSH**僅在必要時**啟用（於註冊金鑰／開放連接埠 22 後啟用，禁止使用密碼進行 SSH）

## 重要注意事項（請務必閱讀）

**此範本不支援 cloud-init**，因此首次使用時需要手動設定。

- **必須限制存取來源 IP**（將雲端側 FW／SG 與 OpenWrt 側 FW 皆設定為僅允許來自您管理 IP 的 443／22 連接埠）
- 設定錯誤可能導致無法存取執行個體。**作業過程中請保持主控台開啟**
- 主控台可能會以美式鍵盤配置解讀輸入（尤其是 `/` 與 `:`）。本指南主要用到的符號為 `.`、`/` 及空格

## 整體流程

1. （選用）在入口網站建立 OpenWrt 執行個體
2. 在入口網站記錄 WAN 資訊與管理 IP
3. 透過主控台以 root 登入
4. 執行 `firstboot.sh` 以初步設定 WAN 及 HTTPS
5. 在雲端側 FW／SG 中，僅允許來自管理 IP 的 TCP 443
6. 登入 LuCI（HTTPS）
7. （如有需要）註冊 SSH 公開金鑰 → 使用 `enable_ssh.sh` 啟用 SSH → 在雲端側 FW／SG 中僅允許來自管理 IP 的 TCP 22

## 步驟 0（選用）在入口網站建立 OpenWrt 執行個體

若執行個體已經佈建完成，可略過此步驟。入口網站介面可能因供應商而異，但範例遵循以下流程：

### 步驟 0.1 將範本（OS）設為 OpenWrt

![Example of selecting OpenWrt template in creation screen](https://bestnetllc.co.jp/wp-content/uploads/2026/02/portal-create-instance-template.png)**圖片：**建立畫面中選擇範本的範例（1 = OS 範本／2 = 主機名稱）。

### 步驟 0.2 確認 Public IP 配置設定並建立

![Example of verifying Public IP allocation in network settings](https://bestnetllc.co.jp/wp-content/uploads/2026/02/portal-create-instance-network.png)**圖片：**網路設定範例（1 = 將 IPv4 Pool 設為 Public IP／2 = IP 數量（通常為 1）／3 = 建立按鈕）。

**重點：**本指南的前提是 `eth0` 為 WAN（Public）。若入口網站可變更網卡配置或順序，請確保 `eth0` 位於 Public 端。

## 步驟 1事前準備（於入口網站確認）

請從入口網站記錄以下資訊（配置資訊）：

### WAN（全域）資訊

- IPv4 位址（範例：`203.0.113.2`）
- 子網路遮罩（範例：`255.255.255.224`）
- 閘道（範例：`203.0.113.1`）
- DNS（若無特別指定，使用 `1.1.1.1` `8.8.8.8` 即可）

### 管理 IP（您裝置的全域 IP）

- 固定全域 IP（建議）：公司線路／VPN 出口等
- 範例：`203.0.113.10/32`

若您的管理 IP 會變動（行動網路／家用線路），日後很可能會將自己鎖在外面。請盡量使用固定 IP（公司／VPN）。

如有疑慮，請開立支援票與我們洽詢。

![Example of location to confirm console and WAN IP in portal](https://bestnetllc.co.jp/wp-content/uploads/2026/02/portal-server-details.png)**圖片：**入口網站中確認「主控台」與「IP（WAN）」位置的範例（1 = 主控台／2 = IP）。

### 參考：CIDR 與子網路遮罩換算

| CIDR | 子網路遮罩 |
| --- | --- |
| /29 | 255.255.255.248 |
| /28 | 255.255.255.240 |
| /27 | 255.255.255.224 |
| /26 | 255.255.255.192 |
| /24 | 255.255.255.0 |

## 步驟 2透過主控台登入（必要）

1. 從入口網站開啟主控台（noVNC／Proxmox 等）。
2. 出現 `login:` 時，以 `root` 登入。

初始狀態下，root 密碼通常尚未設定（處於鎖定狀態），此範本假設可透過主控台登入。若被要求輸入您不知道的密碼，請聯絡供應商。

## 步驟 3執行初始設定指令碼

確認提示字元為 `root@OpenWrt:~#`，然後執行 `firstboot.sh`。

```bash
./firstboot.sh
```

若執行失敗（出現 Permission denied 等錯誤），請以指定路徑的方式執行：

```bash
sh /root/firstboot.sh
```

![Example of running firstboot.sh in console](https://bestnetllc.co.jp/wp-content/uploads/2026/02/console-run-firstboot.png)**圖片：**在主控台執行 `./firstboot.sh` 的範例（1 = 要執行的指令）。

## 步驟 4回答指令碼的提問

指令碼會依序提出問題。請使用您在**步驟 1**中記錄的資訊作為輸入值。

### 步驟 4.1 設定 root 密碼（必要）

若指令碼一開始偵測到 root 密碼尚未設定，將會啟動 `passwd`。請依照指示設定新密碼。

此密碼為登入 LuCI（HTTPS GUI）所必需。

### 步驟 4.2 輸入 WAN 設定

本指南的前提是 `eth0` 為 WAN，因此即使提示顯示 `WAN device [eth1]:`，也請**輸入 `eth0`**。

![Input example for firstboot.sh](https://bestnetllc.co.jp/wp-content/uploads/2026/02/console-firstboot-prompts.png)**圖片：**`firstboot.sh` 的輸入範例（1 = 將 WAN device 設為 `eth0`／2 = 輸入 WAN 的 IPv4、子網路遮罩、閘道、DNS）。

需要輸入的項目（範例）：

- WAN device：`eth0`
- WAN IPv4 位址：入口網站中的 IP（範例：`203.0.113.2`）
- WAN netmask：入口網站中的子網路遮罩（範例：`255.255.255.224`）
- WAN gateway：入口網站中的閘道（範例：`203.0.113.1`）
- DNS servers：若無特別指定，使用 `1.1.1.1 8.8.8.8` 即可
- Admin source IP／CIDR：您的管理 IP（範例：`203.0.113.10/32`）

### 步驟 4.3 確認套用

最後會顯示您的設定內容。若確認無誤，請輸入 `y`，以回應 `Apply these settings? [y/N]:` 的提示。

套用完成後，指令碼會設定 OpenWrt 側的網路設定，以及以管理 IP 限制的 HTTPS 存取允許（FW）設定。

## 步驟 5設定基礎防火牆（雲端側）（HTTPS）

指令碼執行完成後，請在**雲端側（基礎 FW／SG）**允許 HTTPS。

- 允許：TCP 443
- 來源：管理 IP（範例：`203.0.113.10/32`）
- 目的地：此 OpenWrt 執行個體（WAN 側）

![Example of permitting TCP 443 from management IP only in base firewall](https://bestnetllc.co.jp/wp-content/uploads/2026/02/portal-add-firewall-rule-https.png)**圖片：**在基礎 FW／SG 中開放連接埠 443 的範例（1 = 將來源 IP 限制為管理 IP／2 = 目的連接埠 443／3 = 輸出方向）。※ 項目名稱與外觀可能因入口網站而異。

即使先在基礎 FW 開放連接埠 443，在 OpenWrt 側允許之前仍無法存取，因此相對安全，但仍請**務必限制來源 IP**。

## 步驟 6登入 HTTPS GUI（LuCI）

請從瀏覽器存取以下網址：

```text
https://<WAN_IP>/
```

此時會出現自簽憑證警告。請確認內容後繼續（瀏覽器顯示方式依環境而異）。

![Example of self-signed certificate warning](https://bestnetllc.co.jp/wp-content/uploads/2026/02/browser-self-signed-warning-1.png)**圖片：**自簽憑證警告範例（1 = 進階設定）。

出現登入畫面後，請以使用者 `root` 及您在步驟 4.1 設定的密碼登入。

## 步驟 7（如有需要）啟用 SSH

原則：**先註冊金鑰後再啟用 SSH**（禁止使用密碼進行 SSH）。若您的作業不使用 SSH，可略過本節。

### 步驟 7.1 在 LuCI 中註冊 SSH 公開金鑰

LuCI 選單範例（標示方式可能因環境略有不同）：

`System → Administration → SSH-Keys`

![Example of opening Administration screen in LuCI](https://bestnetllc.co.jp/wp-content/uploads/2026/02/luci-open-administration.png)**圖片：**在 LuCI 中開啟 `System` 選單並選擇 `Administration` 的範例（1 = System／2 = Administration）。![Screen to register SSH public key in LuCI](https://bestnetllc.co.jp/wp-content/uploads/2026/02/luci-add-ssh-key.png)**圖片：**SSH-Keys 註冊畫面範例（1 = 貼上公開金鑰／2 = Add key 按鈕）。※ 公開金鑰為「非私密金鑰」（範例：`~/.ssh/id_ed25519.pub`）。

貼上公開金鑰（`ssh-ed25519 AAAA...` 需為單行）後儲存。

請**勿**貼上私密金鑰（`id_ed25519` 等）。

### 步驟 7.2 執行 SSH 啟用指令碼

請在主控台執行以下指令：

```bash
./enable_ssh.sh
```

若無法正常執行，請以指定路徑方式執行：

```bash
sh /root/enable_ssh.sh
```

![Example of starting enable_ssh.sh](https://bestnetllc.co.jp/wp-content/uploads/2026/02/console-enable-ssh-1.png)**圖片：**啟動 `enable_ssh.sh` 並輸入允許存取 SSH（22）之來源 IP 的範例（1 = 執行位置）。

系統會詢問您管理 IP。若與 HTTPS 使用的管理 IP 相同，直接按 Enter 採用預設值即可。

此指令碼通常會執行以下作業：

- 啟動 dropbear（SSH）
- 設定僅使用金鑰驗證（停用密碼驗證）
- 在 OpenWrt 防火牆新增規則，僅允許來自管理 IP 的連接埠 22

### 步驟 7.3 同時在雲端側 FW／SG 開放連接埠 22（限管理 IP）

- 允許：TCP 22
- 來源：管理 IP（範例：`203.0.113.10/32`）
- 目的地：此 OpenWrt 執行個體（WAN 側）

**警告：**在 OpenWrt 側完成 SSH 啟用（金鑰註冊 + enable_ssh）之前，請勿完全開放連接埠 22。

### 步驟 7.4 驗證連線（從您的裝置）

```bash
ssh -i ~/.ssh/id_ed25519 root@<WAN_IP>
```

使用密碼進行 SSH 登入**預期會失敗**（僅限金鑰）。

## 步驟 8常見疑難排解與復原

### 步驟 8.1 無法存取 HTTPS（逾時）

排查順序：

1. 確認雲端側 FW／SG 是否已允許來自管理 IP 的 TCP 443
2. 確認您的管理 IP 是否正確（線路是否已變更？）
3. 在主控台確認 WAN 設定是否已正確設定

主控台確認：

```bash
uci show network.wan
ip -o -4 addr show
ip route
```

確認封包是否有送達（範例）：

```bash
tcpdump -ni eth0 tcp port 443
```

### 步驟 8.2 管理 IP 已變更且無法存取

若管理 IP 已變更，可在主控台中改寫允許的 IP。

改寫 HTTPS 允許的來源：

```bash
uci set firewall.allow_https_from_admin.src_ip='<NEW_IP/32>'
uci commit firewall
/etc/init.d/firewall restart
```

若使用 SSH：

```bash
uci set firewall.allow_ssh_from_admin.src_ip='<NEW_IP/32>'
uci commit firewall
/etc/init.d/firewall restart
```

### 步驟 8.3 WAN device 設定錯誤（eth0／eth1）

在錯誤的介面上設定 WAN 會導致無法存取執行個體。可透過主控台進行復原。請確認 `network.wan.device` 是否為 `eth0`。

```bash
uci show network.wan.device
uci show network.wan.ifname  # Depending on environment, this key may be used instead
```

## 附錄：本指南中常用的預留位置替換對照

### `<WAN_IP>`

於入口網站確認之 WAN IPv4

### `<ADMIN_SOURCE_CIDR>`

您的管理 IP（範例：`203.0.113.10/32`）

### `<NEW_IP/32>`

管理 IP 變更後的新 IP
