前言#不在家庭网络时,比如外出,可能需要访问家中不方便暴露在公网的局域网服务。通过搭建 shadowsocks 代理,你可以”回家”,就像身处局域网一样访问这些资源。相比于 WireGuard 组网,shadowsocks 可以通过代理工具编写复杂的规则,实现更灵活的代理策略。
准备工作#
一台拥有公网 IP 的设备,IPv4 或 IPv6 均可
设备上已安装 Docker
确保设备和设备网关的 8388 端口(或你自定义的端口)已开放
服务端安装 shadowsocks#首先,创建配置文件目录:
Terminal window1mkdir -p ~/ss-server && cd ~/ss-server编写配置文件 config.json:
1{2 "server": "::",3 "server_port": 8388,4 "password": "your_strong_password_here",5 "method": "chacha20-ietf-poly1305",6 "mode": "tcp_and_udp"7}然后启动 shadowsocks 服务器:
Terminal window1docker run -d --name ss-server --restart always --network host \2 -v ~/ss-server/config.json:/etc/shadowsocks-rust/config.json \3 ghcr.io/shadowsocks/ssserver-rust:latest
安全提示:请务必将配置中的 password 替换为强密码,避免使用默认值!
客户端安装 shadowsocks#根据你的设备选择适合的客户端:
安卓设备:
shadowsocks Android
v2rayNG
Windows 设备:
shadowsocks Windows
Clash Verge Rev
配置客户端#以安卓 shadowsocks 为例:
打开 shadowsocks 应用
点击右上角 ”+” 添加配置
手动配置以下信息:
配置名称:自定义(如”家庭网络”)
服务器地址:服务端公网 IP
服务器端口:8388(或你自定义的端口)
密码:你在服务端设置的密码
加密方法:chacha20-ietf-poly1305
路由:全局模式(或根据需要选择)
保存并启用配置
测试连接#
客户端已连接到 shadowsocks
尝试访问家庭网络中的资源,如:
局域网服务
NAS 管理界面
常见问题排查#无法连接#
检查服务器防火墙是否已开放 8388 端口
确认配置文件中的密码和加密方法与客户端一致
查看服务器日志:docker logs ss-server
连接速度慢#
尝试更换加密方法,如 aes-256-gcm
检查服务器带宽限制
考虑更换网络质量更好的服务器