我在 VM 中设置了 Fedora Server 25,并使用 SaltStack 通过这个 walk-thru 安装 NextCloud。我遇到的问题是防火墙限制性太强,阻塞了端口 22、80 和 443。根据walk-thru 创建者的建议,我编辑了 SaltStack“nextcloud.sls”文件,如下所示,但没有帮助:
#line108
FedoraServer:
firewalld.present:
- name: FedoraServer
- block_icmp:
- echo-reply
- echo-request
- default: False
- masquerade: True
- ports:
- 22/tcp
- 80/tcp
- 443/tcp
- 9090/tcp
我可以做些什么来打开这些端口,这样我就不必在每次启动时一直停止防火墙服务?谢谢你。
编辑:所以,即使- firewalld
从 nextcloud.sls 脚本中删除(在install_network_packages: pk.installed:
防火墙下仍在启动并阻止我需要的所有端口。Fedora 服务器中必须有其他东西覆盖 SaltStack 脚本并启用防火墙...... ??
我不知道 SaltStack,但您应该能够通过
firewall-cmd
. 例如,要永久打开ssh
,请尝试以下操作:firewall-cmd --add-service=ssh; firewall-cmd --add-service=ssh --permanent
要启用 ICMP 和其他服务:
我建议您先尝试不使用永久规则。如果一切正常,您可以发布永久规则并重新启动机器。
为什么防火墙与 NextCloud 实例在同一台服务器上?为什么不直接控制来自网络防火墙的端口流量?您可以为该服务器创建一个区域,并从网络级别控制进出它的内容。