CentOS7の標準ファイアウォール「firewalld」についてです。
FirewallDのマニュアルは以下です。
firewalldのファイルは「/usr/lib/firewalld/」に有ります。
icmptypes services zones
中にはICMPタイプ、サービス、ゾーンが有ります。
後からサービスやゾーンを上記に加えたい場合はこちらでは無く
「/etc/firewalld/」の方で加えます。
本ページの目次
「ファイアウォール設定」は「アプリケーション」→「諸ツール」→「ファイアウォール」
に有ります。コマンド「firewall-config」でも呼び出せます。
”設定”には「実行時」と「永続(コマンドで言うと --permanent)」の2つが有ります。
タブには「ゾーン」と「サービス」が有り、「ゾーン」タブにはマスカレード設定やポート転送
の設定、ICMPのフィルタの設定、高度なルールが有ります。
高度なルール
「サービス」タブには、ポートとプロトコル、モジュール、送信先が有ります。
firewall-cmd --state
running
または、
または
※停止はstop、再起動はrestart
※動的に反映されます。
※このコマンドでは接続は切れます。ファイアウォールを含む障害調査などに
おいてのみ使用すること。
systemctl -a | grep firewalld
firewalld.service loaded active running firewalld - dynamic firewall daemon
systemctl is-enabled firewalld
systemctl enable firewalld
従来からのiptablesとは違い、ネットワーク機器(juniper SSGやpaloalto PA等)と
同様にゾーンをインターフェース(や送信元IPアドレス)に紐付ける形になりました。
※CentOS7ではiptablesは起動していません。
また、firewalldとの併用は出来ません。
「ファイアウォールの設定」やコマンド「firewall-cmd --list-all-zones」にて
確認可能です。
最初から9個のゾーンが有ります。
詳細はfedora FirewallD/jp(日本語マニュアル)に
掲載されています。
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp
high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd
ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn
pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius
rpc-bind samba samba-client smtp ssh telnet tftp tftp-client
transmission-client vnc-server wbem-https
amanda-client.xml ipp-client.xml mysql.xml rpc-bind.xml
bacula-client.xml ipp.xml nfs.xml samba-client.xml
bacula.xml ipsec.xml ntp.xml samba.xml
dhcp.xml kerberos.xml openvpn.xml smtp.xml
dhcpv6-client.xml kpasswd.xml pmcd.xml ssh.xml
dhcpv6.xml ldap.xml pmproxy.xml telnet.xml
dns.xml ldaps.xml pmwebapi.xml tftp-client.xml
ftp.xml libvirt-tls.xml pmwebapis.xml tftp.xml
high-availability.xml libvirt.xml pop3s.xml transmission-client.xml
http.xml mdns.xml postgresql.xml vnc-server.xml
https.xml mountd.xml proxy-dhcp.xml wbem-https.xml
imaps.xml ms-wbt.xml radius.xml
dns.xmlを見てみました。ポート番号が記載されていました。
DNSはudp/53とtcp/53が記載されていました。
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>DNS</short>
<description>The Domain Name System (DNS) is used to provide
and request host and domain names. Enable this option,
if you plan to provide a domain name service (e.g. with bind).</description>
<port protocol="tcp" port="53"/>
<port protocol="udp" port="53"/>
</service>
ipsec.xmlを見てみました。
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>IPsec</short>
<description>Internet Protocol Security (IPsec) incorporates security for network transmissions directly into the Internet Protocol (IP). IPsec provides methods for both encrypting data and authentication for the host or network it sends to. If you plan to use a vpnc server or FreeS/WAN, do not disable this option.</description>
<port protocol="ah" port=""/>
<port protocol="esp" port=""/>
<port protocol="udp" port="500"/>
</service>
永続的な設定とする場合は
を付けます。--permanentを付けない場合は、
OSの再起動などで設定が消えます。
まずは1番よく使用する、サービスまたはポートの追加方法です。
初期設定ではゾーン「public」に全てのインターフェースが入っていました。
firewall-cmd --get-default-zone
public
firewall-cmd --get-active-zones
※「--change」ではありません。
firewall-cmd --change-interface=インターフェース名 --zone=ゾーン名
firewall-cmd --list-service --zone=ゾーン名
firewall-cmd --zone=ゾーン名 --query-service=サービス名
例:firewall-cmd --zone=public --query-service=https
no
また、CentOS7での従来からのiptablesを利用する方法は
以下のページに記載しました。