CentOS7

firewall-cmd

[root@localhost ~]# systemctl start firewalld
起動中の確認[root@localhost ~]# firewall-cmd --state
有効サービス[root@localhost ~]# firewall-cmd --list-all
起動[root@localhost ~]# systemctl start firewalld
停止[root@localhost ~]# systemctl stop firewalld
再起動[root@localhost ~]# systemctl restart firewalld
zoneの設定を確認[root@localhost ~]# firewall-cmd --get-active-zones
設定を反映[root@localhost ~]# firewall-cmd --reload
サービス名称の一覧[root@localhost ~]# firewall-cmd --get-services
プロトコルとポート番号[root@localhost ~]# firewall-cmd --info-service=pop3
許可サービス追加[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=pop3
許可サービス削除[root@localhost ~]# firewall-cmd --permanent --zone=public --remove-service=pop3
許可ポート追加[root@localhost ~]# firewall-cmd --add-port=10000/tcp --zone=public --permanent
許可ポート削除[root@localhost ~]# firewall-cmd --remove-port=10000/tcp --zone=public --permanent

–permanent は、変更を継続的に適用するためのオプションです。OS再起動後も設定内容は持続します。 –zone=public は、ゾーンとしてpublicを使う設定です。指定できるゾーンについてはdmzやexternalなど何種類かありますが、デフォルトのpublicだけでとりあえずは事足りますので、このまま決まったお約束のオプションだと思って差し支えないでしょう。最後の –add-service=pop3 で、pop3サービスが追加されます。

ゾーンについて

初期状態で9つのゾーンが用意されています。(※自分でもゾーンを新規に作成することもできます。)

下記は初期に定義されてるゾーンの一覧です。

ゾーン通信許可サービス説明
blockなし 外部からの接続はすべて遮断設定変更不可
遮断時は「CIMP Pohibited」を返し、内部からの通信時は戻りの通信も許可される
dmzsshdmz用に定義されたゾーン
dropなし 外部からの通信はすべて遮断設定変更不可
内部からの通信は送信できるが、外部からの戻りの通信は遮断されるため、結果的にすべての通信が出来ない
externalsshIPマスカレード有効でルータなど外部ネットワークとの接続で使用するために定義されたゾーン
homedhcpv6-client
ipp-client
mdns
samba-client
ssh
自宅などで使用するために定義されたゾーン
internaldhcpv6-client
ipp-client
mdns
samba-client
ssh
内部ネットワークで使用するために定義されたゾーン
publicdhcpv6-client
ssh
公共の場所で使用するために定義されたゾーン
trustedすべての通信を許可設定変更不可
workdhcpv6-client
ipp-client
ssh
職場などの業務エリアで使用するために定義されたゾーン

プロトコルとポート番号

サービス名プロトコルとポート番号
httpTCP 80
httpsTCP 443
pop3(メール受信)TCP 110
pop3s(暗号化通信によるメール受信)TCP 995
imap (メール受信などの操作)TCP 143
smtp(メール送信)TCP 25
smtps(暗号化通信によるメール送信)TCP 465
submission-port(op25b)TCP 587
ssh、sftpTCP 22

特定アドレスからのSSHを許可する

[root@localhost ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="xxx.xxx.xxx.xxx" port protocol="tcp" port="22" accept"
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="xxx.xxx.xxx.0/24" port protocol="tcp" port="22" accept"

特定アドレスからのSMTPをドロップする

[root@localhost ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="61.107.0.0/16" port protocol="tcp" port="25" drop"

特定アドレスからのSMTPを拒否する

[root@localhost ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="61.107.0.0/16" port protocol="tcp" port="25" reject"

信頼するアドレスを追加する

[root@localhost ~]# firewall-cmd --zone=trusted --permanent --add-source=xxx.xxx.xxx.xxx/24

信頼するアドレスを削除する

[root@localhost ~]# firewall-cmd --zone=trusted --permanent --remove-source=xxx.xxx.xxx.xxx/24

特定IPアドレスからのアクセスをドロップする

[root@localhost ~]# firewall-cmd --zone=drop --permanent --add-source=181.214.206.233

一度拒否したIPアドレスの設定を解除する

[root@localhost ~]# firewall-cmd --zone=drop --permanent --remove-source=192.168.0.0/24

REJECTやDROPのログ出力

[root@localhost ~]# firewall-cmd --set-log-denied <option>

option

実行サンプル

[root@localhost ~]# firewall-cmd --set-log-denied off ←ログ出力停止

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-07-13 (月) 08:57:03