Linux 上 使用 Docker 快速部署 Shadowsocks 服务端教程

如果你手头有一台 VPS,并希望快速搭建一款代理服务,那么 Shadowsocks(以下简称 SS)是一个轻量、高性能的选择。结合 Docker,你无需繁琐编译安装,只需几条命令即可完成部署。本文将以 Docker 容器化方式,讲解 SS 服务端从零配置至运行的完整流程。

准备工作

1. 已拥有一台可用 VPS,建议运行 Ubuntu 20.04 或者其它主流 Linux 发行版。

2. 安装 Docker 环境。如果还未安装,可依据系统执行:

sudo apt update && sudo apt upgrade -y  
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release  
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg  
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null  
sudo apt update  
sudo apt install -y docker-ce docker-ce-cli containerd.io  
sudo systemctl enable --now docker  

安装完成后可用 docker version 检查。

3. 防火墙 & 网络端口:确保你的 VPS 外网能访问你将用于 SS 的服务端口,并且 Docker 端口映射不会被 VPS 提供商或防火墙屏蔽。

拉取镜像 & 运行容器

这里以官方 shadowsocks-libev 镜像为例。你也可以选用 shadowsocks-rust 版。

1. 拉取镜像

docker pull shadowsocks/shadowsocks-libev

2. 运行容器

假设你选用端口 8388,加密方式选择 aes-256-gcm,密码为 YourStrongPassword:

docker run -d \
  --name ss-server \
  -e PASSWORD=YourStrongPassword \
  -e METHOD=aes-256-gcm \
  -p 8388:8388/tcp \
  -p 8388:8388/udp \
  --restart always \
  shadowsocks/shadowsocks-libev:latest

这条命令实现了:

  • 设置密码环境变量 PASSWORD
  • 设置加密方式 METHOD
  • 将主机的 8388 端口映射至容器(TCP 和 UDP)
  • 容器随 Docker 启动自动重启

配置说明与优化建议

  • 端口映射:确保 VPS 的外部防火墙及提供商控制面板已开放你选定的端口(此例中为 8388 UDP/TCP)。
  • 加密方式:推荐使用 AEAD 系列如 aes-256-gcm 或 chacha20-ietf-poly1305,安全性与性能都较优秀。
  • 密码强度:务必使用一个复杂且唯一的密码。避免使用弱密码。
  • 持续运行与监控:--restart always 保证容器重启即运行。同时建议定期查看 docker logs ss-server 监控运行情况。
  • 额外插件支持:如果需要更强的隐蔽性或兼容性,可考虑结合 v2ray-plugin 等插件。某些镜像如 acrisliu/shadowsocks-libev 支持通过环境变量直接启用插件。

客户端连接

部署完成后,你需要在客户端(手机/电脑)配置连接信息,通常需要如下参数:

  • 服务器地址:你的 VPS 公网 IP 或域名
  • 端口:8388(或你自定义的)
  • 密码:你在容器中指定的密码
  • 加密方式:同服务端(如 aes-256-gcm)

配置完成后启动客户端,验证是否能够成功通过代理访问网络。

安全建议与常见注意事项

  • 避免使用默认端口(8388)可稍作更改,减少被扫描。
  • 定期更新镜像:docker pull shadowsocks/shadowsocks-libev 然后重建容器。
  • 如果 VPS 支持 IPv6,需确认 Docker 网络与防火墙策略支持 IPv6。
  • 日志监控:注意是否有异常连接尝试,若频繁可考虑更换端口或增强密码。
  • 不建议将服务暴露在公共 WiFi 网络或不可信环境中管理。

总结

通过 Docker 方式部署 Shadowsocks 服务端,可以极大简化部署流程,只需少量命令就能完成从安装到运行。本文从准备环境、镜像拉取、容器运行、配置说明、客户端连接、安全建议五大部分系统覆盖。希望你能顺利搭建起稳定、安全的代理服务。

评论 添加
暂无评论,来聊两句?