本文介绍 搬瓦工 VPS 搭建 Shadowsocks 的完整步骤,使用 shadowsocks-all.sh 作为 SS 一键安装脚本,在 VPS 上安装 Shadowsocks-libev 服务端。步骤包括 SSH 登录服务器、确认系统环境、安装基础工具、下载并运行 Shadowsocks 一键安装脚本、设置密码和端口、选择加密方式、检查服务状态、查看配置文件以及处理端口放行问题。
本文以 Debian 12 x64 系统为例。根据脚本说明,shadowsocks-all.sh 可用于 RHEL 8+、Debian 11+、Ubuntu 20.04+ 等系统环境,GitHub 仓库也将该脚本归类为适用于 CentOS / Debian / Ubuntu 的 Shadowsocks 一键安装脚本。不同系统的软件源和防火墙命令可能不同,但脚本下载、运行、选择版本、设置端口和密码这些步骤可以参考本文。
如果你准备在搬瓦工 VPS 上自己搭建 Shadowsocks / SS,可以按下面的顺序操作。脚本提示安装完成后,建议继续检查服务状态和端口监听,确认服务端已经正常运行。

搬瓦工 VPS 搭建 Shadowsocks / SS 教程
一、搬瓦工 VPS 搭建 Shadowsocks 前的准备
开始之前,需要先准备一台可以正常使用的搬瓦工 VPS,并拿到服务器 IP、SSH 端口、root 密码等登录信息。如果还没有 VPS,可以先通过 搬瓦工 开通服务器,再继续后面的 Shadowsocks 安装步骤。
第一次购买搬瓦工 VPS 的用户,可以先参考本站整理的 搬瓦工购买教程,完成注册、选择套餐、付款和系统安装后,再回到本文继续操作。
本文使用的安装脚本为 Teddysun 的 shadowsocks-all.sh,当前脚本运行后会提供 Shadowsocks-libev 和 Shadowsocks-rust 两个版本。
本文选择 Shadowsocks-libev,因为脚本默认选项就是 Shadowsocks-libev,安装后可以通过 systemctl status shadowsocks-libev-server 查看服务状态,配置文件路径为 /etc/shadowsocks/shadowsocks-libev-config.json。
如果你想先了解这类脚本的整体用法,也可以参考 Shadowsocks 一键安装脚本教程,再回到本文继续按搬瓦工 VPS 的环境操作。
如果你只是想快速获得可用节点,不想自己维护 VPS、处理 SSH、端口、防火墙和客户端配置,也可以选择 Just My Socks 这类已经配置好的服务。需要这类方案的用户,可以参考 Just My Socks 购买教程和优惠码。自己搭建的好处是服务器和参数由自己控制,但后续维护、排查和更换配置也需要自己处理。
二、SSH 登录 VPS 并确认系统环境
使用 Xshell、FinalShell、Termius 或系统自带终端连接搬瓦工 VPS。
登录后先执行下面的命令,确认当前登录用户、系统版本和服务器架构:
whoami cat /etc/os-release uname -m
返回结果中可以看到当前用户为 root,系统为 Debian GNU/Linux 12(bookworm),服务器架构为 x86_64。后面的命令都在 root 用户下执行。

SSH 登录搬瓦工 VPS 后确认 Debian 12 x64 系统环境
如果你使用的是 CentOS、Rocky Linux、AlmaLinux、Ubuntu 或其他 Linux 系统,也建议先确认系统版本。RHEL 系系统可以参考本文的脚本安装流程,但基础工具安装命令和防火墙命令需要按系统环境调整。
如果你的服务器使用 Ubuntu,并且更想通过系统软件源安装 Shadowsocks-libev,可以参考 Ubuntu 系统 Shadowsocks 安装教程,两种方式的安装路径和服务管理命令会有区别。
三、下载并运行 Shadowsocks 一键安装脚本
1. 更新软件源并安装基础工具
先更新软件源,并确认 wget、curl、ca-certificates 已经安装。这样可以避免后面下载脚本或访问 HTTPS 地址时报错。
apt-get update apt-get install -y wget curl ca-certificates
如果返回结果显示这些组件已经是最新版,或者成功安装完成,就可以继续下一步。

Debian 12 系统更新软件源并安装 wget、curl、ca-certificates
2. 下载 shadowsocks-all.sh 脚本
接着下载 Shadowsocks 一键安装脚本:
wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh
下载完成后,可以查看脚本文件是否已经保存到当前目录:
ls -lh shadowsocks-all.sh

在搬瓦工 VPS 中下载 shadowsocks-all.sh 一键安装脚本
3. 添加脚本执行权限
脚本下载完成后,还需要添加执行权限:
chmod +x shadowsocks-all.sh ls -lh shadowsocks-all.sh
如果文件权限从 -rw-r--r-- 变成 -rwxr-xr-x,说明脚本已经可以执行。

为 shadowsocks-all.sh 添加执行权限并确认脚本可执行
4. 运行 SS 一键安装脚本
执行下面的命令开始安装:
./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log
运行后,脚本会提示选择要安装的 Shadowsocks 服务端版本:
1) Shadowsocks-libev 2) Shadowsocks-rust
本文选择第 1 项 Shadowsocks-libev,所以输入:
1

运行 shadowsocks-all.sh 脚本并选择 Shadowsocks-libev
四、设置 Shadowsocks-libev 密码、端口和加密方式
1. 设置 Shadowsocks-libev 连接密码
选择 Shadowsocks-libev 后,脚本会提示输入连接密码。如果直接回车,会使用默认密码。实际使用时不要使用默认密码,也不要使用过短的简单密码。
Please enter password for Shadowsocks-libev (Default password: teddysun.com):
建议使用大小写字母、数字和符号组合。后面添加客户端时,需要填写这个密码。

为 Shadowsocks-libev 设置客户端连接密码
2. 设置 Shadowsocks-libev 服务端口
接着设置 Shadowsocks-libev 服务端口。端口范围是 1-65535,建议避开 22、80、443 等常见端口,也不要和 SSH 登录端口重复。本文示例端口为 54321。
Please enter a port for Shadowsocks-libev [1-65535] (Default port: 12597):54321

为 Shadowsocks-libev 设置服务端口 54321
3. 选择 aes-256-gcm 加密方式
端口设置完成后,脚本会提示选择加密方式。脚本默认加密方式为 aes-256-gcm,直接回车即可使用默认值。
Please select stream cipher for Shadowsocks-libev: 1) aes-256-gcm 2) aes-192-gcm 3) aes-128-gcm 4) chacha20-ietf-poly1305 5) xchacha20-ietf-poly1305 Which cipher you'd select(Default: aes-256-gcm):

Shadowsocks-libev 使用 aes-256-gcm 加密方式
4. 插件选择 None
脚本还会提示选择 SIP003 插件:
Please select SIP003 plugin for Shadowsocks-libev: 1) None 2) v2ray-plugin 3) xray-plugin Which plugin you'd select (Default: None):
本文只安装基础 Shadowsocks-libev 服务端,不配置 v2ray-plugin 或 xray-plugin,所以这里直接回车,使用默认的 None。

Shadowsocks-libev 安装时不启用 SIP003 插件
如果一开始就启用插件,客户端也必须填写对应插件参数。新手配置不一致时,后面排查会更麻烦,所以本文先按基础 SS 节点方式安装。
需要注意的是,v2ray-plugin 只是 Shadowsocks 的插件选项,不等于单独搭建 V2Ray 服务端。如果你想在 Ubuntu VPS 上使用 V2Ray 一键脚本安装 VMess-TCP,可以参考 Ubuntu 搭建 V2Ray 教程,不要把 V2Ray 的配置方式和本文的 Shadowsocks-libev 混在一起。
五、确认 Shadowsocks-libev 安装成功
1. 开始安装 Shadowsocks-libev
密码、端口、加密方式和插件选项确认后,脚本会提示:
Press any key to start...or Press Ctrl+C to cancel
确认前面的设置无误后,按回车继续。脚本会自动添加 Teddysun Shadowsocks Repository,检查依赖并安装 Shadowsocks-libev。

确认参数后开始安装 Shadowsocks-libev 服务端
2. 查看安装完成信息
安装完成后,会看到类似下面的信息:
Congratulations, Shadowsocks-libev server install completed! Your Server IP : your_server_ip Your Server Port : your_server_port Your Password : your_password Your Encryption Method: aes-256-gcm Your QR Code: ss://your_ss_link Your QR Code has been saved as a PNG file path: /root/shadowsocks_libev_qr.png
这里会显示服务器 IP、端口、密码、加密方式和 ss:// 客户端链接。截图发布前,服务器 IP、密码和 ss:// 链接都建议打码。

Shadowsocks-libev 安装完成后显示端口和加密方式
3. 保存客户端连接参数
安装完成页里的信息后面会用于配置客户端。建议保存下面几个参数:
- 服务器地址:搬瓦工 VPS 公网 IP
- 服务器端口:本文示例为
54321 - 连接密码:安装时设置的密码
- 加密方式:本文示例为
aes-256-gcm - 插件:本文示例为
None
如果客户端支持 ss:// 链接或二维码导入,也可以使用脚本生成的信息快速导入。
还没有客户端工具的用户,可以参考 Mihomo Party 下载,安装客户端后再填写服务器 IP、端口、密码和加密方式。
六、安装后检查与服务管理
1. 查看 Shadowsocks-libev 服务状态
安装完成后,先检查 Shadowsocks-libev 服务是否正常运行。
当前服务名为:
shadowsocks-libev-server
查看服务状态命令如下:
systemctl status shadowsocks-libev-server --no-pager -l
如果状态中显示 active (running),并且可以看到 tcp server listening 和 udp server listening,说明 Shadowsocks-libev 服务已经正常运行。

Shadowsocks-libev 服务状态显示 active running
2. 检查 Shadowsocks 端口监听情况
继续执行下面的命令,确认端口是否正在监听:
ss -tulnp | grep 54321
把 54321 替换成你实际设置的端口。如果返回结果中同时出现 tcp LISTEN 和 udp UNCONN,说明 Shadowsocks-libev 的 TCP 和 UDP 监听都已经启动。

Shadowsocks-libev 已监听 54321 端口的 TCP 和 UDP
3. 查看 Shadowsocks-libev 配置文件
Shadowsocks-libev 的配置文件路径为:
/etc/shadowsocks/shadowsocks-libev-config.json
如果后续需要查看端口、密码、加密方式和运行模式,可以直接执行下面的命令查看配置文件内容:
cat /etc/shadowsocks/shadowsocks-libev-config.json
配置文件中可以看到 server_port、password、method、mode 等参数。本文示例端口为 54321,加密方式为 aes-256-gcm,运行模式为 tcp_and_udp。
在服务器中执行上面的 cat 命令时,会显示完整配置内容,方便后续添加客户端或核对参数。

查看 Shadowsocks-libev 配置文件中的端口、密码和加密方式
4. 重启 Shadowsocks-libev 服务
如果后续修改了配置文件,需要重启服务才能生效。常用管理命令如下:
systemctl start shadowsocks-libev-server systemctl stop shadowsocks-libev-server systemctl restart shadowsocks-libev-server systemctl status shadowsocks-libev-server --no-pager -l
重启服务可以执行:
systemctl restart shadowsocks-libev-server systemctl status shadowsocks-libev-server --no-pager -l
重启后如果仍然显示 active (running),说明服务已经重新启动。

重启 Shadowsocks-libev 服务后状态仍为 active running
5. 确认开机自启状态
继续执行下面的命令,确认 Shadowsocks-libev 是否已经设置为开机自启:
systemctl is-enabled shadowsocks-libev-server
如果返回:
enabled
说明 VPS 重启后,Shadowsocks-libev 会自动启动。
6. 检查防火墙和端口放行
在 Debian 12 x64 中安装时,脚本可能会提示:
[Warning] ufw is not running, please open port 54321 manually if necessary.
可以执行下面的命令检查 ufw 和 nftables 状态:
command -v ufw && ufw status || echo "ufw not installed" systemctl status nftables --no-pager
如果返回 ufw not installed,并且 nftables.service 不存在,说明当前系统没有启用这两个本地防火墙服务。
如果你的服务器启用了 ufw,可以放行本文示例端口:
ufw allow 54321/tcp ufw allow 54321/udp ufw reload ufw status
如果你使用的是 RHEL 系系统,并且启用了 firewalld,可以参考下面的命令:
firewall-cmd --permanent --add-port=54321/tcp firewall-cmd --permanent --add-port=54321/udp firewall-cmd --reload
如果服务状态正常、端口监听正常,但客户端仍然无法连接,还需要检查 VPS 后台防火墙、安全组规则或本地网络状态。
7. 客户端连接不上怎么排查
客户端连接不上时,建议按下面顺序检查:
- 先确认
systemctl status shadowsocks-libev-server --no-pager -l是否显示active (running) - 再确认
ss -tulnp | grep 端口是否有 TCP 和 UDP 监听 - 检查客户端填写的服务器 IP、端口、密码、加密方式是否和服务端一致
- 确认插件选项是否一致,本文服务端插件为
None - 检查 VPS 后台是否有防火墙或安全组限制
- 确认 VPS IP 和当前网络环境是否可正常连接
连接失败时,建议先检查服务状态、端口监听和客户端参数,再考虑是否需要重装系统。
七、常见问题
1. SS 一键脚本和 Shadowsocks 一键安装脚本是同一个意思吗?
通常情况下,两者指的是同一类脚本。SS 是 Shadowsocks 的简称,SS 一键脚本一般就是自动安装 Shadowsocks 服务端的脚本。本文使用的是 shadowsocks-all.sh。
2. Shadowsocks-libev 和 Shadowsocks-rust 应该选哪个?
脚本当前提供 Shadowsocks-libev 和 Shadowsocks-rust 两个选项。
本文选择 Shadowsocks-libev,因为脚本默认选项就是 libev,安装后服务名为 shadowsocks-libev-server,配置文件位于 /etc/shadowsocks/shadowsocks-libev-config.json,后续查看状态、修改配置和重启服务都能按本文步骤操作。
3. CentOS / Debian / Ubuntu 都可以用这个脚本吗?
GitHub 仓库将 shadowsocks-all.sh 归类为适用于 CentOS / Debian / Ubuntu 的 Shadowsocks 一键安装脚本;脚本页面列出的系统环境包括 RHEL 8+、Debian 11+、Ubuntu 20.04+。
本文以 Debian 12 x64 系统为例,其他系统可以参考主流程,但基础工具安装和防火墙命令需要按系统调整。
4. 安装完成后怎么卸载 Shadowsocks-libev?
如果后续需要卸载,可以回到脚本所在目录,执行:
./shadowsocks-all.sh uninstall
如果一台服务器安装了多个 Shadowsocks 版本,需要按脚本提示分别卸载,不要只删除配置文件。
5. Shadowsocks 安装完成就能直接使用吗?
脚本提示安装完成后,还需要检查 Shadowsocks-libev 服务是否正在运行、端口是否已经监听,以及客户端填写的 IP、端口、密码和加密方式是否一致。
八、总结
在搬瓦工 VPS 上搭建 Shadowsocks / SS,主要流程是:SSH 登录服务器,安装基础工具,下载 shadowsocks-all.sh,运行 SS 一键安装脚本,选择 Shadowsocks-libev,设置密码、端口和加密方式,等待脚本安装完成,再检查服务状态、端口监听、配置文件和开机自启。
本文使用的端口为 54321,加密方式为 aes-256-gcm,插件选择 None。安装完成后,客户端需要填写服务器 IP、端口、密码、加密方式和插件信息。如果客户端无法连接,先检查服务是否运行、端口是否监听、防火墙是否放行,再检查客户端参数是否填写正确。
如果后续想在搬瓦工 VPS 上部署带伪装网站和 SSL 证书的方案,也可以继续参考 搬瓦工 VPS 搭建 Trojan 详细教程,两种方案的安装方式和客户端配置并不相同。
如果你愿意自己管理 VPS,这套 Shadowsocks 安装方法可以用于搭建自己的 SS 节点。如果你不想处理服务器维护、脚本安装和连接排查,可以选择现成的代理服务,省掉后续维护工作。
| 机房位置 | 带宽 | 流量 | 设备 | 价格 | 购买 |
|---|---|---|---|---|---|
| 洛杉矶 500 | 2.5Gbit | 500GB/月 | 5台 | $5.88/月-$58.88/年 | 购买 |
| 洛杉矶 1000 | 5Gbit | 1T/月 | 无限 | $9.88/月-$98.88/年 | 购买 |
| 洛杉矶 5000 | 5Gbit | 5T/月 | 无限 | $48.99/月-$489.99/年 | 购买 |
| 洛杉矶 10000 | 5Gbit | 10T/月 | 无限 | $93.99/月-$948.99/年 | 购买 |
| 香港 CMI+NTT | 2.5Gbps | 500GB/月 | 5台 | $8.99/月-$89.99/年 | 购买 |
| 香港 CMI+NTT | 5Gbps | 1T/月 | 无限 | $14.90/月-$113.99/年 | 购买 |
| 香港 CMI+NTT | 5Gbps | 5T/月 | 无限 | $59.99/月-$599.99/年 | 购买 |
| 香港 IPLC 专线 | 300MB 独享 | 300GB/月 | 3台 | $21.00/月-$210.00/年 | 购买 |
| 香港 IPLC 专线 | 1G 独享 | 1T/月 | 无限 | $59.00/月-$589.00/年 | 购买 |
| 香港 CN2 GIA | 100MB 独享 | 100GB/月 | 3台 | $34.99/月-$349.99/年 | 购买 |
| 香港 CN2 GIA | 500MB 独享 | 500GB/月 | 5台 | $149.99/月-$1499.99/年 | 购买 |
| 香港 CN2 GIA | 1G 独享 | 1T/月 | 无限 | $279.99/月-$2799.99/年 | 购买 |
| 日本 CN2 GIA | 100MB 独享 | 100GB/月 | 3台 | $29.99/月-$299.99/年 | 购买 |
| 日本 CN2 GIA | 200MB 独享 | 500GB月 | 5台 | $135.99/月-$1349.99/年 | 购买 |
| 日本 CN2 GIA | 500MB 独享 | 1T/月 | 无限 | $239.00/月-$2399.00/年 | 购买 |
| 日本 CN2 GIA | 700MB 独享 | 5T/月 | 无限 | $1135.00/月-$11395.00/年 | 购买 |
| 伦敦 500 | 2.5Gbps | 500GB/月 | 5台 | $6.8/月-$67.99/年 | 购买 |
| 伦敦 1000 | 5Gbps | 1T/月 | 无限 | $11.29/月-$113.99/年 | 购买 |
| 伦敦 5000 | 5Gbps | 5T/月 | 无限 | $59.99/月-$559.99/年 | 购买 |
需要 VPS 服务器?Just My Socks 更适合直接使用代理服务;如果您需要建站、部署项目、搭建环境或学习 Linux,可以选择搬瓦工 VPS,参考 搬瓦工在售 VPS 套餐整理与购买推荐。 |
|||||

搬瓦工教程