Image

ナレッジベース → iptables の接続制限の設定

[仮想サーバー]
公開日: 27.01.2023

サーバーとサービスをオペレーティングシステムレベルでフラッド攻撃から保護するために、ファイアウォールを設定し、同時接続の数に制限を設ける必要があります。ここでは、いくつかのサービスに対する制限について説明します。必要なポートを設定することで、自分のサービスに対しても同様のルールを追加できます。

ICMP

ICMPフラッドから保護するためには、1秒あたりのPING数に制限を設ける必要があります:

-A INPUT -p icmp -m hashlimit --hashlimit-upto 6/sec --hashlimit-burst 4 --hashlimit-name icmp -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j DROP

この例では、最大で4回のPINGを許可し、1秒あたりの最大数を6に設定しています。

HTTPとHTTPS

以下のルールは同時接続数を制限します。この数値は、自分のウェブサイトのトラフィックに合わせて調整できます。また、ddos deflateサービスのルールよりも大きい値に設定する必要があります。

-A INPUT -p tcp -m tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 500 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
-A INPUT -p tcp -m tcp --dport 443 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 500 --connlimit-mask 32 -j REJECT --reject-with tcp-reset

SSH

SSHでは、デフォルトのポート22を別のポート(例: 3022など)に変更することをお勧めします。これは、多くのパスワードクラッキングの試行があり、その大部分がSSHサービスに向けられているためです。

-A INPUT -p tcp -m tcp --dport 3022 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 5 --connlimit-mask 32 -j REJECT --reject-with tcp-reset

他のサービス(例: メール)を使用している場合は、同様のルールを作成してください。





No Comments Yet