两种方法在极路由上安装Shadowsocks插件
第一种方法
早期极路由有自带的官方插件,SSH,可以轻松通过该插件使用SSH梯子,后来SSH插件就下架了,仿佛极路由再也不能使用梯子了。
Shadowsocks的出现使其成为了新的梯子,聪明的极客们已经有方法可以在极路由上使用Shadowsocks了,网上亦能搜到很多相关的教程,但是看起来对一般人来说不是那么简单的事情,要开发者权限要root什么的,其实有更简单的方法可以使用上Shadowsocks插件,不需要开发者权限也不需要root。
所需要准备的东西就是一台极路由智能路由器,以及一个SS服务器。然后仅需要五步,即可安装好Shadowsocks插件。
第一步:打开极路由的插件管理,选择添加应用
第二步:随便点开一个你没有安装的应用
第三步:修改地址
打开一个未安装的应用后,它的地址应该是长下面这样的:
https://app.hiwifi.com/store.php?m=plugins&a=install&rid=rXXXXXXXXX&sid=XXXXXXXXX
其中前面rid的XXXXXXXXX几位数字不用管,不要改动,主要是sid的数字,把它改为163116535
,然后访问。
第四步:点击免费安装,确定安装
确定安装
第五步:填写SS服务器信息
关于代理模式,笔者是只用白名单模式的,白名单域名列表可以搜GFWList或者在ShadowsocksR客户端中的pac文件中提取获得。当然也可以直接用白名单+国外IP模式,但是笔者没试过。
填好后按下一步,等待下载完成后会自动安装,并提醒安装成功。
完成安装,运行状态
见到插件运行中就搞定了,这个时候就可以自由浏览网站了。你可以随时点下暂停服务暂时停止使用SS服务,也可以随时在配置参数中修改服务器信息和增删白名单。
第二种方法
hiwifi-ss
极路由+shadow配置, 适应新版极路由,支持的极路由版本(因为没办法测试所有的极路由,所以你能运行的极路由不在这个列表,请在issue#38中回复,谢谢!):
现在项目使用的是大陆白名单模式,关于适用大陆白名单和gfwlsit的处理,见issue#37。项目中的gfw规则使用项目 cokebar/gfwlist2dnsmasq 生成的规则修改而成,最后更新日期为2017.08.08。
用户选择
安装方法
使用项目根目录下的
shadow.sh
脚本进行安装, 建议使用以下一键命令:cd /tmp && curl -k -o shadow.sh https://raw.githubusercontent.com/qiwihui/hiwifi-ss/master/shadow.sh && sh shadow.sh && rm shadow.sh
- 重启路由器
其他方法
因为作者能力有限,很多功能不能及时跟上,所以大家可以尝试其他的解决方案,比如 Paull/hiwifi.easucks
开发者选择
编译极路由版本的shadowsocks-libev, obfs_simple
本地更新dnsmasq.conf(项目已支持一键更新)
使用项目 gfwlist2dnsmasq 中的脚本即可
git clone https://github.com/cokebar/gfwlist2dnsmasq.git
cd gfwlist2dnsmasq
./gfwlist2dnsmasq.sh --port 53535 -o gw-shadowsocks.dnslist
# 复制 gw-shadowsocks.dnslist 到 hiwifi-ss/etc/gw-shadowsocks/gw-shadowsocks.dnslist 打包
# 或者,直接复制到极路由 etc/gw-shadowsocks/gw-shadowsocks.dnslist 上
本地安装/开发
以 tag v1.0.5
为例
# 本地生成 tar 包
git clone git@github.com:qiwihui/hiwifi-ss.git
cd hiwifi-ss
git checkout v1.0.5
tar -C ./ -czvf hiwifi-ss.tar.gz etc lib usr
scp -P 1022 hiwifi-ss.tar.gz root@192.168.199.1:/tmp
# ssh登录极路由
tar xzvf /tmp/hiwifi-ss.tar.gz -C /
如何在服务器端启用chacha20
的支持:
编译并安装libsodium:
apt-get update apt-get install build-essential wget https://github.com/jedisct1/libsodium/releases/download/1.0.3/libsodium-1.0.3.tar.gz tar xf libsodium-1.0.3.tar.gz && cd libsodium-1.0.3 ./configure && make && make install
- 修复动态链接库:
编辑 /etc/ld.so.conf
文件, 加入一行 /usr/local/lib
并保存。运行命令 ldconfig
- 在ss配置中修改为
chacha20
即可
备注: 参考xqd的小站整理,Thank you!
常见问题
- 支持哪些加密方法?
理论上 ss-local 3.2.0 能支持的算法都支持。
- 安装后显示
请求的接口不存在
?
请重启路由器. issue#28
- 适用极路由版本有哪些?
see issue#38
- 如何卸载脚本?(issue#12)
将/usr/lib/lua/luci/view/admin_web/network/index.htm.ssbak
重命名为 /usr/lib/lua/luci/view/admin_web/network/index.htm
, 并移除ss: opkg remove geewan-ss
如果出现类似下面的报错,请确保你是登录到极路由后台执行脚本:
ssh root@192.168.199.1 -p 1022
, 不要在自己的电脑上执行 :(x etc/: Could not remove symlink etc x etc/config/: Cannot extract through symlink etc x etc/firewall.d/: Cannot extract through symlink etc x etc/gw-redsocks/: Cannot extract through symlink etc x etc/gw-redsocks.conf: Cannot extract through symlink etc x etc/gw-shadowsocks/: Cannot extract through symlink etc x etc/init.d/: Cannot extract through symlink etc x etc/rc.d/: Cannot extract through symlink etc x etc/ss/: Cannot extract through symlink etc ......
- 项目如何开机自动运行?
项目在 /etc/rc.d/
下添加了 S99gw-shadowsocks
指向 /etc/init.d/gw-shadowsocks
,所以会开机自动运行的。
关于底层源码开源的一些问题
这个项目基于 geewan 的 hiwifi 配置程序,底层只有编译后的 lua 程序,除开用到的 shadowsocks 使用了 GPL 协议, 其他部分不开源也并没有问题。 本着共同进步的原则,作者尝试完成了部分功能的实现并开源,不足之处请多指教。
本项目会不断补充并完善功能,只是作者开发时间不长,进度会比较慢,请勿催~
TODO
- 第一阶段
适应新版本界面
- 开关样式
- 增加"shadowsocks设置"按钮
- "shadowsocks设置"按钮功能修复
- 密码显示功能修复
- 弹出提示框修复
- 下拉框样式修复
- "导入配置文件(json格式)"界面修复; 界面修复了,但是底层功能有问题;
- "高级设置"界面修复
- release/v1.1.0 => 完成之前所有功能在新版下的界面适配
- 使用github作为文件存储, 既然能用
raw.githubusercontent.com
下脚本,下载ss.tar.gz
应该也不成问题,只是慢些; - 底层增加更多的路由规则
- 关于底层源码开源的一些问题
- 下一阶段
- 升级 ss-libev 版本
- 支持 ss-libev 混淆 (simple-obfs)
- 支持 SSR
贡献
- 如果你在使用中有什么问题或者建议,请不要吝啬,给我提一个issue;
- 如果你对代码有自己的想法并实现了,请给我一个Pull Request;
- 不接收邮件了,问题大家都应该看到,这样减少重复回答,请提issue,谢谢~
目前状态
- 新版界面
(1). ss账号设置
文章转自:
https://sunnyrx.com/2017/07/17/Shadowsocks-in-HIWIFI/
https://github.com/qiwihui/hiwifi-ss