firewalld

CentOS7で導入された。動的にルールを変更できる(iptablesは再起動時に切断発生)。基本的なルールセットであるゾーンという概念があり、デフォルトはpublicゾーン。

ZONEについて

publicだと外向けに必要最小限のポートしか開放していない。

firewall-cmd --list-all-zone
zone名開放ポート利用ケース
publicSSHなど最小限インターネット環境
internalsambaなども解放自宅内などの閉じた環境

起動や有効化など

有効化systemctl enable firewalld
起動systemctl start firewalld
デフォルトゾーン確認firewall-cmd --get-default-zone
デフォルトゾーン変更firewall-cmd --set-default-zone=external

設定確認

設定を見るfirewall-cmd --list-all
すべての定義済み設定を見るfirewall-cmd --list-all-zones
publicの定義済みポートを見るfirewall-cmd --list-ports --zone=public

設定ファイルの場所

/usr/lib/firewalld/services以下にデフォルトのファイルがある。 上書きしたい場合は /etc/firewalld/に同じファイルをコピーする。

ゾーンの操作

サービス一覧firewall-cmd --get-services [--zone=public]
サービス追加firewall-cmd --add-service=http [--zone=public]
ポートの追加firewall-cmd --zone=public --add-port=12220/tcp --permanent
恒久的にサービス追加(この後再起動必須)firewall-cmd --add-service=https --permanent

不正アクセス対策

IP指定で禁止firewall-cmd --zone=drop --permanent --add-source=禁止したいIP

設定ファイル

特定のIPを許可

 <rule family="ipv4">
   <source address="106.154.129.161/32"/>
   <service name="mysql"/>
   <accept/>
 </rule>

拒否

zoneのDropに入れるべし


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS