跳转到内容

Shadowsocks 配置指南

Shadowsocks Logo

Shadowsocks 是一种基于 SOCKS5 协议的安全分体代理。它由服务端和客户端组成:服务端部署在远程服务器上,客户端运行在本地设备上。连接后,客户端创建本地 SOCKS5 代理,将网络流量加密转发到服务端,由服务端解密后发送到目标地址。

服务端通常部署在 Linux 服务器上。

  1. 安装 Python 和 Pip:

    Terminal window
    yum install python3 python3-pip
  2. 安装 Shadowsocks:

    Terminal window
    pip3 install shadowsocks-py
  3. 配置防火墙:

    开放端口 8388(或你选择的端口)的 TCP 和 UDP:

    Terminal window
    firewall-cmd --zone=public --add-port=8388/tcp --permanent
    firewall-cmd --zone=public --add-port=8388/udp --permanent
    firewall-cmd --reload
  4. 创建配置文件:

    创建 /etc/shadowsocks.json

    {
    "server": "0.0.0.0",
    "server_port": 8388,
    "local_address": "127.0.0.1",
    "local_port": 1080,
    "password": "your_password",
    "timeout": 300,
    "method": "aes-256-cfb",
    "fast_open": false
    }
  5. 启动服务:

    手动启动:

    Terminal window
    ssserver -c /etc/shadowsocks.json -d start

    开机自启:将命令添加到 /etc/rc.local

使用自动安装脚本快速部署:

Terminal window
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/ssr.sh && chmod +x ssr.sh && bash ssr.sh

推荐安装参数:

  • 加密方式: none
  • 协议: auth_chain_a
  • 混淆: plain
  • 兼容模式: n(否)

Google BBR 是一种 TCP 拥塞控制算法,可显著提升网络吞吐量。需要 Linux 内核 4.9 或更高版本。

  1. 检查当前内核:

    Terminal window
    uname -r
  2. 安装 ELRepo 和主线内核:

    Terminal window
    rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
    yum --enablerepo=elrepo-kernel install kernel-ml -y
  3. 更新 GRUB:

    列出可用内核:

    Terminal window
    rpm -qa | grep kernel

    设置新内核(通常是索引 0)为默认:

    Terminal window
    egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
    grub2-set-default 0
  4. 重启:

    Terminal window
    reboot
  5. 启用 BBR:

    重启后执行:

    Terminal window
    echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    sysctl -p
  6. 验证:

    Terminal window
    sysctl -n net.ipv4.tcp_congestion_control
    # 输出应为: bbr
    lsmod | grep bbr
    # 输出应显示 tcp_bbr

较新的 Debian 和 Ubuntu 版本通常自带内核 4.9+。

  1. 启用 BBR:

    Terminal window
    echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    sysctl -p
  2. 验证:

    Terminal window
    lsmod | grep bbr

Shadowsocks 支持多平台。以下是一些常用客户端:

  • Shadowrocket(付费,非中国区 App Store 可下载)
  • Potatso Lite
  • Quantumult

完整客户端列表请访问官网

使用 Shadowsocks 需要服务端。你可以:

  1. 自建: 租用 VPS 并安装 Shadowsocks 服务端软件。
  2. 订阅: 购买 Shadowsocks 服务商的服务。

本节演示使用二维码配置客户端,这是最常用的方式。

登录服务商网站或自己的服务器管理面板,找到”订阅”或”服务器列表”部分,选择 查看配置扫描二维码

服务器列表示例

在屏幕上显示二维码。

  1. 安装并运行: 安装对应平台的 Shadowsocks 客户端并启动。系统托盘或菜单栏会出现纸飞机图标。

    系统托盘图标

  2. 扫描二维码:

    • 点击 Shadowsocks 图标。
    • 进入 ServersScan QR Code 菜单。
    • 选择 Scan QR Code from Screen

    扫描菜单

    客户端会自动识别二维码并添加服务器配置。

  3. 选择模式:

    • PAC 模式(自动): 仅匹配 PAC 列表(被屏蔽网站)的流量走代理。推荐日常使用。
    • 全局模式: 所有流量走代理。
  4. 更新 PAC:

    • 建议定期更新 PAC 文件以确保新被屏蔽的网站被包含。在菜单中找到 Update PAC from GFWList

    更新 PAC