鯖とスマフォのことを適当に

鯖と言うのは魚ではなくてサーバーのことです。

iptablesで Can’t open /etc/sysconfig/iptables: Permission denied —

自腹サーバのiptablesを変更したらエラーが出てハマッたのでメモ。
エラー自体はあまり気にしてなかったけど、iptablesが上がらなくなったのでノーガード状態になった。

自腹サーバは3台あります。
1台は国内業者、2台は海外業者です。

まず、国内の鯖のiptablesの設定を変更しました。reloadも問題なし。
結構変更したので残りの2台を手作業でするのも面倒なのでscpしました。(普段は手作業でやってます)
で、iptablesをreloadしたところ以下のエラーが発生([FAILED]の位置がおかしいけど原文表示のまま)

Applying iptables firewall rules: Can’t open /etc/sysconfig[FAILED]s: Permission denied

/var/log/messageには以下のログ
kernel: type=1400 audit(1374380677.276:9): avc: denied { read } for pid=3122 comm=”iptables-restor” name=”iptables” dev=dm-0 ino=4390922 scontext=user_u:system_r:iptables_t:s0 tcontext=user_u:object_r:tmp_t:s0 tclass=file

国内系と海外系では設定が違うのかと思ったがそんなこともない。

エラー出力をググってみた。
http://www.backtrack-linux.org/forums/showthread.php?t=40448
上記を参考にして/proc/sys/net/ipv4/ip_forwardを見たけど同じ。

CentOSの公式フォーラムは
https://www.centos.org/modules/newbb/viewtopic.php?topic_id=10809
なんか違うな~って思って最後まで見ると以下の記載が
selinux write down every error in this file look for avc

マジで!?今さらSELINUX??止めてたと思ってたけど。でも一応確認。
# getenforce
Enforcing    ← SELINUXが起動されてる!?!?
# setenforce 0   ← とりあえず一時停止
# getenforce
Permissive    ← 一時停止になってる
# /etc/init.d/iptables start
Applying iptables firewall rules: [ OK ]  ← iptablesが起動した!
#

この後はSELINUXをdisableしてサーバ再起動を実施。

ただ、不思議なのは昨日から数回設定変更したけどその時はエラー出なかったんですよね。
今日、コピーしたコンフィグを使ったらなったんですよね。ちなみにコンフィグを戻したけど復旧しませんでした。
ということはコピーしたコンフィグをreloadした時にSELINUXが起動した??よくわかりません。


Categorised as: linux | 鯖・サーバ



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.

ERROR: si-captcha.php plugin: GD image support not detected in PHP!

Contact your web host and ask them to enable GD image support for PHP.

ERROR: si-captcha.php plugin: imagepng function not detected in PHP!

Contact your web host and ask them to enable imagepng for PHP.