このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/11 15:13
名前: みかみ
URL:
今朝から、突然、メール及び外部からのFTP、SSH接続が不可となって困っております。
調査したところ、特定のポートがiptablesでブロックされていると思われます。

ポートチェック【ポート開放確認】でドメイン及びグローバルアドレスで確認したところ、
以下の様な結果となりました
ポート=80 にアクセスできました
ポート=22 に到達できませんでした
ポート=53 にアクセスできました
ポート=25 にアクセスできました
ポート=443 にアクセスできました
※今までは全て利用可能でした

また、「/etc/rc.d/init.d/iptables stop」で停止すると接続不可のサービスが可能となり、
「/etc/rc.d/init.d/iptables start」で再開するとアクセス不可となりますので
iptablesでブロックされていると認識と思われます。

昨日に深夜に「Tripwire(R) Integrity Check Report」で大量のファイル変更がされている事を
考えますと自動でファイル更新がされたのが原因かもしれません

-------------------------------------------------------------------------------
Section: Unix File System
-------------------------------------------------------------------------------

Rule Name Severity Level Added Removed Modified
--------- -------------- ----- ------- --------
* Tripwire Data Files 0 1 0 0
* Monitor Filesystems 0 7497 4 747
* User Binaries and Libraries 0 0 0 41
Tripwire Binaries 0 0 0 0
* OS Binaries and Libraries 0 1547 0 93
Temporary Directories 0 0 0 0
* Global Configuration Files 0 0 0 7
* System Boot Changes 0 0 0 41
* RPM Checksum Files 0 0 0 14
* OS Boot Files and Mount Points 0 6 0 1
OS Devices and Misc Directories 0 0 0 0
Root Directory and Files 0 0 0 0

Total objects scanned: 100164
Total violations found: 9999


また、今まではそれほど気にしておりませんでしたが、「/var/log/messages」には下記の大量のログが出続けております

3 PROTO=TCP SPT=54201 DPT=20480 WINDOW=0 RES=0x00 ACK RST URGP=0
Jan 11 14:51:35 server kernel: [IPTABLES INPUT] : IN=eth0 OUT= MAC=MACアドレス SRC=94.76.204.102 DST=192.168.1.2 LEN=40 TOS=0x00 PREC=0x00 TTL=64 ID=4974 PROTO=TCP SPT=25747 DPT=20480 WINDOW=0 RES=0x00 ACK RST URGP=0
Jan 11 14:51:35 server kernel: [IPTABLES INPUT] : IN=eth0 OUT= MAC=MACアドレス SRC=125.26.183.84 DST=192.168.1.2 LEN=40 TOS=0x00 PREC=0x00 TTL=64 ID=4975 PROTO=TCP SPT=51442 DPT=6400 WINDOW=0 RES=0x00 ACK RST URGP=0

どの様な対応が必要か教えて頂けますようお願いします

以上、宜しくお願いします
記事編集 編集

Page: | 1 | 2 |

Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/11 22:16
名前: みかみ
URL:
ぴくみんぱぱ様

レスありがとうございます。
先ほどのリンク先のデータを「/root/cidr.txt」に配置して
「./iptables.sh」で実行で宜しいのでしょうか?
「cidr.txt」の上書きはNで実行しても接続できません。

[root@server ~]# ./iptables.sh
ファイアウォールルールを適用中: [ OK ]
チェインポリシーを ACCEPT に設定中filter [ OK ]
iptables モジュールを取り外し中 [ OK ]
gunzip: cidr.txt already exists; do you wish to overwrite (y or n)? n
not overwritten
ファイアウォールのルールを /etc/sysconfig/iptables に保存中[ OK ]
ファイアウォールルールを適用中: [ OK ]
チェインポリシーを ACCEPT に設定中filter [ OK ]
iptables モジュールを取り外し中 [ OK ]
iptables ファイアウォールルールを適用中: [ OK ]
iptables モジュールを読み込み中ip_conntrack_netbios_ns [ OK ]

先ほどのリンク先のデータを「/root/cidr.txt」に配置して
以下もやってみましたが、結果は同じです

/etc/rc.d/init.d/iptables stop
/etc/rc.d/init.d/iptables start

やり方が間違っておりますか?

宜しくお願い致しますm(__)m




>過去のデータでしたら”http://nami.jp/ipv4bycc/”サイトの下部の方に過去のデータのリンクが張ってあります。
>
>過去のデータのリンク先
>http://nami.jp/ipv4bycc/past/
>
>たまにcidr.txtのデータが白紙になっている事があるみたいです(私の経験でおそらく半年以内に3回)。なので、スクリプト内でデータの有無を確認してからiptable.shを実行するか、ファイヤーオールの設定を変えるかなどの対策の必要性を感じています。
>
>すでにスクリプトを変更して対応されている方はいらっしゃるのでしょうか?
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/11 22:41
名前: aki
URL:
例えばポート22番なら
iptables -A INPUT -p tcp --dport 22 -j ACCEPT_COUNTRY

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

25や110もこのようにすればアクセス可能。
SSHは念には念を入れてtcp wrapperで制御した上で鍵認証も必須。





記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/11 22:54
名前: ぴくみんぱぱ
URL:
私も素人に近いのでよくわかりませんが、iptables.shのスクリプトをみるとcidr.txtの位置は"/tmp/cidr.txt"になるのではないでしょうか?間違っていたらすみません。

# ACCEPT_COUNTRY_MAKE関数定義
# 指定された国のIPアドレスからのアクセスを許可するユーザ定義チェイン作成
ACCEPT_COUNTRY_MAKE(){
for addr in `cat /tmp/cidr.txt|grep ^$1|awk '{print $2}'`
do
iptables -A ACCEPT_COUNTRY -s $addr -j ACCEPT
done
}

IPLISTGET(){
# http://nami.jp/ipv4bycc/から最新版IPアドレスリストを取得する
wget -q http://nami.jp/ipv4bycc/cidr.txt.gz
gunzip cidr.txt.gz
# 最新版IPアドレスリストが取得できなかった場合
if [ ! -f cidr.txt ]; then
if [ -f /tmp/cidr.txt ]; then
# バックアップがある場合はその旨をroot宛にメール通知して処理を打ち切る
echo cidr.txt was read from the backup! | mail -s $0 root
exit 1
else
# バックアップがない場合はその旨をroot宛にメール通知して処理を打ち切る
echo cidr.txt not found!|mail -s $0 root
exit 1
fi
fi
# 最新版IPアドレスリストを /tmpへバックアップする
/bin/mv cidr.txt /tmp/cidr.txt
}

akiさんのアドバイスの設定で問題は解決と思います。

この設定内容に関して伺いたいのですが、アクセス国を日本に限定している場合とオープンにした場合での危険度みたいなのは大きく変わると理解した方が良いのですか?それとも鍵認証があれば大差ないと考えてもよいのでしょうか?
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/11 23:56
名前: みかみ
URL:
roor権限で下記の様に投入しましたがアクセスできません

[root@cent ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@cent ~]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@cent ~]# iptables -A INPUT -p tcp --dport 110 -j ACCEPT

http://nami.jp/ipv4bycc/のファイルが更新されたら、
自動的に接続可能となりますでしょうか?



>例えばポート22番なら
>iptables -A INPUT -p tcp --dport 22 -j ACCEPT_COUNTRY
>↓
>iptables -A INPUT -p tcp --dport 22 -j ACCEPT
>
>25や110もこのようにすればアクセス可能。
>SSHは念には念を入れてtcp wrapperで制御した上で鍵認証も必須。
>
>
>
>
>
>
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/12 00:08
名前: みかみ
URL:
何か僕のやり方が悪いのか接続できません。
直接コマンド投入ではないのでしょうか?

root配下で下記を実行しても、空のcidr.txtを持って来て上書きされてしまいます。
./iptables_functions

下記の3つを実行すればいいのでしょうか?

@./tmp/cidr.txt にファイルを置き
A./etc/rc.d/init.d/iptables stop
B./etc/rc.d/init.d/iptables start

以上、宜しくお願い致します




>私も素人に近いのでよくわかりませんが、iptables.shのスクリプトをみるとcidr.txtの位置は"/tmp/cidr.txt"になるのではないでしょうか?間違っていたらすみません。
>
># ACCEPT_COUNTRY_MAKE関数定義
># 指定された国のIPアドレスからのアクセスを許可するユーザ定義チェイン作成
>ACCEPT_COUNTRY_MAKE(){
> for addr in `cat /tmp/cidr.txt|grep ^$1|awk '{print $2}'`
> do
> iptables -A ACCEPT_COUNTRY -s $addr -j ACCEPT
> done
>}
>
>IPLISTGET(){
> # http://nami.jp/ipv4bycc/から最新版IPアドレスリストを取得する
> wget -q http://nami.jp/ipv4bycc/cidr.txt.gz
> gunzip cidr.txt.gz
> # 最新版IPアドレスリストが取得できなかった場合
> if [ ! -f cidr.txt ]; then
> if [ -f /tmp/cidr.txt ]; then
> # バックアップがある場合はその旨をroot宛にメール通知して処理を打ち切る
> echo cidr.txt was read from the backup! | mail -s $0 root
> exit 1
> else
> # バックアップがない場合はその旨をroot宛にメール通知して処理を打ち切る
> echo cidr.txt not found!|mail -s $0 root
> exit 1
> fi
> fi
> # 最新版IPアドレスリストを /tmpへバックアップする
> /bin/mv cidr.txt /tmp/cidr.txt
>}
>
>akiさんのアドバイスの設定で問題は解決と思います。
>
>この設定内容に関して伺いたいのですが、アクセス国を日本に限定している場合とオープンにした場合での危険度みたいなのは大きく変わると理解した方が良いのですか?それとも鍵認証があれば大差ないと考えてもよいのでしょうか?
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/12 02:43
名前: 通りすがり
URL:
私も同じ状況に陥りましたが、下記で対応できました。

cd /root
wget http://nami.jp/ipv4bycc/past/cidr.txt.20100110
mv cidr.txt.20100110 cidr.txt

./iptables-router.sh
上書きはN対応

これで期待通りの動きとなりました。

過去データの中でも20100111は0Byteなので意味ないと思います。
もし、同じ手順を実行済みであれば申し訳ありません…
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/12 05:44
名前: みかみ
URL:
通りすがり様
ありがとうございます
無事、復旧できましたm(__)m


その他の方々も貴重なレスに感謝致しますm(__)m
また、何かございましたら、宜しくお願い致します



>私も同じ状況に陥りましたが、下記で対応できました。
>
>cd /root
>wget http://nami.jp/ipv4bycc/past/cidr.txt.20100110
>mv cidr.txt.20100110 cidr.txt
>
>./iptables-router.sh
>上書きはN対応
>
>これで期待通りの動きとなりました。
>
>過去データの中でも20100111は0Byteなので意味ないと思います。
>もし、同じ手順を実行済みであれば申し訳ありません…
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/01/12 15:26
名前: 管理人
URL:
みかみ様
本スレッド閲覧者様

http://nami.jp/ipv4bycc/から取得したIPアドレスリストと、前回取得して/tmpに保存しておいたIPアドレスリストとの差分が10件を超える場合はiptables設定スクリプトを再実行しないようにしました。

ファイアウォール構築(iptables) http://centossrv.com/iptables.shtml
Linuxルーター構築(rp-pppoe+iptables) http://centossrv.com/linux-router.shtml

参考にしてください。
記事編集 編集
Re: iptablesで突然ブロックされる様になりました このメッセージに返信する
日時: 2010/02/25 15:50
名前: 管理人
URL:
>http://nami.jp/ipv4bycc/から取得したIPアドレスリストと、前回取得して/tmpに保存しておいたIPアドレスリストとの差分が10件を超える場合はiptables設定スクリプトを再実行しないようにしました。
サーバーを長時間停止していた場合等、前回取得して/tmpに保存しておいたIPアドレスリストとの差分が10件を超える理由が明確な場合は、iptables.shを手動で実行してください。
記事編集 編集

Page: | 1 | 2 |

件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -