내 서버로 들어오는 smtp 연결이 빠르게 증가하는 것을 발견했고, 더 자세히 조사해 보니 내 smtp 서버를 망치는 봇넷이 있다는 것을 알아냈습니다. iptables에 규칙을 추가하여 이를 중지하려고 했습니다.
-N SMTP-BLOCK -A SMTP-BLOCK -m 제한 --limit 1/m --limit-burst 3 -j LOG --log-level 공지 --log-prefix "iptables SMTP-BLOCK " -A SMTP-BLOCK -m 최근 --name SMTPBLOCK --set -j DROP -A INPUT -p tcp --dport 25 -m state --state NEW -m 최근 --name SMTPBLOCK --rcheck --seconds 360 -j SMTP-BLOCK - A INPUT -p tcp --dport 25 -m state --state NEW -m 최근 --name SMTP --set -A INPUT -p tcp --dport 25 -m state --state NEW -m 최근 --name SMTP --rcheck --seconds 60 --hitcount 3 -j SMTP-BLOCK -A INPUT -p tcp --dport 25 -m state --state NEW -j ACCEPT
이렇게 하면 "너무 빨리" 망치는 것을 방지할 수 있지만 문제는 여전히 초당 5번의 시도이며 미친 듯이 진행됩니다. sendmail/dovecot의 최대 하위 수를 늘려야 했습니다. 수동으로 필터링하기에는 IP가 너무 많고 해당 서버에 다른 클라이언트가 많기 때문에 단순히 smtp를 다른 포트로 변경하는 것은 실용적이지 않습니다.
나는 비둘기장과 함께 sendmail을 사용하고 있습니다. 이것을 더 효율적으로 필터링할 수 있는 아이디어가 있습니까?
답변1
내 성향은 탑승 중인 백업 MX 호스트가 있는지 확인하는 것입니다. 그런 다음 백업 MX 호스트를 제외한 모든 시스템에서 포트 25에 대한 액세스를 차단합니다. 인바운드 합법적인 메일은 백업 MX 호스트로 전달되며, 이를 통해 사용자에게 전달될 수 있습니다. 그러나 시스템으로 향하지 않고 알려진 양호한 호스트에서 오는 인바운드 메일은 아무데도 가지 않습니다.
("백업 MX 호스트"는 귀하의 다른 시스템일 수도 있고 며칠 동안 시간 단위로 임대하는 VPS/클라우드 시스템일 수도 있습니다.)
봇넷으로 군비 경쟁을 벌이지 마십시오. 대역폭과 서버를 추가하는 것보다 트래픽을 더 빠르게 추가할 수 있습니다.
아마도 한 컴퓨터에 많은 클라이언트/도메인이 있어서 더 많은 작업이 필요한 것 같습니다. 죄송합니다.
새 IP 주소로 이동하거나 공격을 받는 호스트의 A 레코드를 127.0.0.1로 변경하고 서버의 새 이름을 찾는 것을 고려할 수 있습니다. 스패머가 다른 피해자로 이동하여 새 이름을 떠날 가능성이 어느 정도 있습니다. 호스트 이름/IP 주소만.