一个自动化安装和管理 Shadowsocks-libev 服务器的脚本,支持自定义配置、BBR 加速和订阅链接生成。
English documentation: README.en.md
- ✅ 全自动安装 Shadowsocks-libev 服务端
- 🔧 自定义端口、密码和加密算法
- 🚀 可选启用 BBR 加速优化网络性能
- 🔗 自动生成订阅链接供客户端导入
- 📱 支持二维码扫描快速配置
- ️完整的防火墙配置
- 🧹 提供卸载脚本彻底清理环境
- 🔇 安装过程静默(自动使用 -y,并隐藏安装过程输出;错误信息仍会显示)
- 操作系统:
- Ubuntu 16.04+
- Debian 9+
- CentOS 7+
- 内存:≥ 128MB
- 磁盘空间:≥ 10MB
- 需要 root 权限运行
wget https://raw.githubusercontent.com/lezi-fun/shadowsocks-libev/main/install-ss.sh
wget https://raw.githubusercontent.com/lezi-fun/shadowsocks-libev/main/uninstall-ss.sh
wget https://raw.githubusercontent.com/lezi-fun/shadowsocks-libev/main/generate-ss-link.sh
wget https://raw.githubusercontent.com/lezi-fun/shadowsocks-libev/main/install-ss-docker.sh
chmod +x install-ss.sh uninstall-ss.sh generate-ss-link.sh install-ss-docker.sh
sudo ./install-ss.sh
- 是否启用 BBR 加速(默认启用,可选)
- 端口号(默认随机生成)
- 密码(默认随机生成)
- 加密算法(从菜单中选择)
安装完成后会显示:
- 服务器 IP
- 端口号
- 密码
- 加密算法
- 订阅链接
- 二维码
无需安装服务端,仅生成 ss://
链接与二维码,适合已有服务端或临时分享。
sudo ./generate-ss-link.sh
- 若存在
/etc/shadowsocks-libev/config.json
且安装jq
,脚本可直接读取method/password/port
- 支持手动输入 IP、端口、密码、加密算法与标签
- 输出原始链接与 URL 安全订阅链接,并尝试用
qrencode
生成二维码
可选依赖安装:
# Ubuntu/Debian
sudo apt install -y jq qrencode
# CentOS
sudo yum install -y jq qrencode
无需在宿主机安装 shadowsocks-libev,使用 Docker 运行:
sudo ./install-ss-docker.sh
- 自动检测 Docker,若未安装可选择一键安装(使用官方脚本)
- 自定义端口、密码、加密算法、容器名称
- 自动放行防火墙端口(如检测到
ufw
或firewalld
) - 安装完成后输出
ss://
原始链接、URL 安全订阅链接和二维码(如安装了qrencode
)
管理容器:
docker logs -f ss-libev
docker restart ss-libev
docker rm -f ss-libev
脚本提供多种加密算法供选择:
选项 | 加密算法 | 推荐度 |
---|---|---|
1 | aes-256-gcm (默认) | ⭐⭐⭐⭐⭐ |
2 | aes-192-gcm | ⭐⭐⭐⭐ |
3 | aes-128-gcm | ⭐⭐⭐⭐ |
4 | chacha20-ietf-poly1305 | ⭐⭐⭐⭐⭐ |
5 | xchacha20-ietf-poly1305 | ⭐⭐⭐⭐ |
6 | camellia-256-gcm | ⭐⭐⭐ |
7 | camellia-192-gcm | ⭐⭐⭐ |
8 | camellia-128-gcm | ⭐⭐⭐ |
脚本生成两种格式的订阅链接:
- 标准格式:
ss://base64(加密算法:密码@服务器IP:端口)
- URL 安全格式(兼容更多客户端):
ss://base64(加密算法:密码@服务器IP:端口)#服务器标识
- Windows: Shadowsocks-Windows
- macOS: ShadowsocksX-NG
- Android: Shadowsocks-Android
- iOS: Shadowrocket(付费)
- 复制脚本生成的订阅链接
- 在客户端中选择「从剪贴板导入」或「订阅设置」
- 保存并启用配置
# Ubuntu/Debian
systemctl status shadowsocks-libev.service
# CentOS
systemctl status shadowsocks-libev
# Ubuntu/Debian
systemctl restart shadowsocks-libev.service
# CentOS
systemctl restart shadowsocks-libev
- 编辑配置文件:
nano /etc/shadowsocks-libev/config.json
- 修改配置后重启服务
sudo ./uninstall-ss.sh
卸载脚本将:
- 停止并禁用 Shadowsocks 服务
- 卸载 Shadowsocks 软件包
- 清除所有配置文件
- 移除防火墙规则
- 清理日志文件
注意:卸载脚本不会移除 BBR 内核优化,因为这些优化通常有益于服务器性能。
- 检查服务器防火墙是否开放端口
- 验证客户端配置是否与服务器一致
- 尝试更换端口(某些端口可能被运营商屏蔽)
- 编辑配置文件:
nano /etc/shadowsocks-libev/config.json
- 重启服务
- 手动生成新订阅链接:
METHOD=$(jq -r '.method' /etc/shadowsocks-libev/config.json)
PASSWORD=$(jq -r '.password' /etc/shadowsocks-libev/config.json)
PORT=$(jq -r '.server_port' /etc/shadowsocks-libev/config.json)
IP=$(curl -4 icanhazip.com)
echo "ss://$(echo -n "${METHOD}:${PASSWORD}@${IP}:${PORT}" | base64 -w 0)"
或者直接使用脚本生成链接与二维码:
sudo ./generate-ss-link.sh
重新下载最新版本脚本:
wget -O install-ss.sh https://raw.githubusercontent.com/lezi-fun/shadowsocks-libev/main/install-ss.sh
chmod +x install-ss.sh
欢迎提交 Pull Request 改进脚本:
- Fork 仓库
- 创建特性分支 (
git checkout -b feature/improvement
) - 提交更改 (
git commit -am 'Add some feature'
) - 推送到分支 dev (
git push origin feature/improvement
) - 创建 Pull Request
- 所有新增的脚本或功能必须同步更新
README.md
和README.en.md
(涵盖下载方式、执行权限、使用说明、常见问题等),否则 PR 可能不会被合并。
本项目采用 MIT 许可证
免责声明:此脚本仅用于教育目的,请确保在使用前了解并遵守当地法律法规。开发者不对任何不当使用负责。