目录
前言
Shadowsocks 是一种基于 SOCKS5 代理的加密传输协议,广泛应用于科学上网、翻墙等场景。与传统的 VPN 技术相比,Shadowsocks 具有更好的性能、更高的灵活性和更强的抗审查能力,因此深受用户的喜爱。本文将为您详细介绍如何在 CentOS 系统上安装和配置 Shadowsocks 服务器。
准备工作
在开始安装 Shadowsocks 之前,请确保您的 CentOS 系统满足以下要求:
- 系统版本:CentOS 7 及以上
- 系统架构:x86_64
- 网络环境:可以访问互联网
- 用户权限:拥有 root 权限
安装 Shadowsocks 服务端
-
更新系统软件包:
yum update -y
-
安装 Python 和 pip:
yum install -y python3 python3-pip
-
使用 pip 安装 Shadowsocks:
pip3 install shadowsocks
配置 Shadowsocks 服务端
-
创建 Shadowsocks 配置文件:
vim /etc/shadowsocks.json
-
在配置文件中添加以下内容,根据实际情况进行修改:
{ “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “timeout”:300, “method”:”aes-256-cfb” }
server
: 服务器监听地址,一般设置为0.0.0.0
监听所有网络接口server_port
: 服务器监听端口号password
: 连接密码timeout
: 连接超时时间(秒)method
: 加密方式
启动 Shadowsocks 服务
-
使用以下命令启动 Shadowsocks 服务:
ssserver -c /etc/shadowsocks.json -d start
-
查看 Shadowsocks 服务状态:
ssserver -c /etc/shadowsocks.json -d status
-
停止 Shadowsocks 服务:
ssserver -c /etc/shadowsocks.json -d stop
客户端连接设置
安装好 Shadowsocks 服务端后,您需要在客户端设置连接信息才能使用。以 Windows 客户端为例:
- 下载并安装 Shadowsocks 客户端软件,可以从 Github 仓库下载最新版本。
- 打开客户端软件,点击
系统代理模式
选择全局模式
。 - 在
服务器
选项卡中,填写服务器 IP 地址、端口号和密码,然后点击确定
。 - 在系统托盘中右击 Shadowsocks 图标,选择
启用系统代理
即可开始使用。
常见问题 FAQ
Q1: 如何查看 Shadowsocks 服务器的运行日志? A1: 可以使用以下命令查看 Shadowsocks 服务器的运行日志:
tail -n 100 /var/log/shadowsocks.log
Q2: Shadowsocks 服务器启动失败,如何排查问题? A2: 可以检查以下几个方面:
- 确保 Python 和 pip 已正确安装
- 检查 Shadowsocks 配置文件
/etc/shadowsocks.json
是否正确 - 查看 Shadowsocks 服务启动日志,排查错误信息
- 检查防火墙是否放行了 Shadowsocks 服务端口
Q3: 如何设置 Shadowsocks 服务器自动启动? A3: 可以使用 systemd 服务来实现 Shadowsocks 服务器的自动启动:
-
创建 systemd 服务文件:
vim /etc/systemd/system/shadowsocks.service
-
在服务文件中添加以下内容:
[Unit] Description=Shadowsocks Server After=network.target
[Service] ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json Restart=always
[Install] WantedBy=multi-user.target
-
启用并启动 Shadowsocks 服务:
systemctl enable shadowsocks systemctl start shadowsocks
Q4: Shadowsocks 服务器如何设置多用户? A4: 可以在 Shadowsocks 配置文件 /etc/shadowsocks.json
中添加多个用户配置,示例如下:
{ “server”:”0.0.0.0″, “server_port”:8388, “password”:”password1″, “method”:”aes-256-cfb”, “users”: [ { “server_port”: 8389, “password”: “password2”, “method”: “aes-256-cfb” }, { “server_port”: 8390, “password”: “password3”, “method”: “aes-256-cfb” } ]} 在这个配置中,我们添加了两个用户,每个用户都有自己的端口和密码。
Q5: Shadowsocks 服务器如何设置流量限制? A5: 可以在 Shadowsocks 配置文件 /etc/shadowsocks.json
中添加以下配置项:
{ “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “timeout”:300, “method”:”aes-256-cfb”, “speed_limit_per_con”: 1024, “speed_limit_per_user”: 10240}
speed_limit_per_con
: 单个连接的速度限制,单位 KB/sspeed_limit_per_user
: 单个用户的总速度限制,单位 KB/s
这样就可以限制每个连接和每个用户的流量速度。