#author("2022-05-13T09:36:15+09:00","default:yakumo_murakami","yakumo_murakami")
[[パソコン汎用]]
firewall-cmdの使い方をまとめてみた。~
環境は、たまたまあったRHEL8.2。
* 使ったコマンド [#m5beffaa]
# firewall-cmd --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
上の情報からわかること。
- ping等は通る。
- sshも入れる。
* 設定していく。 [#a6e8215b]
** sshサービスを消す。 [#u1a599ac]
# firewall-cmd --permanent --remove-service=ssh
** ssh専用のゾーンを作る。 [#ec4187e3]
# firewall-cmd --permanent --new-zone=SSH01
** IPを設定 [#e09c62be]
- クライアントは192.168.1.0のセグメントにいる。
- また、特別なIP(***.***.***.***)をピンポイントでひとつ許可したい。
- --permanent をつけないと、即時反映されるけど再起動やreloadで抜け落ちてしまう。
# firewall-cmd --permanent --zone=SSH01 --add-source=***.***.***.***
# firewall-cmd --permanent --zone=SSH01 --add-source=192.168.1.0/24
** サービスを該当ゾーンに登録。 [#fbb36fd2]
- IPを許可するだけでは、具体的にどこを許可するのかわからない。
- sshサービスを登録すると、必要なとこを開けてくれる。
- (--port=22/tcp みたいに開ける事もできるらしいが試してない)
# firewall-cmd --permanent --zone=SSH01 --add-service=ssh
** --permanent で設定したやつの恒久的な反映 [#l8edee4e]
# firewall-cmd --reload
** 設定表示 [#c2142f77]
# firewall-cmd --get-active-zones
# firewall-cmd --list-all --zone=sshArnsible
** トラブルその他 [#y5fd8c00]
*** 赤字で何か動いてないといわれるだけで何できない。 [#ne2e6c7e]
たぶんですが、firewalldが動いてないのでは?
*** IP設定したのにsshアクセスできない。 [#p82a0806]
- --add-services=ssh してますか?
- firewall-cmd --list-all --zone=SSH01 してみて、services: が空欄になってないか確認する。
- (ポート番号やプロトコルを指定した場合は、その該当欄を確認)
*** 消す時は? [#ue0ea11d]
- firewall-cmd --permanent --zone=SSH01 --remove-source=192.168.1.0.0/24
- SSH01.xml を直接いじったり削除する。
- そして --reload
* 設定されたデータは以下にあった。 [#i6f8b501]
# cd /etc/firewalld/zones
# ls
public.xml public.xml.old SSH01.xml SSH01.xml.old
#