|> Weeeeeeb

どんどんドーナツどーんと行こう!(10万円山さん)

Firewalldを使った細かい設定

お世話さまです。超おひさです。 最近はインフラの移設を行っておりました。 試みとしてCentOS7.1を使ったので、その備忘録です。

Firewalld と iptables

CentOS7からfirewallを制御するパッケージが増えました。 それがFirewalldです。 Firewalldは簡単に説明すると、iptablesをラップしたものです。

iptablesと具体的に異なる部分は、NIC毎に異なる設定が出来るようになったことです。

前述のとおりiptablesをラップしているため、上記2つのパッケージを併用することは出来ません。

今回のインフラの移設では、このFirewalldを使用してIPやポートの制限などを行いました。ここで躓いたのが細かい設定の仕方がわかりづらく(というよりも記事が少ない)、少々手こずりました。

# 1分間に60回まで接続を受け入れる設定
# firewall-cmd --permanent --add-rich-rule='rule family="ipv4"
 destination address="192.168.0.96/24" service name="dns" accept limit value="60/m"'

追記しておきます↑

以上です。 設定自体は簡単なんだけど、なかなか設定の仕方が見つからなくて、困っていたので、将来自分が困った時用に記事を書いてみました。

気になること

--directで指定したルールは--permanentは付けられません。つけようとすると怒られてしまいます。

推測ですけど、Firewalldはiptablesをラップしているけど、--directの時は直接iptablesに記述していたりするんじゃないだろうか。

だから、Firewalldのオプションの--permanentは受け付けなかったりするんじゃないだろうか。だからこそ、

 # firewalld --reload

しても--directで設定したルールは残ったままになっているんじゃないだろうか。 そこ気になるのだが、では、どのタイミングだとルールが消失するんだろう。OSの再起動の時だろうか。

OSするような機会が今後の運用等であるため正直こわい。 あるとすれば、OSの再起動で消失する。または消失しない。 はたまた

 # iptables --save

で保存されたりしてw