输入以下命令后,
firewall-cmd --add-service=postgresql-13 --permanent
我得到了这个
Error: INVALID_SERVICE: 'postgresql-13' not among existing services
其中,postgresql-13 是我的服务。
到底是什么地方出了问题?
答案1
你是否定义自定义的firewalld服务命名postgresql-13
?你没有提到这样做。
Firewalld 服务定义防火墙允许的一个或多个端口和/或协议。它们与 systemd 服务无关。
如果您想要启用到 PostgreSQL 的传入流量,正确的服务名称是postgresql
。
答案2
firewall-cmd --get-services
显示所有服务防火墙知道。对于列出的每项服务,都有一个 XML 文件/usr/lib/firewalld/服务. 查阅它来找到通过启用服务实际打开的端口。
对于 OP 来说,应该有一个文件/usr/lib/firewalld/services/postgresql.xml它定义端口 5432/tcp。