CentOS 7 下安装配置 shadowsocks

By | 2017年7月1日

说明

参考网络上其他人文章。将他人技术文章亲自测试并总结补充。
如果要科学上网,需要有一个国外vps

shadowsocks客户端:https://shadowsocks.com.hk/
https://www.shadowshocks.com/

shadowsocks安装配置

    1. 安装 pip
      pip是 python 的包管理工具。在本文中将使用 python 版本的 shadowsocks,此版本的 shadowsocks 已发布到 pip 上,因此我们需要通过 pip 命令来安装。

      yum install python-setuptools && easy_install pip
      或者
      yum install python-pip
    2. 安装 shadowsocks
      pip install --upgrade pip
      pip install shadowsocks 
    3. 或者安装最新版
      pip install https://github.com/shadowsocks/shadowsocks/archive/master.zip

 

  1. 配置 shadowsocks 安装完成后,需要创建配置文件/etc/shadowsocks.json。
    vi /etc/shadowsocks.json

    输入以下内容

    {
    "server": "0.0.0.0",
    "server_port": 8388,
    "password": "a123456",
    "method": "aes-256-cfb"
    }

    如果配置多个端口可以输入以下内容

    {
     "server":"0.0.0.0",
     "port_password":{
     "443":"myshadow",
     "8388":"myshadow",
     "8387":"myshadow"
     },
     "local_address": "127.0.0.1",
     "local_port":1080,
     "timeout":300,
     "method":"aes-256-cfb",
     "fast_open": false
    }

    method:为加密方法,可选aes-128-cfb, aes-192-cfb, aes-256-cfb, bf-cfb, cast5-cfb, des-cfb, rc4-md5, chacha20, salsa20, rc4, table
    server_port:为服务监听端口
    password:为密码

  2. 配置自启动
    新建启动脚本文件/etc/systemd/system/shadowsocks.service。

    vi /etc/systemd/system/shadowsocks.service

    输入以下内容

    [Unit]
    Description=Shadowsocks
    [Service]
    TimeoutStartSec=0
    ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json
    [Install]
    WantedBy=multi-user.target

    执行以下命令启动 shadowsocks 服务:

    systemctl enable shadowsocks       #加入开机启动
    systemctl start shadowsocks        #启动
    systemctl restart shadowsocks     #重新启动服务

    检查 shadowsocks 服务是否已成功启动

    systemctl status shadowsocks -l

    如果服务启动成功,出现如下图

    注意要开通防火墙相应端口

    firewall-cmd --zone=public --add-port=8388/tcp --permanent      #添加开启端口;
    systemctl restart firewalld.service                             #重启防火墙
    systemctl stop firewalld                                        #禁用防火墙(防火墙全部关闭)

客户端连接配置

下载shadowsocks客户端双击打开(以win为例子,其他系统配置类似)填入相应内容。

确定后在状态栏里会有一个纸飞机的图标

右键该图标启用系统代理

访问https://www.google.com/

最后如果需要视频加速:
最近,Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,最新的 4.11 版内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。
根据实地测试,在部署了最新版内核并开启了 TCP BBR 的机器上,网速甚至可以提升好几个数量级。
于是我根据目前三大发行版的最新内核,开发了一键安装最新内核并开启 TCP BBR 脚本。

使用方法

使用root用户登录,运行以下命令:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh

安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:

uname -r

查看内核版本,含有 4.11 就表示 OK 了

sysctl net.ipv4.tcp_available_congestion_control

返回值一般为:
net.ipv4.tcp_available_congestion_control = bbr cubic reno

sysctl net.ipv4.tcp_congestion_control

返回值一般为:
net.ipv4.tcp_congestion_control = bbr

sysctl net.core.default_qdisc

返回值一般为:
net.core.default_qdisc = fq

lsmod | grep bbr

返回值有 tcp_bbr 模块即说明bbr已启动。

发表评论

电子邮件地址不会被公开。 必填项已用*标注