Firewalldの受信制限、送信制限について
はじめまして
投稿させて頂きます。
Redhat7.XのFirewalld の仕様と操作を確認しているのですが、受信制限と送信制限
を設定するにあたり、iptablesとは違った手法になるのかなと考えています。
具体的に受信制限、送信制限の定義は
①Firewalldのサーバでは受信、送信共に対象をポートとIPアドレスで対象を制限
例としてSSH、HULFTなどを2台のサーバで異なる通信が行えるようにします。
通信ではSSH:TCP 22 ・ HULFT:TCP30000
③SSH、HULFTは各々NICを2枚、ZONEも2種類用意して3台のサーバと通信させる。
②受信、送信共に使用しないポートは全て閉じる。
この3つの条件を実現するにはどのように設定したらよいのか教えてください。
下記に具体的に設定している設定を記載いたします。
ZONEは以下の3点を設定
ZONE名:GYOMU : NIC1枚目を所属 (NICのIPは192.168.100.1/24)
ZONE名:TENSO : NIC2枚目を所属 (NICのIPは10.1.1.1/24)
受信、送信制限をしているサーバは2台用意しています。用途とIPは以下の通りです。
サーバ1台目:SSH/SCP接続 ・・・ IP:192.168.100.200
サーバ2台目:HULFT接続 ・・・ IP:10.1.1.200
受信制限はrich rulesで設定。
(1) firewall-cmd --permanent --zone=GYOMU --add-rich-rule="rule family="ipv4" source address="192.168.100.200/32" port protocol="tcp" port="22" accept"
(2) firewall-cmd --permanent --zone=TENSO --add-rich-rule="rule family="ipv4" source address="10.1.1.200/32" port protocol="tcp" port="22" accept"
送信制限はdirect設定しかできないのではないかと思い、下記のコマンドを試してみました。
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT_direct 0 -p tcp -d --dport 22 192.168.100.200 -j REJECT
検証結果は上記の制限が有効にならず、またTCP/UDPも1-65535で他サーバへの接続も出来る様子なので、おそらく構文的に間違えているのかなと考えています。
送信自体、デフォルトでTCP/UDP 1-65535は全て通信可能というのがFirewalldの仕様の様子ですが、
できれば、必要な通信プロトコル、ポート、宛先で制限をかけることは可能であれば、その方法を教えてください。
ZONE毎に設定するのか、それともZONE全体にdirect設定は適用されるのかも正直、使いこなせていないので
よろしくお願いします。
Responses