Shadowsocks是一个轻量级socks5代理,以python写成,安装方便,配置简单。它的配置文件是以json格式存在。下面将详细介绍安装配置方法。
Shadowsocks服务端
为了Shadowsocks能够上国外网站,你需要有一台海外的服务器并能够正常上外网。
服务端安装
Debian / Ubuntu:
apt-get install python-pip pip install shadowsocks
CentOS:
yum install python-setuptools && easy_install pip pip install shadowsocks
安装成功后,默认的程序路径:/usr/local/bin/ssserver
生成配置文件
创建/etc/shadowsocks/server.json配置文件,根据你的需要修改默认的配置文件具体内容如下:
{ "server":"0.0.0.0", "server_port":443, "local_address":"127.0.0.1", "local_port":1080, "password":"your-passwd", "timeout":300, "method":"aes-256-cfb", "fast_open":false, "workers":1 }
提示: 若需同时指定多个服务端ip,可参考:
"server":["1.1.1.1","2.2.2.2"],
server: 服务端监听地址(IPv4或IPv6)
server_port: 服务端端口,一般为443
local_address: 本地监听地址,缺省为127.0.0.1
local_port : 本地监听端口,一般为1080
password: 用以加密的密匙
timeout: 超时时间(秒)
method: 加密方法,默认的table是一种不安全的加密,此处首推aes-256-cfb
fast_open: 是否启用TCP-Fast-Open
wokers: worker数量,如果不理解含义请不要改
配置多种加密方法
安装python-m2crypto
Debian:
apt-get install python-m2crypto
CentOS:
yum install m2crypto
支持的加密算法:
aes-256-cfb: Default | aes-128-cfb | aes-192-cfb | aes-256-ofb | aes-128-ofb |
aes-192-ofb | aes-128-ctr | aes-192-ctr | aes-256-ctr | aes-128-cfb8 |
aes-192-cfb8 | aes-256-cfb8 | aes-128-cfb1 | aes-192-cfb1 | aes-256-cfb1 |
bf-cfb | camellia-128-cfb | camellia-192-cfb | camellia-256-cfb | cast5-cfb |
chacha20 | idea-cfb | rc2-cfb | rc4-md5 | salsa20 |
seed-cfb |
salsa20和chacha20加密算法
salsa20和chacha20是非常快的加密算法,是rc4的两倍。默认并不支持,需要编译安装,如下:
apt-get install build-essential wget https://github.com/jedisct1/libsodium/releases/download/1.0.1/libsodium-1.0.1.tar.gz tar xf libsodium-1.0.1.tar.gz && cd libsodium-1.0.1 ./configure && make -j2 && make install ldconfig
运行shadowsocks
/usr/local/bin/ssserver -c /etc/shadowsocks/server.json -d start
内核优化
vim /etc/sysctl.conf net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200 net.ipv4.ip_local_port_range = 10000 65000 net.ipv4.tcp_max_syn_backlog = 8192 net.ipv4.tcp_max_tw_buckets = 5000 net.ipv4.tcp_fastopen = 3 net.ipv4.tcp_rmem = 4096 87380 67108864 net.ipv4.tcp_wmem = 4096 65536 67108864 net.ipv4.tcp_mtu_probing = 1 net.ipv4.tcp_congestion_control = hybla #使配置文件生效 sysctl -p
安装客户端
在config.json所在目录下运行sslocal即可;若需指定配置文件的位置:
sslocal -c /etc/shadowsocks/config.json
注意: 有用户报告无法成功在运行时加载config.json,或可尝试手动运行:
sslocal -s 服务器地址 -p 服务器端口 -l 本地端端口 -k 密码 -m 加密方法
提示: 当然也有图形化的使用shadowsocks-gui@gitHub,如果不希望自己编译的话,也可以到shadowsocks-gui@sourceforge下载。
如果上面的下载连接无法访问,从此处下载Windows shadowsocks
参考连接:archlinux
转载请注明:自动化运维 » Shadowsocks轻量级socket5代理服务配置