web-dev-qa-db-ja.com

IPTablesはlocalhostアクセスのみを許可します

私は何年にもわたってiptablesをしっかりと理解するのに苦労してきました。 manページを読み通してみると、いつでも目がうっとうしく見え始めます。

Localhostにアクセスを許可するだけのサービスがあります。

localhostホストのみが特定のポートにアクセスできるようにするには、どの用語(または誰かが寛大に感じる場合は構成)をGoogleに許可する必要がありますか?

64
iptablessuck

サービスによって特定のポートを意味する場合は、次の2行が機能します。 「25」を、制限しようとしているポートに変更します。

iptables -A INPUT -p tcp -s localhost --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j DROP
71
Hyppy

私はお勧めします:

iptables -A INPUT -i lo -p tcp --dport $APP_PORT -j ACCEPT
iptables -A INPUT -p tcp --dport $APP_PORT -j DROP

自己アドレス指定されたパケットは、必ずしもソースとして127.0.0.1を持っているわけではありませんが、それらはすべてloインターフェイスから「入力」されます。

ここで、本当に_iptablesを理解したい場合、最初にすべきことは、関係を説明する適切な図をダウンロードして印刷することです。 netfilterテーブル。ここに2つの素晴らしいものがあります:

最後に、たくさんのiptables HOWTOを読んでください。実用的な例は、あなたが本当のスピードをすぐに得るのに役立ちます:)

30
pepoluan