CentOS7.9のFirewalldエラーの確認

過去の記事を見ていたら、2年以上前に「CentOS7.7 Firewalld Error : nf_conntrack」で対処したまま放置し忘れていたので、再度確認してみた。

◆現状確認

1行目:バージョンの確認

1行目:稼働状況確認

1行目:firewalldのログの確認
2022/9/26の時点でもエラーや警告は出力していたのを確認

◆バージョン変更

過去の記事でバージョンをダウングレードしていたのを「0.6.3」バージョンに戻します。
その際に、編集した「yum.conf」の自動アップデート設定をコメントアウトします。

6行目:firewalldのアップデート除外設定をコメントアウト

・利用可能バージョンの確認

1行目:firewalldの利用可能なパッケージを確認

・インストール

1行目:firewalldのインストール

◆確認

1行目:firewalldサービスの再起動

1行目:バージョンの確認

1行目:稼働状況確認

1行目:firewalldサービスのステータスを確認
4行目:稼働状態も「active (running)」を確認
11行目以降:実行ログでは、警告やエラーが出力されているのを確認

◆原因調査

・カーネルモジュール

エラーが出力されているファイル「nf_conntrack_helper」の確認

1行目:ログで示されているディレクトリを確認したが、ログのとおり存在しない

色々調べてみると、参考になる記事を見つけました。
Kagoya Cloud OpenVZではFirewalldが使えない件

このサーバもKAGOYA CLOUD VPSOpenVZを利用していますが、OpenVZは、コンテナ型のVPSのためホストOSのカーネルとは共有するため、カーネル操作ができないようになっています。
そのため、カーネルモジュールである「nf_conntrack」の読込等に失敗しているようです。

併せて、カゴヤ・ジャパンのサポートセンターページを確認してみると、「iptablesの設定」というOpenVZのマニュアルページを見つけました。
その中に、「OpenVZ ではセキュリティ対策のため、インスタンス作成時から iptables を設定しています。」と書いてあります。

・AllowZoneDrifting

「AllowZoneDrifting」は、ゾーンドリフトという複数のゾーンに渡って許可するように設定するパラメータです。
デフォルトでは設定値は「yes」で有効となっています。

1行目:firewalldログの再確認
2行目:AllowZoneDriftingの警告

ログにあるように、無効化します。

1行目:「firewalld.conf」設定ファイルの編集
14行目:設定値を「no」に変更

1行目:firewalldサービスの再起動
2行目:firewalldサービスのステータス確認
AllowZoneDriftingの警告ログが消えたのが確認できる

・ipset

「ipset」の設定については、実施できるが「nf_conntrack」と同様にカーネルモジュールであるため、OpenVZ環境では利用できないようです。

・ebtables

「ebtables」は、ブリッジファイアウォール用のフィルタリングツールでカーネルモジュールの「bridge-netfillter」と併せて使用するため、これもOpenVZ環境では利用できないようです。

◆対処

「ipset」及び「ebtables」は、「firewalld」をインストールした際の依存関連でインストールされました。
利用できないので、これらを「yum remove」でアンインストールしようとしましたが、当然、依存関連で「firewalld」もアンインストールされてしまいますので出来ません。

しかし、前回のエラーが発生した時とは違い、カーネルモジュール関連の設定が動作しないだけで「firewalld」のサービス自体は起動も出来て動作しているようなのでこのまま様子を見ようと思います。

問題が発生するようなら、OpenVZのマニュアル通り、「iptables」に切り替えようと思います。
結局それが、一番問題がない気がします…

いいね! & シェア お願いします。

コメントは受け付けていません。