Linux
防火牆在 kickstart 中沒有按預期工作
我在防火牆的 kickstart 中有以下行
firewall --enabled --service=ssh,glusterfs,tftp,ntp
我期望 tftp 伺服器應該可以從其他系統訪問,但它只能從本地伺服器訪問。
firewall-cmd --list-services ssh dhcpv6-client
我做了以下步驟,它開始工作
firewall-cmd --permanent --zone=public --add-service=tftp firewall-cmd --reload
為什麼kickstart防火牆命令不起作用既不拋出任何錯誤
更新1 : @Gracefulrestart 回復後,我嘗試了以下選項,但仍然沒有成功
firewall --enabled --service=ssh --service=glusterfs --service=tftp --service=ntp firewall --enabled --service={ssh,glusterfs,tftp,ntp}
列表服務的輸出是
firewall-cmd --list-services ssh dhcpv6-client
手動添加後
firewall-cmd --permanent --zone=public --add-service=tftp firewall-cmd --list-services ssh dhcpv6-client tftp
以下是日誌摘錄自
/var/log/anaconda/journal.log
Apr 23 10:48:10 localhost program[6875]: Running... /usr/bin/firewall-offline-cmd --enabled --port=30083:tcp --port=9090:tcp --port=8080:tcp --service=tftp --service=ssh --service=glusterfs --service=ntp Apr 23 10:48:10 localhost systemd[1]: Started Locale Service. Apr 23 10:48:10 localhost program[6875]: INVALID_SERVICE: 'glusterfs' not among existing services Apr 23 10:48:10 localhost program[6875]: Adding service 'tftp' to default zone. Apr 23 10:48:10 localhost program[6875]: Adding service 'ssh' to default zone. Apr 23 10:48:10 localhost program[6875]: ALREADY_ENABLED: ssh Apr 23 10:48:10 localhost program[6875]: Adding service 'glusterfs' to default zone. Apr 23 10:48:10 localhost program[6875]: Adding service 'ntp' to default zone. Apr 23 10:48:10 localhost program[6875]: Adding port '30083/tcp' to default zone. Apr 23 10:48:10 localhost program[6875]: Adding port '9090/tcp' to default zone. Apr 23 10:48:10 localhost program[6875]: Adding port '8080/tcp' to default zone. Apr 23 10:48:10 localhost program[6875]: Return code: 2
請在下面找到解決此問題的詳細資訊,根據官方文件
A minimal installation's %packages section which will also configure the firewall will look similar to the following: %packages @Core authconfig system-config-firewall-base
在我的情況下
authconfig
失踪了。其次也遵循@GracefulRestart 的建議以獲得正確的語法
我相信您必須為要添加到防火牆的每個服務傳遞一次服務選項:
firewall --enabled --service=ssh --service=glusterfs --service=tftp --service=ntp
我不記得您是否可以在 kickstart 中使用 bash 大括號擴展,但它看起來與您最初擁有的很接近:
firewall --enabled --service={ssh,glusterfs,tftp,ntp}