由于Ubuntu Server是不带用户界面的,所以要为Server配置Shadowsocks还是稍显麻烦。本文就是我配置Shadowsocks的一些经验,以待参考。
1.安装shadowsocks
由于shadowsocks是基于Python开发的,所以必须安装python:
sudo apt-get install python
接着安装python的包管理器pip:
sudo apt-get install python-pip
安装完毕之后,通过pip直接安装shadowsocks:
sudo pip install shadowsocks
2.配置shadowsocks
新建一个配置文件shadowlocal.json,然后配置相应的参数:
{
"server": "{your-server}",
"server_port": "{your-server-port}",
"local_port": 1088,
"password": "{your-password}",
"timeout": 600,
"method": "aes-256-cfb"
}
上面的参数需要你的shadowsocks服务提供商为你提供,当然你也可以自己搭建一个。搭建个人的shadowsocks服务器的话,多几个参数,执行文件是ssserver,这里赞不多说明。
配置完成后就可以启动shadowsocks客户端:
sudo sslocal -c shadowlocal.json -d start
配置全局代理
启动shadowsocks服务后,发现并不能科学上网,这是因为shadowsocks是socks 5代理,需要客户端配合才能科学。
为了让整个系统都走shadowsocks通道,需要配置全局代理,可以通过polipo实现。
3.安装polipo
sudo apt-get install polipo
4.配置polipo
修改/etc/polipo/config:
logSyslog = true
logFile = /var/log/polipo/polipo.log
proxyAddress = "0.0.0.0"
socksParentProxy = "127.0.0.1:1088"
socksProxyType = socks5
chunkHighMark = 50331648
objectHighMark = 16384
serverMaxSlots = 64
serverSlots = 16
serverSlots1 = 32
重启polipo服务:
sudo /etc/init.d/polipo restart
为终端配置http代理:
export http_proxy="http://127.0.0.1:8123/"
接着测试下能否科学上网:
curl www.google.com
如果有响应,则全局代理配置成功。
注意事项
服务器重启后,下面两句需要重新执行:
sudo sslocal -c shadowlocal.json -d start
export http_proxy="http://127.0.0.1:8123/"
配置完成后响应 Proxy error: 502 Server dropped connection.请问怎么解决
检查一下配置和是否能正常使用,看看配置中method是不是服务器对应的,不要直接照抄配置,要根据服务器的说明来填写。