如何在VPS上更改SSR端口?
| 步骤 |
操作说明 |
使用工具 |
注意事项 |
| 1 |
定位SSR配置文件(通常为/etc/shadowsocks.json或gui-config.json) |
nano/vim编辑器 |
建议先备份原文件 |
| 2 |
修改”port”字段值为新端口(1024-65535) |
文本编辑器 |
避免与系统服务冲突 |
| 3 |
重启SSR服务使配置生效 |
systemctl命令 |
检查服务状态确认无报错 |
| 4 |
防火墙放行新端口 |
firewalld/iptables |
需同步更新防火墙规则 |
| 5 |
处理SELinux限制(如启用) |
setsebool命令 |
仅CentOS等系统需要 |
VPS上SSR端口修改完整指南
一、修改SSR端口的必要性
SSR(ShadowsocksR)默认使用1080等常见端口,这些端口容易被运营商识别和封锁。通过修改为非常用端口(如44300-65535范围),可显著提升连接稳定性。此外,当出现端口冲突时(如Windows系统保留端口段),修改端口也是唯一解决方案^^1^^2^^3^^。
二、详细操作步骤
1. 定位配置文件
SSR配置文件通常位于以下路径之一:
- Linux系统:
/etc/shadowsocks.json
- Windows客户端:
gui-config.json(与主程序同目录)
使用命令进入编辑模式:
sudo nano /etc/shadowsocks.json
2. 修改端口参数
找到配置文件中"port"字段(可能标注为"localPort"),将数值改为自定义端口(如54321)。注意:
- 端口范围需在1024-65535之间
- 建议选择大于30000的非常用端口
- 多端口配置需同时修改"port"和"localport"字段^^1^^4^^
示例配置片段:
{
"server":["yourserverip"],
"serverport":54321,
"localaddress":"127.0.0.1",
"localport":1080,
"password":"yourpassword",
"timeout":300
}
3. 重启服务使配置生效
不同系统的重启命令:
# Systemd系统(CentOS 7+/Ubuntu 16.04+)
sudo systemctl restart shadowsocks
传统SysV系统
sudo /etc/init.d/shadowsocks restart
4. 防火墙配置
放行新端口的命令示例:
firewalld(CentOS 7+)
sudo firewall-cmd --zone=public --add-port=54321/tcp --permanent
sudo firewall-cmd --reload
iptables(CentOS 6)
sudo iptables -I INPUT -p tcp --dport 54321 -j ACCEPT
sudo service iptables save
5. SELinux处理(仅限启用SELinux的系统)
sudo setsebool -P httpdcannetworkconnect 1
sudo semanage port -a -t sshportt -p tcp 54321
三、常见问题解决方案
| 问题现象 |
可能原因 |
解决方法 |
| 连接超时 |
防火墙未放行新端口 |
检查防火墙规则,确认端口已开放^^5^^ |
| 端口冲突 |
端口被其他程序占用 |
使用netstat -tulnp检查并更换端口^^2^^6^^ |
| SELinux拒绝 |
未授权新端口 |
执行semanage port添加例外^^1^^ |
| Windows报错 |
端口在保留段(1024-1127) |
修改为1025以下或1128以上端口^^3^^ |
四、注意事项
- 测试顺序:修改后先本地测试
telnet 127.0.0.1 新端口,再测试外网连接
- 多端同步:服务器和客户端的端口配置必须完全一致
- 日志排查:连接失败时查看
/var/log/messages或客户端日志获取详细错误信息
- 备用方案:建议配置2-3个不同端口的SSR实例,主端口失效时可快速切换^^5^^
通过以上步骤,您可以安全有效地完成VPS上SSR端口的修改。如遇特殊问题,可参考GitHub上的
SSR一键脚本进行自动化配置^^7^^。
发表评论