マイコンピュータにはデフォルトのポリシーがあります。
iptables -A INPUT -j REJECT #DROP ALL PACKETS TO INPUT CHANNEL
INPUT チャンネルがブロックされました。今、インターネットアクセスなどの特定のサービスのみを許可したいと思います。では、どのルールを追加する必要がありますか?ポート80はHTTP用なので、次のようにポートを許可してみました。
iptables -A INPUT -p tcp --dport 80 ACCEPT
しかし、それはうまくいきませんでした。どうすればいいか教えてください。
答え1
iptables
ルールは順次です。つまり、一致する最初のルールが実行されます。 ACCEPT、DROP、REJECT などのルールは端末ルールであるため、パケットはチェーンに移動しなくなります。-A
方法追加。だからあなたがすることは
- すべて合わせて拒否します。
- accept tcp port 80 # すべてがそこで止まるので、ここには届かないでしょう^
残念ながら、TCPポート80はすべての一部であるため、2番目のルールには到達できません。INPUT
チェーンを更新し、ルールの-F
実行順序を逆にします。私も読むことをお勧めしますステートフルファイアウォールの設計に関するDan Robbinsの記事これはGentoo 2.4カーネルにのみ適用されません。