openwrt 配置

这里就不讲怎么安装 openwrt 了,如果在安装 luci 时访问 openwrt 源比较慢,可以考虑使用 ss 代理访问 openwrt 源,详细操作请参考: ss 代理 openwrt

官方提供的 openwrt 估计登录账号是 root,密码是 password

安装中文包

远程连接 openwrt 并在终端执行opkg install luci-i18n-base-zh-cn

修改主机密码

执行passwd root并设置密码.

修改时区

wwwechoxu

修改 ssh 端口

wwwechoxu

配置 WAN 接口

用于路由器拨号设置:

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

配置 LAN 接口

用于局域网配置:

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

配置无线网络

openwrt 的 2.4g 网速很差,但5 g 有些问题,所以配置 5G 网络时要按如下图的配置.

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

配置 opkg 代理源

wwwechoxu

默认源:

src/gz openwrt_core http://downloads.openwrt.org/releases/19.07.2/targets/ramips/mt7621/packages
src/gz openwrt_kmods http://downloads.openwrt.org/releases/19.07.2/targets/ramips/mt7621/kmods/4.14.171-1-2e88863ccdd594fb8e842df3c25842ee
src/gz openwrt_base http://downloads.openwrt.org/releases/19.07.2/packages/mipsel_24kc/base
src/gz openwrt_luci http://downloads.openwrt.org/releases/19.07.2/packages/mipsel_24kc/luci
src/gz openwrt_packages http://downloads.openwrt.org/releases/19.07.2/packages/mipsel_24kc/packages
src/gz openwrt_routing http://downloads.openwrt.org/releases/19.07.2/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://downloads.openwrt.org/releases/19.07.2/packages/mipsel_24kc/telephony

配置防火墙

wwwechoxu

批量更新软件

opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade

定时重启路由和关闭 WIFI

wwwechoxu

配置路由器访问光猫登录地址

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

wwwechoxu

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
iptables -I forwarding_rule -d 192.168.1.1 -j ACCEPT
iptables -t nat -I postrouting_rule -d 192.168.1.1 -j MASQUERADE

其中第一行第一个是与光猫同网段的任意一个 ip,用于分配给路由器。eth0 是光猫连接的路由器端口。 第二三行是光猫的实际 ip.

上面命令重启后需要重新执行,可以加到开机启动项里。

安装 ss

安装 shadowsocks-libev 相关的包

opkg update

opkg install shadowsocks-libev-config shadowsocks-libev-ss-local shadowsocks-libev-ss-redir shadowsocks-libev-ss-rules shadowsocks-libev-ss-tunnel luci-app-shadowsocks-libev luci-i18n-shadowsocks-libev-zh-cn

基础配置

进入 openwrt web 配置界面,选择 Service->shadowsocks-libev

点击 Remote Servers, 里面已经默认配置一个服务器 sss0,修改地址,端口,密码,加密方式,最重要的,将 disabled 的勾去掉,点击 save&apply 按钮。

再点击 Local Instances, 点击 ss-local.cfgXXXXX (XXX 为随机数字)条目对应的 Disabled 按钮,将其变成 Enabled,点击 Save & Apply。配置保存生效以后, ss-local.cfgXXXX 条目的 Running 状态由 no 变为 yes。这时,路由器上已经运行一个 SOCKS5 服务器,端口 1080。设置电脑浏览器的代理服务器为路由器地址,端口 1080,尝试访问谷歌,如果成功则说明 ss 客户端在 openwrt 上工作一切正常。

接着要测试 iptables+ss-redir 自动转发代理(透明代理)的功能,在 Local Instances 中,将 ss-redir.hi 设为 Enabled。再点击 Redir Rules, Disabled 勾去掉,点击 Destination Settings,dst default 由 bypass 改为 forward。点击 Save&Apply 使配置生效。将电脑浏览器的代理设置取消,访问谷歌,如果成功,则说明无条件透明代理设置成功。所有数据包都由路由器转发到 ss 服务器了。

参考地址

wwwechoxu

误删除 Dropbear 致不能 ssh

问题是这样发生的,我误删了 系统-管理权-SSH 访问-Dropbear 实例导致不能 ssh 连接 openwrt

解决办法:

1: 先去系统-software-installed中删除dropbear,这是它会提示你还有一些 dropbear 配置相关的文件没有删除,记住这些配置文件的路径(有两个配置文件).我们必须要删除这些配置文件,不然即使重装 dropbear 也还是无法 ssh 连接 openwrt.

2: 去系统-启动项-本地启动脚本,在exit 0 前面添加 rm -rf dropbear配置文件路径

3: 重启路由器

4: 重新安装 dropbear.

备份 openwrt 配置

wwwechoxu

编译 openwrt 固件

流行的有两种方法:

1: 下载 openwrt 源码,再执行一系列 make 操作...详细请参考源码编译 openwrt参考 1

2: 使用 Image Builder 自定义 openwrt 配置. 去各芯片架构 imageBuilder,选择匹配自己路由器的芯片架构目录,然后往下翻到底,会看到这样名称的文件,如: openwrt-imagebuilder-19.07.2-ramips-mt7621.Linux-x86_64.tar.xz

参考地址

另外还有通过 SDK 进行编译的.

上次更新:
贡献者: iEchoxu