iptables-restore でバッファーオーバーフローが発生する
SERVER
iptables の設定復元時に buffer overflow が発生する
CentOS 6.0 で /etc/sysconfig/iptables や /etc/sysconfig/ip6tables の設定を編集して、service iptables restart 等を実行したときに、次のようなエラーが発生して、処理が中断されてしまうことがありました。
iptables: ファイアウォールルールを適用中: *** buffer overflow detected ***: iptables-restore terminated
/etc/init.d/iptables: line 179: 3651 アボートしました$IPTABLES-restore $OPT $IPTABLES_DATA
これは /etc/sysconfig/iptables や /etc/sysconfig/ip6tables の中で独自のチェインを定義していて、そのチェインの名前が 28 文字よりも多い文字数で構成されていたことが原因でした。
チェインの名前は 28 文字以内に抑えておかないと、それを -j でジャンプした時にオーバーフローが発生してしまう様子です。