したがって、VPS環境を使用すると、デフォルトでアウトバウンドSMTP(スパマー)をブロックする必要があり、必要に応じてブロックを解除できます。
いくつかのスクリプトが見つかりました。例:
iptables -I FORWARD 1 -d $ VPS_IP -p tcp -m tcp --dport 25 -j DROP
iptables -I FORWARD 1 -s $ VPS_IP -p tcp -m tcp --dport 25 -j DROP
そして
iptables -I FORWARD -p tcp --sport 25 -j DROP
iptables -I FORWARD -p tcp --dport 25 -j DROP
ただし、特にIPの範囲が変更される可能性がある場合は、最初のセットを介してブロッキングを制御することは非効率的です。
したがって、問題は、セット2(ブランケットブロック)を使用する場合、特定のIPをどのように許可するかということです。 OUTPUTチェーンに何かを追加する必要があると思いますが、ブランケットブロックが最初に処理されませんか?または、FORWARDに追加すると、チェーンのさらに下流にあるため、ブランケットブロックが最初になりませんか?等..
Iptables-Lは次のようになります。
[root@server ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
SOLUSVM_TRAFFIC_IN all -- anywhere anywhere
SOLUSVM_TRAFFIC_OUT all -- anywhere anywhere
all -- somedomain anywhere
all -- anywhere somedomain
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain SOLUSVM_TRAFFIC_IN (1 references)
target prot opt source destination
all -- anywhere somedomain
Chain SOLUSVM_TRAFFIC_OUT (1 references)
target prot opt source destination
all -- somedomain anywhere
大変感謝いたします! (答えられない場合は、コーダーに仕事を雇うか何かを投稿する予定です)
挿入コマンドを使用して、ブロックルールの前にルールを追加することができます。ただし、1台または場合によっては2台のサーバーのみがインターネットに電子メールを送信する必要があります。必要に応じて、ホストにファイアウォールルールを追加して、メールサーバーのみが電子メールを送信できるようにします。これにより、ボットが無効になるか、少なくとも問題をログに記録して追跡する機能が提供されます。
1つの送信メールサーバーを設定し、インターネットに電子メールを送信する他のすべてのサーバーをブロックすることをお勧めします。そのメールサーバーを、ネットワーク内のすべてのホストの送信MTA(メール転送エージェント)として使用します。 rDNS、SPFなどを使用して適切に構成します。電子メールを送信しないドメインには、「-all」ポリシーを含むSPFレコードが必要です。 SPFを使用した電子メールレピュテーションの保護に関する私のメモを参照してください。
代わりに送信するドメインを制限するように電子メールサーバーを構成します。 EximのACL機能がこれに適していることがわかりました。大量の送信メールを防ぐために、制限ルールをインストールすることもできます。