CentOSマシンで複数の異なるポート(範囲外)を開く必要があります。
私はfirewall-cmd
でポートを開く方法を知っていますが、40以上のポートを開くのは面倒です。
すべての開いているポートを1か所で定義できる構成ファイルはありますか?悲しいことに、これについては何も見つかりませんでした。
必要なすべてのポートを含むxmlファイルからサービスを定義し、そこからサービスを追加して有効にすることができます。次のようにservice.xmlファイルを作成します。
<?xml version="1.0" encoding="utf-8"?>
<service>
<port port="port1" protocol="proto1"/>
<port port="port2" protocol="proto2"/>
<port port="port3" protocol="proto3"/>
<port port="port4" protocol="proto4"/>
</service>
新しいサービスを追加:
# firewall-offline-cmd --new-service-from-file=service.xml --name=My_Service
Firewall-cmdをリロードします。
# firewall-cmd --reload
次に、サービスを追加します。
# firewall-cmd --add-service My_Service
あなたはいつでも小さなスクリプト/ワンライナーを作ることができます:
#!/bin/bash
for i in 80 443 22 123 21 1337 31337
do
firewall-cmd --zone=public --add-port=${i}/tcp
done
これらの開いているポートがたとえば2379-2385の範囲内にある場合は、次のように実行できます。
firewall-cmd --zone=zone_name --add-port=2379-2385/tcp
永続的にするには、最後に--permanent
オプションを追加します。