DebianのLinuxでのSSH以外のすべてのトラフィックをブロックするiptablesの設定方法?

現在のiptablesの設定を確認してください
iptables -S

次のようにあなたの出力は空でなければなりません…

  -P INPUTがACCEPT
  -P FORWARD ACCEPT
  -P OUTPUTはACCEPT

 

あなたのiptablesのは、余分なポートがあなたのマシン上で開いている可能性があり、上記のように空でない場合. この場合, テーブルをフラッシュします, タイプ iptables -F, その後、次のように入力してiptablesの設定を確認してください iptables -S.

 

ルートであることを確認します

su
 

入力し、次のような構成は、一度に1行コマンド. エントリの順序は以下のように同じであることを確認してください, そうでなければ、SSHをブロックすることがあります.

   iptablesの-A INPUT -i loのACCEPT -j
   iptablesの-A INPUT -pのtcp -mののtcp --dport 22 -jはACCEPT
   iptablesの-A OUTPUT -o LO -j ACCEPT
   iptablesの-A OUTPUT -pのtcp --sport 22 -M状態はACCEPT -j ESTABLISHED --state
   iptablesのは、INPUTのDROPを-P
   iptablesの-P OUTPUT DROPは、

上記で, LOは、いくつかのアプリケーションで必要とされており、それなしでいくつかのアプリケーションが破損する可能性がループバック・アダプタのあります.

 

また、出力へのすべてのトラフィックを許可することができます. 従って, 次の規則は、上記の代わりに適用されます…

   iptablesの-A INPUT -i loのACCEPT -j
   iptablesの-A INPUT -pのtcp -mののtcp --dport 22 -jはACCEPT
   iptablesのは、INPUTのDROPを-P

 

あなたが確立し、関連パケットを許可したい場合は、次の規則が適用されます. これがなければ、あなたはapt-getとgitの要求を使用することができません. 代わりに、上記の次を使用します 2 ルールセット.

   iptablesの-I INPUT -m状態が--state ESTABLISHED,関連-j ACCEPT
   iptablesの-A INPUT -i loのACCEPT -j
   iptablesの-A INPUT -pのtcp -mののtcp --dport 22 -jはACCEPT
   iptablesのは、INPUTのDROPを-P

あなたは、あなたのシステムのための最も適切なルールを決めたら, あなたのルールを保存する必要があります, そうでない場合は、再起動後に保持されません

ファイルへのあなたのルールを保存

iptables-save > /etc/iptables.conf

上記のファイルで、あなたのルールが保存されます. その後、再起動するたびに、あなたのルールをロードする必要があります

nano /etc/rc.local

ファイルに次の行を追加します。, 上記 exit 0

iptables-restore < /etc/iptables.conf
 

下記のルールにはいくつかの意味があります。...

パケットが両方向にパケットを見た接続に関連付けられていることが確立意味

パケットが新しい接続を開始することを意味RELATED, しかし、既存の接続に関連付けられています, そのようなFTPデータ転送など, またはICMPエラー.