华硕路由器搭建SSR服务端

  • 13
  • 13,314 阅读
  • A+
所属分类:家庭路由

不少朋友因为单位网络受限,很多应用和网站都无法正常使用和访问,需要借助相关代理工具才能解决问题。目前很多第三方路由器自制固件都自带SS服务端插件,但因众所周知的原因,SS若用于科学上网,在神州大地上的整体连接速度、稳定性都比较糟糕,今天给大家分享如何在华硕路由器上搭建SSR服务端。

 实验环境

路由器设备:华硕RT-AC68U

路由器固件:Koolshare-Merlin改版固件RT-AC68U_380.69_2-X7.8-ks

U盘:闪迪酷刃 8GB

ShadowsocksR:3.2.0

 相关工具

ShadowsocksR:https://github.com/shadowsocksrr/shadowsocksr/archive/3.2.0.tar.gz

Entware-ngu-setup.sh:http://files.hqt.ro/entware-ng/universal/entware-ngu-setup.sh

 服务端篇

第一步 开启路由器SSH

进入路由器后台,点击系统管理-系统设置,开启Enable SSH,应用本页设置即可生效。

第二步 挂载U盘

使用傲梅分区助手将U盘格式化为ext3格式,把U盘插入路由器,SSH终端登陆到路由器后台,确认U盘挂载情况。如下图,U盘已正常挂载到/tmp/mnt/wanghualang。

  1. Administrator@ASUS:/# df -h  

华硕路由器搭建SSR服务端

第三步 安装Entware

在执行安装脚本时会提示软件将要安装到哪个分区,教程中我只挂载了一个U盘,默认按1即可。

  1. Administrator@Asus:/# cd /tmp  
  2. Administrator@Asus:/tmp# wget --no-check-certificate http://download.wanghualang.com/entware-ngu-setup.sh  
  3. Administrator@Asus:/tmp# chmod +x entware-ngu-setup.sh  
  4. Administrator@Asus:/tmp# ./entware-ngu-setup.sh  

华硕路由器搭建SSR服务端

按需创建Swap分区,教程中设置512M,按1即可,创建完Swap分区后,按回车退出脚本。

华硕路由器搭建SSR服务端

第四步 安装相关依赖包

ShadowsocksR配置不同的加密,需要安装的软件依赖包也不同。我常用的加密方式为chacha20,所以教程中仅安装了libsodium扩展库,该加密安全性与aes-256-cfb相近,效率比aes-256-cfb稍高,推荐使用。

  1. Administrator@Asus:/# opkg install python libopenssl libsodium  

第五步 安装ShadowsocksR

下载解压软件包,这里要提醒一下初初接触Linux的新手朋友们,如果你是下载相关工具里提供的软件包,那么解压出来的文件夹名字便是shadowsocksr-3.2.0,需要手动把shadowsocksr-3.2.0修改为shadowsocksr,才能继续直接复制粘贴教程中的命令。

  1. Administrator@Asus:/# cd opt/  
  2. Administrator@Asus:/tmp/mnt/wanghualang/entware# wget --no-check-certificate http://download.wanghualang.com/shadowsocksr.tar.gz  
  3. Administrator@Asus:/tmp/mnt/wanghualang/entware# tar xzf shadowsocksr.tar.gz  

配置lib库路径

  1. Administrator@Asus:/# vi /opt/shadowsocksr/shadowsocks/crypto/util.py  

大约在第73行,找到:

  1. '/usr/lib*/lib%s.*' % name,  

把其中的 usr 修改为 opt,最终修改如下:

  1. '/opt/lib*/lib%s.*' % name,  

不熟悉文本编辑器的朋友,也可以直接执行下面的命令。

  1. Administrator@Asus:/tmp/mnt/wanghualang/entware# sed -i 's/\/usr\/lib/\/opt\/lib/' /opt/shadowsocksr/shadowsocks/crypto/util.py  

第六步 配置DDNS

因为绝大部分家庭网络都是使用动态IP,重启路由器时IP地址可能会发生改变,建议先配置好DDNS。进入路由器后台,点击系统管理-外部网络-DDNS-启用 DDNS Client,选择华硕自带的服务,输入一个未占用的主机名称,创建DDNS。

华硕路由器搭建SSR服务端

第七步 配置防火墙

按实际情况配置防火墙放行ShadowsocksR通信端口,教程中使用的是12345端口。

  1. Administrator@Asus:/# iptables -I INPUT -p tcp --dport 12345 -j ACCEPT  
  2. Administrator@Asus:/# iptables -I INPUT -p udp --dport 12345 -j ACCEPT  

第八步 启动ShadowsocksR

按需添加参数启动ShadowsocksR服务,教程中使用的通信端口为12345,密码为wanghualang,加密方式chacha20,协议为auth_aes128_sha1,混淆为tls1.2_ticket_auth。

  1. Administrator@Asus:/# cd /opt/shadowsocksr/shadowsocks && python server.py -p 12345 -k wanghualang -m chacha20 -O auth_aes128_sha1 -o tls1.2_ticket_auth -d start  

 客户端篇

ShadowsocksRR:https://www.wanghualang.com/shadowsocksr.html

根据服务端使用的参数来配置ShadowsocksR客户端相关信息,如下图:

华硕路由器搭建SSR服务端

基于IE内核的网页浏览器,把浏览器代理服务器设置为127.0.0.1:1080即可,基于Chromium内核的网页浏览器则建议添加Proxy SwitchyOmega扩展程序来配置代理。

  • 微信赞助网站
  • weinxin
  • 支付宝赞助网站
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:13   其中:访客  7   博主  6

    • 小海 湖南省长沙市 电信

      麻烦指导下。。怎么我用app连不上

        • 王花郎 站长 广东省广州市 电信

          @小海 连不上的原因太多了,比如服务端程序没有正常启动、路由器防火墙没有开放通信端口、你家电信不是真正的公网IP等等原因都会导致无法正常连接,需要进一步排查。

        • 小海 广东省广州市 电信

          老大。可否。加下我qq83184143

            • 王花郎 站长 广东省广州市 电信

              @小海 自己花点心思琢磨吧,可以发相关启动报错日志我帮你看看。QQ就不加了,我没有时间远程协助,和钱无关,抱歉。

            • 小海 广东省佛山市 电信

              ASUSWRT-Merlin RT-AC68U 380.70-0-X7.9 Wed May 9 03:32:35 UTC 2018
              admin@RT-AC68U-8B58:/tmp/home/root# cd /opt/shadowsocksr/shadowsocks && python server.py -p 12345 -k wanghualang -m chacha20 -O auth_aes128_sha1 -o tls1.2_ticket_auth -d start
              IPv6 not support
              2018-07-16 08:55:00 INFO util.py:85 loading libsodium from /opt/lib/libsodium.so.23
              2018-07-16 08:55:00 INFO shell.py:74 ShadowsocksR 3.4.0 2017-07-27
              2018-07-16 08:55:00 ERROR daemon.py:75 already started at pid 1490
              admin@RT-AC68U-8B58:/tmp/mnt/sd1/entware/shadowsocksr/shadowsocks#
              启动了。报错。。怎么回事

                • 王花郎 站长 广东省广州市 电信

                  @小海 程序已经在运行了,你检查一下12345端口是否在监听?也可以直接kill掉pid1490后,再启动一次吧。

                • 是非 台湾省 中华电信(HiNet)

                  请问要怎么更改port跟密码,改了ssr都无法启动

                    • 王花郎 站长 广东省韶关市 电信

                      @是非 最好提供一下SSR报错日志,你的表述不是很明确,看看以下哪种符合你的情况:
                      1.你确实已配置成功,使用我提供的启动参数,能正常启动SSR,但修改了监听端口后,导致启动失败。
                      2.你其实未配置成功,所以不管使用什么启动参数都无法启动SSR。
                      ~
                      如果是第一点,那就检查自定义的端口是否存在冲突,比如很多人爱用443端口,但可能早就被https占用了,导致启动报错;如果是第二点,建议再仔细看一次教程,检查是哪个环节出错。

                        • 是非 台湾省 中华电信(HiNet)

                          @王花郎 第一个,可以启动了,但之前无法修改成自己的密码,一开始怎么试自己的密码都不行,后来添加user-config改成自己的,现在已经更改完成,谢谢版主

                          但虽然已经成功修正,但一直搞不懂到底是user-config的原因还是,启动指令错误

                          之前一直把启动指令改成自己的都不行,后来莫名其妙又可以了

                            • 王花郎 站长 广东省韶关市 电信

                              @是非 嗯解决就好,多折腾几次应该就能找出问题了,我没有配置user-config,路由器端已经习惯直接使用启动参数了,VPS上才会使用user-config。台湾线路宝贵啊,给大陆网友使用爽歪歪!!!

                        • 识趣 山东省 移动

                          用华硕固件 不可以么

                            • 王花郎 站长 广东省韶关市 电信

                              @识趣 你可以尝试一下,反正玩不坏。

                                • 识趣 山东省 移动

                                  @王花郎 研究了这个方法 留个Q把 3392506099 :razz: