既存のファイアウォールルールの強化

既存のファイアウォールルールの強化

現在、ルールセットがあります。

net1 (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources: 
  services: http https smtp smtp-submission pop3 pop3s imap imaps ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

ens192では、このポートに接続されているネットワーク上のすべてのIPからのアクセスを許可します。しかし、ポート25への接続を単一のIPに限定したいと思います。

私は「通常」関連行を編集し、ルールを保存するプレーンテキストファイルに「-s xxxx」を追加します。すべてのポートを特定のIPに制限するオプションがあるようです。 1つのIPだけではありません。私は何を見逃していますか?

答え1

理解できない豊富なルールを使用する代わりに、新しいファイアウォール領域を作成できます。ゾーンはネットワークインターフェイスまたはソースアドレスとして定義されます。この場合、ソースアドレスを使用して定義するだけです。

firewall-cmd --new-zone=smtp
firewall-cmd --zone=smtp --add-source=192.0.2.85
firewall-cmd --zone=smtp --add-service=smtp

firewall-cmd --zone=net1 --remove-service=smtp

firewall-cmd --runtime-to-permanent

したがって、SMTP への着信接続は 192.0.2.85 の接続に制限されます。必要に応じて後でIPアドレスを追加または削除することもできます。これは、豊富なルールを使用するよりもはるかに簡単です。

答え2

それを発見。 「豊富なルール」を使用する必要があります。

firewall-cmd --remove-service=smtp
firewall-cmd --add-rich-rule='rule family="ipv4" source address="x.x.x.x" service name="smtp" accept'

関連情報