人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

iptablesを設定しようと思い、下記内容が書いたファイル(iptabels)作成

そしてservice iptables restart と実行したのですが下記のようなエラーが出てしまします。
「iptables ファイアウォールルールを適用中: iptables-restore: line 20 failed [失敗]」
このline 20 というのはCOMMITが書かれている行になります。
iptables -V でバージョンを調べたところ「iptables v1.3.5」でした。
OSはCentOS 5 32bitです。

お手数ですが、どなたかアドバイスいただけないでしょうか??

1319606416
●拡大する

●質問者: enigma0358
●カテゴリ:インターネット
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● JULY

手元の CentOS 5.7 では、正常に動作します。


/etc/sysconfig/iptables の文法上の間違いであれば、COMMIT 以外のところでエラーが発生するはずなので、COMMIT 行でエラーになるのは、基本的には「何か使えない機能を使っている」可能性が高いです。


カーネル再構築後にiptablesでエラー - サラリーマンから起業するリアル

COMMIT で失敗するケースとして、-m で指定しているモジュールが存在していない場合があります。上記のページの方は、自分でカーネルをビルドする時に、これらのモジュールがビルドされていなかったので、ビルドされるように設定変更して再ビルドした、という話です。


ただ、実際に指定されている「state」「tcp」の各モジュールは、通常の CentOS であれば標準で入っているものなので、本来であればエラーにならないはずです。


ちなみに、iptables で -m を使って指定できるモジュールは /lib/iptables の下にあります。state モジュールであれば、libipt_state.so というファイルがモジュールの実体です。


試しに、COMMIT を途中に入れて、その COMMIT 以降の行をコメントアウトしてみる、というのを繰り返すと、原因のヒントが得られるかもしれません。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ