CentOS 7上部署Shadowsocks-libev服务端并配置UDP转发

目录

1. 什么是Shadowsocks-libev

Shadowsocks-libev 是 Shadowsocks 项目的一个轻量级版本,它使用 C 语言编写,性能更加出色。它支持多种协议,包括 AEAD 加密方式,是一款功能强大、易于部署的代理服务软件。

2. 环境准备

  • 操作系统: CentOS 7
  • 内存: 最低 512MB
  • 硬盘: 最低 5GB
  • 网络: 可访问互联网

3. 安装Shadowsocks-libev服务端

  1. 更新系统软件包:

    yum update -y

  2. 安装 Shadowsocks-libev 服务端:

    yum install -y epel-release yum install -y shadowsocks-libev

4. 配置Shadowsocks-libev服务端

  1. 编辑配置文件 /etc/shadowsocks-libev/config.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: 加密方式,这里使用 aes-256-cfb
  2. 保存并退出配置文件。

5. 启动Shadowsocks-libev服务

  1. 启动 Shadowsocks-libev 服务:

    systemctl start shadowsocks-libev

  2. 设置开机自启动:

    systemctl enable shadowsocks-libev

  3. 查看服务状态:

    systemctl status shadowsocks-libev

6. 配置UDP转发

  1. 编辑 Shadowsocks-libev 配置文件 /etc/shadowsocks-libev/config.json,添加 modeplugin 配置项:

    { “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “timeout”:300, “method”:”aes-256-cfb”, “mode”:”tcp_and_udp”, “plugin”:”obfs-server”, “plugin_opts”:”obfs=tls” }

    • mode: 设置为 tcp_and_udp 以启用 UDP 转发
    • plugin: 设置为 obfs-server 以启用 obfs 混淆插件
    • plugin_opts: 配置 obfs 插件选项,这里设置为 obfs=tls
  2. 保存并退出配置文件。

  3. 重启 Shadowsocks-libev 服务:

    systemctl restart shadowsocks-libev

7. 防火墙设置

  1. 开放 Shadowsocks-libev 服务端口:

    firewall-cmd –permanent –add-port=8388/tcp firewall-cmd –permanent –add-port=8388/udp firewall-cmd –reload

8. 客户端配置

Shadowsocks-libev 服务端配置完成后,您可以使用任何支持 Shadowsocks 协议的客户端进行连接。常见的客户端有:

  • Windows: Shadowsocks Windows 客户端
  • macOS: Shadowsocks-NG
  • iOS: Shadowrocket
  • Android: Shadowsocks Android 客户端

在客户端中填写服务器地址、端口、密码和加密方式即可。

9. 性能优化

  1. 开启 TCP Fast Open:

    echo “net.ipv4.tcp_fastopen = 3” >> /etc/sysctl.conf sysctl -p

  2. 调整系统文件句柄限制:

    echo “* hard nofile 51200” >> /etc/security/limits.conf echo “* soft nofile 51200” >> /etc/security/limits.conf

  3. 优化 Shadowsocks-libev 配置:

    { “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “timeout”:300, “method”:”chacha20-ietf-poly1305″, “mode”:”tcp_and_udp”, “plugin”:”obfs-server”, “plugin_opts”:”obfs=tls” }

    • 使用更高效的加密方式 chacha20-ietf-poly1305

通过以上优化,您可以进一步提高 Shadowsocks-libev 服务的性能和稳定性。

常见问题 FAQ

1. Shadowsocks-libev 和原版 Shadowsocks 有什么区别?

Shadowsocks-libev 是 Shadowsocks 项目的一个轻量级版本,它使用 C 语言编写,性能更加出色。它支持多种协议,包括 AEAD 加密方式,是一款功能强大、易于部署的代理服务软件。

2. 为什么需要配置 UDP 转发?

UDP 转发可以提高 Shadowsocks 在某些网络环境下的性能和稳定性,特别是在视频、游戏等对网络延迟敏感的应用场景中。

3. Shadowsocks-libev 服务端有哪些优化方法?

  1. 开启 TCP Fast Open 可以提高连接速度;
  2. 调整系统文件句柄限制可以支持更多并发连接;
  3. 使用更高效的加密方式 chacha20-ietf-poly1305 可以提高性能。

4. Shadowsocks-libev 客户端有哪些选择?

Shadowsocks-libev 服务端配置完成后,您可以使用任何支持 Shadowsocks 协议的客户端进行连接,常见的客户端有 Shadowsocks Windows 客户端、Shadowsocks-NG、Shadowrocket 和 Shadowsocks Android 客户端等。

5. 如何检查 Shadowsocks-libev 服务是否正常运行?

您可以使用 systemctl status shadowsocks-libev 命令查看服务状态,如果服务正常运行,输出应该显示 Active: active (running)。您也可以尝试使用客户端连接服务器,如果能正常连接,说明服务端配置正确。

正文完