选择端口时,建议避开常见的默认端口(如1080/8388)和常用服务端口(80/443/22等)。可使用一个位于1024以上的随机高端口并结合端口频繁变更策略(定期或基于检测触发)。
1) 使用高位端口(例如10000–60000范围内随机选取),并记录端口变更历史以便排查。
2) 配合阿里云安全组限制来源IP(仅允许已知IP段访问),减少公网暴露面。
可通过简单脚本周期性修改SS配置端口并重启服务,同时更新安全组规则或本地防火墙规则以同步生效。
端口虽然能降低被动扫描的概率,但不能替代加密与流量混淆措施,建议与其他手段结合使用。
阿里云安全组是第一道防线,应严格做“最小开放原则”。本地防火墙(iptables/nftables/firewalld)则作为细粒度控制与速率限制的第二道防线。
1) 仅开放必要端口:SS端口、管理SSH端口(建议非22)、必要的出站端口。
2) 使用来源IP白名单或内网安全组规则来限制访问。
1) 只允许安全组允许的端口在本地生效,额外使用速率限制和连接限制。
2) 屏蔽常见扫描/探测工具来源IP,并记录可疑连接。
安全组负责粗粒度开放,本地防火墙负责细粒度和异常防护。二者规则应保持一致并定期审计。
通过防火墙可以实现白名单、黑名单、连接数限制、速率限制、日志告警等策略,显著提升代理服务器的抗扫描与抗滥用能力。
1) 允许回环与已建立连接:iptables -A INPUT -i lo -j ACCEPT; iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT。
2) 允许SS端口并限制并发:iptables -A INPUT -p tcp --dport 端口 -m connlimit --connlimit-above 20 -j REJECT。
使用iptables的hashlimit模块限制单IP的连接速率:iptables -A INPUT -p tcp --dport 端口 -m hashlimit --hashlimit 30/min --hashlimit-mode srcip --hashlimit-name ss_rate -j ACCEPT;其它超出规则DROP。
nftables可写更清晰的规则集并支持复杂集合;firewalld为动态管理工具,适合交互配置。选择时依据运维习惯与自动化需求。
单纯更换端口无法完全防护,推荐采用流量混淆、协议伪装或在传输层增加TLS等方式来降低被识别概率。
1) 使用obfs或v2ray/VMess等插件将流量伪装成随机或HTTP、TLS流量。
2) 使用SS+obfs(如simple-obfs)或通过WebSocket+TLS将流量看起来像正常HTTPS。
1) 使用CDN或反代(如接入Cloudflare)把代理流量伪装成网站访问,注意合法合规。
2) 实施端口敲击/端口守门(port knocking)让服务对外不可见,只有正确敲击序列后开放真实端口。
定期使用流量分析工具检查是否有异常探测,结合日志和入侵检测系统(IDS)优化混淆策略。
运维与监控是长期防护的核心,包含补丁管理、账号安全、日志审计、备份与自动响应等内容。
1) SSH使用密钥认证并禁用密码登录,修改默认端口,限制允许登录的来源IP,启用Fail2ban封禁暴力破解IP。
定期更新系统与SS相关软件,优先应用安全补丁。测试环境验证无问题后再在生产环境滚动升级。
1) 开启详细访问与系统日志,使用集中式日志(如ELK/Graylog)进行分析;2) 配置磁盘与配置文件定期备份并异地保存;3) 设置告警(异常连接、CPU突增、未授权登录)并自动触发防护脚本。