Ubuntu は、1 つのポート以外の IP アクセスをブロックします。

Ubuntu は、1 つのポート以外の IP アクセスをブロックします。

1つのポートだけを除いてすべてをブロックする方法(9999特定のIPからサーバーにアクセスするなど)192.168.0.1

iptables -A INPUT -s 192.168.0.1 -j DROPすべてのポートがブロックされます。

特定のIPのポート範囲をブロックできますか?

答え1

もちろんです!

iptablesルールは順番に適用されます。したがって、まずチェーンに対して非常に厳しいポリシーを作成し、特定のポートでトラフィックを許可できます。

まず、デフォルトのチェーンポリシーを設定できます。たとえば、次のようになります。 (デフォルトではACCEPTに設定されています。)

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

これにより、すべてのコンテンツを拒否するように各チェーンを構成できます。その後、必要に応じて1つのポートまたは特定のネットワークセグメントへのトラフィックのみを許可できます。

iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT

INPUTルールを追加するチェーンの名前。-iルールが適用されるインターフェイスを指定するために使用されます(eth0例では)。-pプロトコルを指定するために使用されます。(tcp)この例では、--dport任意のポートで指定できます。トラフィックが許可されている場合は、-m stateファイアウォールに接続状態を表示するように指示します。これは、接続--state NEW,ESTABLISHEDを許可する2つの状態を使用できるようにし、最後に-j ACCEPT前述した規則と一致する接続が許可されることをファイアウォールに通知します。

最後の質問ではIPおよび/またはポート範囲が必要なので、これを行う方法は--dport 80:10010(80から10010のポートにルールが適用されます)、IP範囲を使用してルールが-m iprange --src-range 192.168.1.100-192.168.1.200すべてのアドレスに適用されるようにすることです。交通。 IP範囲は192.168.1.100 - 192.168.1.200です。

完全な作業例:

iptables -A INPUT -i eth0 -p tcp --dport 80:10010 -m iprange --src-range 192.168.1.100-192.168.1.200 -m state --state NEW,ESTABLISHED -j ACCEPT

関連情報