CentOS:我的端口 5432 无法通过互联网访问吗?

CentOS:我的端口 5432 无法通过互联网访问吗?

我们安装了一台新的 CentOS 服务器进行测试,其配置与 debian 略有不同。我现在不确定端口 5432 对我们来说是否安全。如果没有,我如何保护运行 postgresql 的端口 5432,使其无法从互联网访问。虽然我记得添加了端口 5432 的规则,但我在 Iptables 中看不到它

这不是 debian 系统。

iptables-S:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited


netstat -tulpn | grep 5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      2938/postgres       
tcp6       0      0 ::1:5432                :::*                    LISTEN      2938/postgres  

答案1

如果你运行netstat -tulpn | awk 'NR==2 || /:5432/'而不是你的,netstat ... grep你也会得到列标题:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      2938/postgres
tcp6       0      0 ::1:5432                :::*                    LISTEN      2938/postgres

查看该Local Address列,您可以看到它postgres仅侦听环回地址 ( 127.0.0.1)。在此基础上您可以放心,它不会接受任何其他系统的请求。

您提到的阻止此端口的防火墙规则显然不存在于当前规则集中,因此您可能没有确保保存它(iptables除非您先保存了规则,否则规则在重新启动后不会保留)。根据CentOS 维基保存规则集的正确方法是/sbin/service iptables save

相关内容