Yafei's Blog

Cent OS 防火墙配置文件的问题

晚上给 biu.zacpark 服务添加一个新的节点,托管在 Vultr 上位于 Tokyo 的服务器,之前 biu.zacpark 所有的节点都是在 DigitalOcean 上购买的,第一次用 Vultr 的主机,配置过程一切顺利,就是在最后一步配置完成后,一直无法链接。

找了半天原因确定是服务器防火墙的问题,在使用 DigitalOcean 的服务器时配置完新主机默认就直接可以正常运行 shadowsocks 服务,而 Vultr 的主机运行 Shadowsocks 服务时,服务器运行正常,客户端却一直无法连接。

  1. 通过 $ netstat -anp | grep 你的端口 查看是否有来自客户端 IP 的连接。

  2. 如果没有,则通过 $ iptables -I INPUT -p tcp -m tcp --dport 12450: -j ACCEPT来允许来自特定端口的连接。

注意,上文命令中,端口数在半角冒号之前,意为允许 12450 及以上的端口,如果希望只允许某个数字段的端口,可以以 12450:15550 这样的方式进行。

  1. 执行完端口「放行」的命令,再执行 service iptables save,这样才会把规则保存到配置文件(/etc/sysconfig/iptables)中,下次系统启动自动加载。

  2. 配置完防火墙,使用 service iptables restart 重启配置。

注意,第三步很重要,否则配置的端口规则在服务器重启之后就会失效,还要再执行一次才能生效,所以一定要在配置完成后把规则写入到配置文件中,来实现下次启动系统自动加载。

参考资料:https://prinzeugen.net/build-shadowsocks-sharing-site-with-ss-panel/