Ubuntuマシンをルーターとして構成しました。 [〜#〜] nat [〜#〜]構成の手順を以下に示します。
#iptables -F
#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#iptables-save > /etc/network/iptables
次に、このファイルの場所をrc.localに保持しました
#vi /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
/sbin/iptables-restore < /etc/network/iptables
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
exit 0
#reboot
それは動作します、今私はIPアドレスをブロックしたいと思います。これを行うために、次のコマンドを実行しました。
#iptables -A INPUT -s 69.171.229.11 -j DROP
#iptables-save > /etc/network/iptables
#reboot
しかし、それは機能しません。
vi /etc/network/iptables
これで次のようになります:
# Generated by iptables-save v1.4.4 on Tue Feb 14 11:21:16 2012
*nat
:PREROUTING ACCEPT [870:97719]
:POSTROUTING ACCEPT [283:23151]
:OUTPUT ACCEPT [461:28753]
-A POSTROUTING -o eth0 -j MASQUERADE COMMIT
# Completed on Tue Feb 14 11:21:16 2012
# Generated by iptables-save v1.4.4 on Tue Feb 14 11:21:16 2012
*filter
:INPUT ACCEPT [4914:3254723]
:FORWARD ACCEPT [2382:1222521]
:OUTPUT ACCEPT [4010:410041]
-A INPUT -s 98.137.149.56/32 -j DROP
COMMIT
# Completed on Tue Feb 14 11:21:16 2012
IPアドレスをブロックするために何が欠けていますか?
IPがMASQUERADEルールを使用するのをブロックする場合は、そのルールをFORWARD
チェーンではなくINPUT
チェーンに配置する必要があります。
iptables -I FORWARD -s 69.171.229.11 -j DROP
iptables-saveはnotでiptablesルールを永続化するため、再起動後に失われます。代わりに、現在のiptables構成をSTDOUTに出力します( iptables-saveのマンページ を参照)。したがって、再起動後、iptablesは空になります。
再起動後に、そのファイルからルールを復元することをお勧めします。これを行うには、
iptables-restore < /etc/network/iptables
これについては iptables-restoreのマンページ を参照してください。
パトリックが述べたように、ルール
iptables -A INPUT -s 69.171.229.11 -j DROP
パケットがルーター自体に送信されるのを防ぐだけです。正しくアドレス指定されていれば、パケットは転送されます。これを防ぐには、ルールを追加します
iptables -A FORWARD -s 69.171.229.11 -j DROP
FORWARDはルーターが転送したいパケットに適用され、INPUTはルーター自体にアドレス指定されたパケットに適用されます。
順序が正しくないと思います。
あなたがappendでしていることは、それをチェーンの一番下に置くことです。 IPtablesは最初の一致後に停止します。したがって、ブロックルールにヒットする直前にルールが一致する可能性があります。ブロッキングルールが一番上にあることを確認してください。 -Iオプションを使用して、チェーンの特定の場所に挿入できます。