CentOS 7 安装 shadowsocks 客户端

# vps  /  Linux  /  CentOS  /  CentOS7  /  ss

1.安装 pip

Pip 是 Python 的包管理工具

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"  
python get-pip.py  

2.安装 Shadowsocks 客户端

pip install --upgrade pip  
pip install shadowsocks  

2.1 配置

新建配置文件:

vi /etc/shadowsocks.json  

填写以下内容:

{
  "server": "x.x.x.x",             #你的 ss 服务器 ip
  "server_port": 0,                #你的 ss 服务器端口
  "local_address": "127.0.0.1",   #本地ip
  "local_port": 1080,                 #本地端口
  "password": "password",          #连接 ss 密码
  "timeout": 300,                  #等待超时
  "method": "aes-256-cfb",         #加密方式
  "workers": 1                    #工作线程数
}

例如:

{
  "server": "x.x.x.x",
  "server_port": 0,
  "local_address": "127.0.0.1",
  "local_port": 1080,
  "password": "password",
  "timeout": 300,
  "method": "rc4-md5",
  "workers": 1
}

2.2 启动

nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &  

2.3 设置自启动

  • rc.local 法:CentOS 6 可用
echo "## shadowsocks client  
nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &" >> /etc/rc.local  
## 修复centos7 默认修改 /etc/rc.d/rc.local 开机启动无效
chmod +x /etc/rc.d/rc.local  
  • systemctl 法:CentOS 7 可用
    创建 shadowsocks 服务
cat > /etc/systemd/system/shadowsocks.service << EOF  
[Unit]
Description=Shadowsocks  
[Service]
TimeoutStartSec=0  
ExecStart=/usr/bin/sslocal -c /etc/shadowsocks/shadowsocks.json  
[Install]
WantedBy=multi-user.target  
EOF  

启动 shadowsocks 服务

systemctl enable shadowsocks.service  
systemctl start shadowsocks.service  
systemctl status shadowsocks  

2.4 测试

运行curl --socks5 127.0.0.1:1080 http://httpbin.org/ip,如果返回你的 ss 服务器 ip 则测试成功:

{
  "origin": "x.x.x.x"       #你的 ss 服务器 ip
}

3.Privoxy

Shadowsocks 是一个 socket5 服务,我们需要使用 Privoxy 把流量转到 http/https 上。

下载安装文件

wget http://www.privoxy.org/sf-download-mirror/Sources/3.0.26%20%28stable%29/privoxy-3.0.26-stable-src.tar.gz  
tar -zxvf privoxy-3.0.26-stable-src.tar.gz  
cd privoxy-3.0.26-stable  

privoxy-3.0.26-stable 是目前最新的稳定版,建议在下载前去Privoxy 官网下载页检查一下版本。

3.1 新建用户

Privoxy 强烈不建议使用 root 用户运行,所以我们使用useradd privoxy新建一个用户.

3.2 安装

autoheader && autoconf  
./configure
make && make install  

安装后配置文件会在/usr/local/etc/privoxy

3.3 配置

vi /usr/local/etc/privoxy/config  

找到以下两句,确保没有注释掉

listen-address 127.0.0.1:8118   # 8118 是默认端口,不用改,下面会用到  
forward-socks5t / 127.0.0.1:0 . # 这里的端口写 shadowsocks 的本地端口(注意最后那个 . 不要漏了)  

3.4 启动

privoxy --user privoxy /usr/local/etc/privoxy/config  

还可以以服务形式启动 privoxy:

systemctl enable privoxy  
systemctl start privoxy  
systemctl status privoxy  

4.配置/etc/profile

编辑:

vi /etc/profile  

添加下面两句:

#这里的端口和上面 privoxy 中的保持一致
export http_proxy=http://127.0.0.1:8118  
export https_proxy=http://127.0.0.1:8118  

运行以下:

source /etc/profile  

测试生效:

curl www.google.com  

返回一大堆 HTML 则说明 shadowsocks 正常工作了。

后记

如果不能访问,请重启机器,依次打开 shadowsocks 和 privoxy 再测试.

nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &  
privoxy --user privoxy /usr/local/etc/privoxy/config  

如果不需要用代理了,记得把/etc/profile里的配置注释掉,不然会一直走代理流量。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×