====== 05 CentOS7 firewalld ======
===== アクティブゾーンの確認 =====
# firewall-cmd --get-active-zones
public
interfaces: ens160
===== アクティブゾーンの確認 =====
# firewall-cmd --get-default-zone
public
===== 任意のゾーンのFW設定確認 =====
# firewall-cmd --zone=management --list-all
management (active)
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources: 10.15.0.0/16
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
※「--permanent」 オプションを指定することで、恒久的に設定を確認できます。
===== サービス =====
==== サービスの一覧 ====
「/usr/lib/firewalld/services」以下にxmlファイルがあり、ポートを記述してあります。
# ls /usr/lib/firewalld/services/
=== 登録可能なサービス一覧 ===
# firewall-cmd --get-services
==== サービスの追加 ====
# firewall-cmd --add-service=https --zone=public
==== サービス追加(恒久的) ====
# firewall-cmd --add-service=https --zone=public --permanent
※「--permanent」 オプションを指定することで、恒久的に設定します。
==== サービス削除 ====
# firewall-cmd --remove-service=https --zone=public
===== ポート単位 =====
==== 開放 ====
firewall-cmd --add-port=8080/tcp --zone=public --permanent
==== 削除 ====
firewall-cmd --remove-port=8080/tcp --zone=public --permanent
===== ネットワーク単位で許可 =====
新しくzoneを作成する事で可能です。
firewall-cmd --permanent --new-zone=management
firewall-cmd --permanent --zone=management --set-target=ACCEPT
firewall-cmd --permanent --zone=management --add-source=10.15.0.0/16
firewall-cmd --reload
firewall-cmd --get-active-zone
management
sources: 10.15.0.0/24
==== ネットワーク削除 ====
firewall-cmd --permanent --zone=management --remove-source=10.15.0.0/16
==== Nat ====
eth1から入るものをIPマスカレードでeth0から出ていく
firewall-cmd --get-active-zones
firewall-cmd --permanent --zone=internal --change-interface=eth1
firewall-cmd --permanent --zone=internal --add-masquerade
firewall-cmd --permanent --direct --add-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE
firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i eth1 -o eth0 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
firewall-cmd --reload
{{tag>centos7}}