![特定のIP範囲のみにアクセスを許可する最も簡単/最良の方法](https://rvso.com/image/769296/%E7%89%B9%E5%AE%9A%E3%81%AEIP%E7%AF%84%E5%9B%B2%E3%81%AE%E3%81%BF%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%82%92%E8%A8%B1%E5%8F%AF%E3%81%99%E3%82%8B%E6%9C%80%E3%82%82%E7%B0%A1%E5%8D%98%2F%E6%9C%80%E8%89%AF%E3%81%AE%E6%96%B9%E6%B3%95.png)
Ubuntu 20.04 インストールに特定の IP 範囲からのみアクセスできるようにする最も簡単で最適な方法を探しています。主に Web トラフィック (Apache) をブロックできるようにしたいのですが、サーバー全体をブロックするのが最適でしょう。
ハードウェア オプションが最適であることは理解していますが、私にはその余裕がありません。また、「最も簡単」と「最良」が必ずしも一致するわけではないことも理解しています。
また、IP 範囲が増えるとサーバーの速度は低下しますか?
ご協力いただければ幸いです。
答え1
ほとんどの Linux インストールでは、必要な IP トラフィックを除くすべての IP トラフィックを簡単にフィルタリングできます。これを行うと、サーバーにアクセスできなくなる可能性があることに注意してください。
ここに、役に立つかもしれない小さな基地があります。
# Allow some related traffic
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow single source ip
iptables -A INPUT -s x.x.x.x/net -j ACCEPT
# Drop everything else
iptables -P INPUT DROP
すべてをアクティブにする最後のドロップ ラインを実行する前に、iptables -vnL
ルールが一致したときにカウンターを表示する を使用して、それが実行されることを確認できます。
IP フィルタリングを行うと CPU サイクルが使用されますが、パケットへの応答にも CPU サイクルが使用されます。高スループットで複雑なルールを実行しない限り、これが問題になることはほとんどありません。これは複雑なルールではありません。