テスト構築中の Ubuntu Linux server にファイヤーウォールを入れようとして、早速トラブル。
そもそもインストール直後にファイヤーウォールが動いているのかどうかさえ不明。検索してみると、Linux の標準ファイヤーウォールは iptables らしい。ファイヤーウォールが使えるのかどうかを調べるために 「iptables -L」 で確認してみると、、、、、エラー。
# iptables -L modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/3.13.0-51-generic/modules.dep.bin' iptables v1.4.21: can't initialize iptables table `filter': Table does not exist (do you need to insmod?) Perhaps iptables or your kernel needs to be upgraded.
何これ?
iptables コマンドは入っているものの、ファイヤーウォールの状態がどうなっているのかがわからない!
検索してみたところ、同様のエラーが出現して解決している例を発見。エラーが出ているモジュールが少し異なるものの、これを再インストールして解決したそうな。ということで、次のコマンドを実行しました。
# apt-get install --reinstall linux-image-3.13.0-51
クリティカルなモジュールを入れ替えたようなので、ここでリブート。
そのあとで、再度チェックしてみると。
# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
今度は無事に表示されましたので、ファイヤーウォール関係のテストを始められそう。
しかし、なぜインストール直後なのに、ファイルが壊れたんだろう?と、思い返すと、先日、メモリを増設しようとしてトラブったことと影響がありそうです。aptitude を使っているときにも突然リブートが発生したりしましたからね。