LinuxのFirewalld

4751 ワード

RHEL 7は複数のファイアウォール管理ツールが混在するシステムで、Firewalldダイナミックファイアウォールマネージャサービス(Dynamic Firewall Manager of Linux systems)は現在デフォルトのファイアウォール管理ツールであり、コマンドライン端末とグラフィックスインタフェースを備えた構成ツールであり、Linuxコマンドに慣れていない学生でも素早くアクセスできます.
一般的なzone領域名およびアプリケーションは、次の表(デフォルトはpublic)で表示されます.
領域
デフォルト・ルール・ポリシー
trusted
すべてのパケットを許可します.
home
出力トラフィックパケットに関連するかssh,mdns,ipp-client,samba-clientおよびdhcpv 6-clientサービスがない限り、流入パケットを拒否します.
internal
ホーム領域に等しい
work
出力トラフィックパケットに関連付けられているかsshでない限り、ipp-clientとdhcpv 6-clientサービスは許可されます.
public
dhcpv 6-clientサービスは、出力トラフィックパケットに関連するかsshでない限り、流入するパケットを拒否します.
external
出力トラフィックパケットに関連付けられているかsshサービスで許可されていない限り、流入したパケットは拒否されます.
dmz
出力トラフィックパケットに関連付けられているかsshサービスで許可されていない限り、流入したパケットは拒否されます.
block
出力トラフィックパケットに関連付けられていない限り、流入するパケットを拒否します.
drop
出力トラフィックパケットに関連付けられていない限り、流入するパケットを拒否します.
Firewall共通パラメータ(Tabキーで次の長いフォーマットパラメータを揃えることができます)
パラメータ
さぎょう
--get-default-zone
デフォルトの領域名をクエリーします.
--set-default-zone=
デフォルトの領域を設定し、永続的に有効にします.
--get-zones
使用可能な領域を表示します.
--get-services
あらかじめ定義されたサービスが表示されます.
--get-active-zones
現在使用中の領域とNIC名が表示されます.
--add-source=
将来、このIPまたはサブネットからのトラフィックは、指定された領域に導かれる.
--remove-source=
このIPまたはサブネットのトラフィックは、指定された領域に移動しません.
--add-interface=
将来的には、ネットワークカードからのすべてのトラフィックが指定された領域に導かれます.
--change-interface=
ネットワークカードをゾーンに関連付けます.
--list-all
現在の領域のNIC構成パラメータ、リソース、ポート、サービスなどの情報が表示されます.
--list-all-zones
すべての領域のNIC構成パラメータ、リソース、ポート、サービスなどの情報が表示されます.
--add-service=
デフォルト領域を設定すると、サービスのトラフィックが許可されます.
--add-port=
デフォルト領域でポートのトラフィックを許可します.
--remove-service=
デフォルト領域を設定すると、サービスのトラフィックは許可されません.
--remove-port=
デフォルト領域では、ポートのトラフィックが許可されなくなります.
--reload
「永続的に有効」の構成規則を直ちに有効にし、現在の構成規則を上書きします.

1.Firewalldサービスで現在使用されているzone領域を表示します.
[root@linuxprobe ~]# firewall-cmd --get-default-zone
public

2.eno 167777728ネットワークカードのFirewalldサービス内のzoneエリアを問い合わせる:
[root@linuxprobe ~]# firewall-cmd --get-zone-of-interface=eno16777728
public

3.Firewalldファイアウォールサービスのeno 167777728 NICのデフォルトエリアをexternalに変更し、再起動してから有効にします.
[root@linuxprobe ~]# firewall-cmd --permanent --zone=external --change-interface=eno16777728
success
[root@linuxprobe ~]# firewall-cmd --get-zone-of-interface=eno16777728
public
[root@linuxprobe ~]# firewall-cmd --permanent --get-zone-of-interface=eno16777728
external

4.Firewalldファイアウォールサービスの現在のデフォルトゾーンをpublicに設定します.
[root@linuxprobe ~]# firewall-cmd --set-default-zone=public
success
[root@linuxprobe ~]# firewall-cmd --get-default-zone 
public

5.Firewalldファイアウォールサービスの応急状況モードを起動/閉鎖し、すべてのネットワーク接続を遮断する(リモート制御サーバーの場合は慎重に使用してください):
[root@linuxprobe ~]# firewall-cmd --panic-on
success
[root@linuxprobe ~]# firewall-cmd --panic-off
success

6.public領域におけるsshとhttpsサービス要求トラフィックが許可されているかどうかを問い合わせる.
[root@linuxprobe ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@linuxprobe ~]# firewall-cmd --zone=public --query-service=https
no

7.Firewalldファイアウォールサービスにおけるhttpsサービスの要求トラフィックを永続的に許可し、現在すぐに有効にする.
[root@linuxprobe ~]# firewall-cmd --zone=public --add-service=https
success
[root@linuxprobe ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@linuxprobe ~]# firewall-cmd --reload
success

8.Firewalldファイアウォールサービスのhttpサービスの要求トラフィックを永続的に拒否し、現在すぐに有効にします.
[root@linuxprobe ~]# firewall-cmd --permanent --zone=public --remove-service=http 
success
[root@linuxprobe ~]# firewall-cmd --reload 
success

9.Firewalldファイアウォールサービスにおける8080と8081の要求トラフィックを許可するが、現在有効になっている場合に限られる.
[root@linuxprobe ~]# firewall-cmd --zone=public --add-port=8080-8081/tcp
success
[root@linuxprobe ~]# firewall-cmd --zone=public --list-ports 
8080-8081/tcp

10.本機888ポート番号にアクセスした要求トラフィックを22ポート番号に転送し、現在と長期の両方が有効であることを要求する.
トラフィック転送コマンドフォーマット:firewall-cmd--permanent--zone=--add-forward-port=port=:proto=:toport=:toaddr=
[root@linuxprobe ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
success
[root@linuxprobe ~]# firewall-cmd --reload
success

11.Firewalldファイアウォールサービスでは、192.168.10.0/24セグメントからのすべてのユーザーがネイティブsshサービス(22ポート)にアクセスすることを拒否するリッチルールを構成します.
[root@linuxprobe ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
success
[root@linuxprobe ~]# firewall-cmd --reload
success