Shadowsocks(ss)是大神 Clowwindy 开发的一个能骗过防火墙的网络代理工具。Shadowsocks 所做的就是把传输的数据加密,防火墙得到的数据是加密后的数据,防火墙不知道传输的原内容是什么,于是防火墙就放行本次请求,于是在本机就访问到了远程服务,也即是所谓的“翻墙”。2015 年下半年因某些原因,Clowwindy 删除 Github 的源码及相关文档,但 Shadowsocks 属于开源项目,所以删除前已经有人备份,目前有志愿者在维护原版客户端,网上也有很多基于 Shadowsocks 开发的第三方项目。
使用 Shadowsocks 前需要有一台在防火墙之外的服务器,本站有 VPS 相关文章,如有需要可以看:
Shadowsocks 搭建教程
本篇采用大神秋水逸冰的 Shadowsocks Python 版一键安装脚本
本脚本适用环境:
系统支持:CentOS 6,7,Debian,Ubuntu
内存要求:≥128M
连接 VPS,如果不会,推荐阅读Windows 和 Mac OS X 连接 ssh 最新图文教程及工具,连接 VPS 前先 ping 下看 VPS 是否被墙。
使用 root 用户登录,如不是 root 用户,输入sudo -i
切换到 root 用户,root 用户登录后运行以下命令按回车确认:
- wget —no–check–certificate –O shadowsocks.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
- chmod +x shadowsocks.sh
- ./shadowsocks.sh 2>&1 | tee shadowsocks.log
回车确认后会看到以下图片中的内容,填写需要设置的个人密码,密码不能为中文,设置好后回车确认。
选择端口,端口号为 1–65535 之间的数字,默认端口为 9000-19999 之间随机生成。尽量不要占用其他服务端口
确认端口后选择加密方式,输入加密方式前面的数字选择需要设置的加密方式,推荐默认的aes-256-gcm
加密。
选择好加密方式回车确认后会提示Press any key to start...or Press Ctrl+C to cancel
按任意键开始,根据服务器的配置需要等待几分钟的配置时间。
提示以下内容说明配置成功,需要牢记服务器 IP,端口,密码以及加密方式
Shadowsocks 使用命令
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status
卸载:./shadowsocks.sh uninstall
Shadowsocks 多用户多端口教程
配置文件路径:/etc/shadowsocks.json
输入下面这条命令,回车执行打开配置文件
- vi /etc/shadowsocks.json
之后按i
键进入编辑模式,ssh 窗口的左下角会出现 -- INSERT --
字样,修改成以下内容,将 10001 修改为想用的端口,范围 1 – 65535,password1 改成你的密码,记住下面的内容,配置客户端的时候会用到;另外,下面是建了 10001、10002 和 10003 三个账号,如果多了,可以删掉,不够可以再加。注意逗号,免得出错,配置过程中要用英文输入法,不然会出错。如果不懂怎么编辑,可以用谷歌搜索vi 命令
进行简单编辑学习。
- {
- “server”:“0.0.0.0”,
- “local_address”:“127.0.0.1”,
- “local_port”:1080,
- “port_password”:{
- “10001”:“password1”,
- “10002”:“password2”,
- “10003”:“password3”
- },
- “timeout”:300,
- “method”:“aes-256-gcm”,
- “fast_open”: false
- }
修改完成后,按ESC 键
退出编辑模式,ssh 窗口的左下角 -- INSERT --
字样消失,输入:wq
,回车执行,这时文件保存并返回,注意输入 wq 前面的:
。
输入以下命令重启 shadowsocks,重启 shadowsocks 后提示Starting Shadowsocks success
说明 shadowsocks 多端口运行成功。
- /etc/init.d/shadowsocks restart
Shadowsocks 多用户多端口常见问题
Debian 和 Ubuntu 配置好多端口后便可使用,Centos 因为防火墙问题,需要进行添加端口才能使用多端口
Centos6 配置 iptable 规则
输入以下命令进入 iptables 规则文件
- vi /etc/sysconfig/iptables
在有 ACCEPT 的规则下面添加一条开放 ss 端口的规则,如果前面使用了 10001 作为端口,那么就添加以下代码,如果有多个端口就添加多行,修改后按ESC 键
,然后输入:wq
保存退出。
- –A INPUT –p tcp —dport 10001 –j ACCEPT
由于这条规则只存储在/etc/sysconfig/iptables 这个配置文件内,并没有添加到内存里,所以需要 reload 一下 iptables:
- service iptables reload
reload 成功后 Centos6 的 shadowsocks 多端口就可使用。
Centos7 配置 firewall 规则
输入以下命令开启一个端口,如果不是 10001 端口,修改成自己需要添加的端口(–permanent 永久生效,没有此参数重启后失效)。
- firewall–cmd —zone=public —add–port=10001/tcp —permanent
添加端口后系统返回success
说明添加成功。这个时候需要重新载入 firewall,输入以下命令,返回success
后多端口就可使用
- firewall–cmd —reload
Views: 451
0 Comments.