iptables:特定のIPは許可し、他のすべての接続はブロックします。

iptables:特定のIPは許可し、他のすべての接続はブロックします。

iptablesで特定のIPを許可し、他のすべての接続をブロックする方法は?

ベストアンサー1

私は書いたデスクトップユーザー向けのデフォルトのIptablesルールに関するブログ投稿ずっと前に、おそらくそれを読む必要があります。そしてそれにリンクされた記事ステートフルファイアウォールの設計。ただし、カーネル2.6.39以前(ipsetホワイトリストに10個以上のIPがある場合(そのうち10個はランダム))をホワイトリストに追加するためにこの機能を使用できます。

まず、受け入れるか破棄したい状態とインターフェイスを処理します。

iptables -P FORWARD DROP # we aren't a router
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP # Drop everything we don't accept

IPでのみ許可したい場合は、ステータスは必要ありません。

iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP

ただし、これを行う際に問題が発生する可能性があるため、状態を使用して生活を簡単にすることをお勧めします。たとえば、これは許可されておらず、-i lo一部の-o loアプリケーションでは間違いなく問題が発生します。

おすすめ記事