title | date | id |
---|---|---|
服务器搭建ss科学上网学习工具 |
2019-03-06 10:11 |
53195 |
- 操作系统推荐 CentOS7
- 服务器购买和系统安装都可以在以上网站快速完成,直接进入连接上服务器之后的操作。
CentOS7 默认使用 iptables 防火墙
开放 udp 9000 入口端口
iptables -I INPUT -p udp --dport 9000 -j ACCEPT
开放 tcp 9000 入口端口
iptables -I INPUT -p tcp --dport 9000 -j ACCEPT
查看目前防火墙的规则
iptables -L -n
测试端口是否可以连通,使用命令行工具
nc -z 服务器公网 ip 地址 端口号
eg: nc -z 119.28.23.39 9000
如果无法连通可能是防火墙问题,尝试关闭防火墙(也有可能默认防火墙为 firewall)。
systemctl stop iptables.service
systemctl stop firewalld.service
如果是腾讯云的服务器,可能要配置一下安全组(腾讯云的防火墙)。
打开服务器控制台,找到安全组,新建一个规则,名字随意起,然后添加两条入站规则,0.0.0.0/0 UDP/TCP:9000
,添加完成之后,要让服务器加入这个安全组。
安装依赖环境(基于 CentOS7)
yum -y install dnf
dnf install libsodium python34-pip
pip3 install git+https://github.com/shadowsocks/shadowsocks.git@master
创建配置文件
json文件的位置可以自己选择
vi shadowsocks.json
写入内容:
{
# 服务器 IP eg: 119.28.33.48
"server":"my_server_ip",
# 服务端口号 eg: 9000
"server_port":8388,
# 本地 IP 无需改动
"local_address": "127.0.0.1",
# 本地端口号,无需改动,确保别的服务没有冲突。
"local_port":1080,
# 密码
"password":"mypassword",
# 超时时间,无需改动
"timeout":300,
# 加密方式,无需改动
"method":"rc4-md5",
# tcp 快速链接,无需改动
"fast_open": false
}
启动服务
直接运行,可查看连接情况:
ssserver -c /etc/shadowsocks.json
后台运行:
ssserver -c /etc/shadowsocks.json -d start
关闭服务:
ssserver -c /etc/shadowsocks.json -d stop
下载地址(支持 Android,iOS,Mac,Windows,Linux ……): 下载地址 2 (支持 Android,iOS,Mac,Windows,Linux ……): Google应用商店提供下载
打开 APP 点击左上角添加代理服务器。服务器填写云主机的公网 IP 地址,端口填写之前开放的端口,密码是配置文件中的密码,加密方式按配置文件选择rc4-md5
,路由设置,绕过局域网及中国大陆地址。配置完成之后,点击图一小飞机,测试是否连接成功。
浏览器配置(基于 Chrome 浏览器)
安装Proxy SwitchyOmega
浏览器插件。 --用来快速切换浏览器代理。
- 配置
Proxy SwitchyOmega
新建一个情景模式,选择 Proxy Profile,名字随意。 - 配置情景模式
选择
socks5
协议,本机 127.0.0.1 地址 1086 端口 - 配置自动切换
点击左侧导航栏
auto switch
,选择 AutoProxy。 填写规则 url:https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
点击Download Profile Now
更新规则。 最后Apply Changes 保存更改。 - 需要访问谷歌时,把模式切换到
auto switch
或者新建的shadowsocks
(自己刚才新建的名字) 情景模式。
客户端配置 打开安装好的 APP,点击 Server Preferences,设置代理。 Address 为服务器公网 IP 地址,后面为服务器配置文件中端口号,Encryption 为加密方法,密码为配置文件中密码。
之后再点击 Preferences (偏好设置),设置本地端口(1086),与浏览器配置的本地端口一致。 测试是否能访问谷歌。