---
title: OpenWrt 初始配置步骤
description: "设置指南 BESTNET 提供的 **OpenWrt 模板**初始配置步骤 首次启动后安全开始使用的步骤。先配置 WAN，再用 HTTPS 保护 LuCI，然后循序渐进地进行配置。 WAN = eth0 工作 LAN = eth1 HTTPS GUI（LuCI） 仅在必要时使用 SSH ## 适用范围与前提条件 - 对象：BESTNET 提供的 OpenWrt 模板 - WAN = `eth0`（配置了全局 IP 的接口） - 工作 LAN = `eth1`（DHCP／用于控制台恢复的网络） -…"
url: "https://bestnetllc.co.jp/zh-hans/docs/openwrt-%e5%88%9d%e5%a7%8b%e9%85%8d%e7%bd%ae%e6%ad%a5%e9%aa%a4/"
updated: "2026-10-19"
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 上均将 443／22 端口仅限管理 IP 访问）
- 配置错误可能导致实例无法访问。**操作过程中请保持控制台处于打开状态**
- 控制台可能按美式键盘布局解析输入（尤其是 `/` 和 `:`）。本指南中主要需要用到的符号是 `.`、`/` 以及空格

## 整体流程

1. （可选）在门户中创建 OpenWrt 实例
2. 在门户中记录 WAN 信息和管理 IP
3. 通过控制台以 root 身份登录
4. 运行 `firstboot.sh` 初始配置 WAN 和 HTTPS
5. 在云端 FW／SG 中仅允许管理 IP 访问 443 端口
6. 登录 LuCI（HTTPS）
7. （如有必要）注册 SSH 公钥 → 使用 `enable_ssh.sh` 启用 SSH → 在云端 FW／SG 中仅允许管理 IP 访问 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 确认公网 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 设置为公网 IP／2 = IP 数量（通常为 1 个）／3 = 创建按钮）。

**要点：**本指南的前提是 `eth0` 为 WAN（公网）。若门户允许更改网卡分配或顺序，请确保 `eth0` 处于公网一侧。

## 步骤 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 设备设置为 `eth0`／2 = 输入 WAN IPv4、子网掩码、网关、DNS）。

需要输入的项目（示例）：

- WAN 设备：`eth0`
- WAN IPv4 地址：门户中的 IP（示例：`203.0.113.2`）
- WAN 子网掩码：门户中的子网掩码（示例：`255.255.255.224`）
- WAN 网关：门户中的网关（示例：`203.0.113.1`）
- DNS 服务器：未指定时使用 `1.1.1.1 8.8.8.8` 即可
- 管理来源 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 相同，直接按回车使用默认值即可。

该脚本通常会执行以下操作：

- 启动 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 设备设置错误（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
