目录
- 简介
- 系统要求
- 安装 Shadowsocks Manyuser 3.1. 下载并解压 3.2. 配置 Shadowsocks Manyuser 3.3. 启动 Shadowsocks Manyuser
- 配置 Shadowsocks 客户端 4.1. Windows 客户端 4.2. Mac 客户端 4.3. Android 客户端 4.4. iOS 客户端
- 管理 Shadowsocks Manyuser 5.1. 添加新用户 5.2. 修改用户配置 5.3. 监控用户状态
- 常见问题解答 (FAQ)
简介
Shadowsocks Manyuser 是一个基于 Shadowsocks 协议的多用户代理服务,可以方便地为多个用户提供 Shadowsocks 代理服务。它支持多种加密方式和协议,并提供了用户管理、流量监控等功能,非常适合个人或小型团队使用。
系统要求
- 操作系统: CentOS 7 或更高版本
- 最低配置: 1 GB RAM, 1 核 CPU
- 网络环境: 可以访问互联网
安装 Shadowsocks Manyuser
下载并解压
- 访问 Shadowsocks Manyuser 的 GitHub 仓库 https://github.com/shadowsocks/shadowsocks-libev 下载最新版本的源码包。
- 将源码包上传到您的 CentOS 服务器,并解压缩:
bash tar -xvf shadowsocks-libev.tar.gz cd shadowsocks-libev
配置 Shadowsocks Manyuser
- 打开
config.json
文件,并根据您的需求进行配置:
{ “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “method”:”aes-256-cfb”, “timeout”:300, “user”:”nobody”, “fast_open”:false, “workers”:1}
- 根据需要修改以下参数:
server
: 服务器监听的 IP 地址,一般设置为0.0.0.0
以监听所有网卡。server_port
: 服务器监听的端口号。password
: 用于加密的密码。method
: 加密方式,常用的有aes-256-cfb
、chacha20-ietf-poly1305
等。timeout
: 连接超时时间,单位为秒。user
: 运行 Shadowsocks 服务的用户,一般设置为nobody
。fast_open
: 是否开启 TCP Fast Open 功能,可以提高连接速度。workers
: 工作进程数量,根据 CPU 核心数调整。
启动 Shadowsocks Manyuser
- 编译安装 Shadowsocks Manyuser:
bash ./configure make sudo make install
- 启动 Shadowsocks Manyuser 服务:
bash sudo ssserver -c config.json -d start
- 检查 Shadowsocks Manyuser 服务是否正常运行:
bash sudo ssserver -c config.json -d status
配置 Shadowsocks 客户端
Windows 客户端
- 下载并安装 Shadowsocks Windows 客户端: https://github.com/shadowsocks/shadowsocks-windows/releases
- 在客户端中添加服务器信息,包括服务器地址、端口、密码和加密方式。
- 启用 Shadowsocks 代理,并选择合适的服务器进行连接。
Mac 客户端
- 下载并安装 Shadowsocks macOS 客户端: https://github.com/shadowsocks/shadowsocks-iOS/releases
- 在客户端中添加服务器信息,包括服务器地址、端口、密码和加密方式。
- 启用 Shadowsocks 代理,并选择合适的服务器进行连接。
Android 客户端
- 下载并安装 Shadowsocks Android 客户端: https://github.com/shadowsocks/shadowsocks-android/releases
- 在客户端中添加服务器信息,包括服务器地址、端口、密码和加密方式。
- 启用 Shadowsocks 代理,并选择合适的服务器进行连接。
iOS 客户端
- 下载并安装 Shadowrocket iOS 客户端: https://apps.apple.com/us/app/shadowrocket/id932747118
- 在客户端中添加服务器信息,包括服务器地址、端口、密码和加密方式。
- 启用 Shadowsocks 代理,并选择合适的服务器进行连接。
管理 Shadowsocks Manyuser
添加新用户
-
编辑
config.json
文件,在users
字段中添加新用户的配置信息: “users”: [ { “password”: “user1_password”, “method”: “aes-256-cfb”, “port”: 8001 }, { “password”: “user2_password”, “method”: “chacha20-ietf-poly1305”, “port”: 8002 } ] -
保存文件并重启 Shadowsocks Manyuser 服务:
bash sudo ssserver -c config.json -d restart
修改用户配置
- 编辑
config.json
文件,找到需要修改的用户配置并进行更改。 - 保存文件并重启 Shadowsocks Manyuser 服务:
bash sudo ssserver -c config.json -d restart
监控用户状态
- 查看当前连接的用户:
bash sudo ssserver -c config.json -d status
- 查看用户流量统计:
bash sudo ssserver -c config.json -d stat
常见问题解答 (FAQ)
1. 为什么我无法连接到 Shadowsocks 服务器?
可能原因包括:
- 服务器防火墙未开放 Shadowsocks 端口
- 服务器上 Shadowsocks 服务未正确启动
- 客户端配置信息不正确(如密码、加密方式等)
- 网络环境存在限制或干扰
请检查以上几个方面,并根据实际情况进行排查和修复。
2. 如何查看 Shadowsocks 服务的日志信息?
可以使用以下命令查看 Shadowsocks 服务的日志:
bash sudo ssserver -c config.json -d start sudo tail -n 100 /var/log/shadowsocks.log
日志中可以查看连接状态、错误信息等,有助于排查问题。
3. 如何限制单个用户的最大并发连接数?
在 config.json
文件中的 users
字段下,为每个用户添加 max_connections
参数,设置最大并发连接数: “users”: [ { “password”: “user1_password”, “method”: “aes-256-cfb”, “port”: 8001, “max_connections”: 5 }, { “password”: “user2_password”, “method”: “chacha20-ietf-poly1305”, “port”: 8002, “max_connections”: 3 } ]
4. 如何限制单个用户的流量使用?
在 config.json
文件中的 users
字段下,为每个用户添加 transfer_enable
参数,设置最大流量限制(单位为字节): “users”: [ { “password”: “user1_password”, “method”: “aes-256-cfb”, “port”: 8001, “transfer_enable”: 1073741824 # 1 GB }, { “password”: “user2_password”, “method”: “chacha20-ietf-poly1305”, “port”: 8002, “transfer_enable”: 5368709120 # 5 GB } ]
5. 如何自动启动 Shadowsocks Manyuser 服务?
可以使用 systemd 来管理 Shadowsocks Manyuser 服务的自动启动。创建一个 systemd 服务文件 /etc/systemd/system/shadowsocks-manyuser.service
:
[Unit] Description=Shadowsocks Manyuser Service After=network.target
[Service] ExecStart=/usr/local/bin/ssserver -c /path/to/config.json Restart=always User=nobody
[Install] WantedBy=multi-user.target
然后使用以下命令启用并启动服务:
bash sudo systemctl enable shadowsocks-manyuser.service sudo systemctl start shadowsocks-manyuser.service