- ベストアンサー
iptablesの設定でINPUTが制限されない
- iptablesの設定でINPUTが制限されない理由を解説します。
- iptablesを使用して80番ポートのみを開放する方法について説明します。
- iptablesの設定で制限がされずに外部からアクセスが可能な理由を解説します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> iptables -P INPUT DROP > このあたりで閉じたことにはなっていないのでしょうか。 これはテーブルに合致しなかった場合に最後に参照されます。 外部から入ってきたSYNパケットは iptables -A INPUT -p tcp -m state --state NEW -j CKFILTER で CKFILTER テーブルに入ります。 CKFILTER は iptables -A CKFILTER -s 58.6.0.0/17 -j CKFILTERED iptables -A CKFILTER -s 58.6.128.0/17 -j CKFILTERED iptables -A CKFILTER -s 58.7.0.0/16 -j CKFILTERED iptables -A CKFILTER -s 58.14.0.0/15 -j CKFILTERED iptables -A CKFILTER -s 58.16.0.0/16 -j CKFILTERED iptables -A CKFILTER -s 58.17.0.0/17 -j CKFILTERED iptables -A CKFILTER -j ACCEPT となっているため、IPアドレスに合致しないものはすべて ACCEPT されます。 したがって、-P で指定したところまで届きません。 その後の通信は iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT ですべて ACCEPT になります。 ---- 80番のみ開けたい(指定したIP以外ログを取らない)のであれば、以下のようになります。 iptables -A $FILTERNAME -p tcp --dport 80 -j ACCEPT
その他の回答 (1)
- junkUser
- ベストアンサー率56% (218/384)
ここで指定された以外の送信元は iptables -A $FILTERNAME -s 58.6.0.0/17 -j $TARGET iptables -A $FILTERNAME -s 58.6.128.0/17 -j $TARGET iptables -A $FILTERNAME -s 58.7.0.0/16 -j $TARGET iptables -A $FILTERNAME -s 58.14.0.0/15 -j $TARGET iptables -A $FILTERNAME -s 58.16.0.0/16 -j $TARGET iptables -A $FILTERNAME -s 58.17.0.0/17 -j $TARGET これで許可されていますね。 iptables -A CKFILTER -j ACCEPT 基本はポート全閉じで、指定したポートのみ開けてはいかがでしょうか。
補足
iptables -P FORWARD DROP iptables -P INPUT DROP iptables -P OUTPUT DROP このあたりで閉じたことにはなっていないのでしょうか。 iptables -A CKFILTER -j ACCEPT iptables -A CKFILTERED -j LOG --log-prefix "Reject-TCP " iptables -A CKFILTERED -j DROP iptables -A INPUT -p tcp -m state --state NEW -j CKFILTER ここの書き方がまちがっているのでしょうか。。
お礼
>80番のみ開けたい(指定したIP以外ログを取らない)のであれば、以下のようになります。 >iptables -A $FILTERNAME -p tcp --dport 80 -j ACCEPT ありがとうございます。別途ルールを作成するわけですね。 勉強なりました。本当にありがとうございます