CentOS 7でいくつかのポートを開こうとしています。
以下を使用してポートを開くことができます。
firewall-cmd --direct --add-rule ipv4 filter IN_public_allow 0 -m tcp -p tcp --dport 7199 -j ACCEPT
以下を確認して、iptables -L -n
設定が正常に完了したことを確認します。
Chain IN_public_allow (1 references)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:7199
残念ながら、これらの変更を永久に適用することはできません。次のオプションを使用しても--permanent
:
firewall-cmd --direct --permanent --add-rule ipv4 filter IN_public_allow 0 -m tcp -p tcp --dport 7199 -j ACCEPT
この問題を解決する方法を知っていますか?このオプションが正しく機能しないのはなぜですか--permanent
?
答え1
--direct
注文は永久にできません。対応する領域コマンドを使用します。
sudo firewall-cmd --zone=public --add-port=7199/tcp --permanent
sudo firewall-cmd --reload
結果を確認してください。
sudo firewall-cmd --zone=public --list-all
答え2
次のこともできます。
sudo firewall-cmd --zone=public --add-port=7198/tcp sudo firewall-cmd --zone=public --add-port=7199/tcp sudo firewall-cmd --runtime-to-permanent
...これにより、現在のファイアウォール設定が永久に適用されます。
答え3
多くの方法がありますが、今日はここに記載されていない方法を紹介します。
# firstly run it without --permanent
sudo firewall-cmd --zone=public --add-port=7199/tcp
# then run it again with adding --permanent
sudo firewall-cmd --zone=public --add-port=7199/tcp --permanent
有効でなければなりません