hiwifi-ss
We shall fight on the beaches.
极路由+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 [email protected]: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 [email protected]:/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 [email protected] -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账号设置