
나는 Centos7 서버를 가지고 있으며 몇 년 동안 올바르게 작동한 후에 어제 연결할 수 없게 되기 시작했습니다(내가 가지고 있는 서버 앱은 연결할 수 없었고 SSH 연결에서 시간 초과가 발생했지만 핑은 작동했습니다).
어제는 연결할 수 없게 되었으며 유일한 해결 방법은 중지하고 다시 시작하는 것입니다. 하지만 한 시간도 채 지나지 않아 똑같은 일이 일어났습니다.
몇 가지 연구 결과에 따르면 이는 SYN 플러드 공격 때문일 수 있습니다.
연결 로그를 확인하면 여러 번의 로그인 시도가 있음을 알 수 있습니다. 예를 들면 다음과 같습니다.
Jan 26 08:18:08 vsi-prod sshd[2691]: Invalid user aadil from 190.153.249.99 port 59598
Jan 26 08:18:08 vsi-prod sshd[2691]: input_userauth_request: invalid user aadil [preauth]
Jan 26 08:18:08 vsi-prod sshd[2691]: Received disconnect from 190.153.249.99 port 59598:11: Bye Bye [preauth]
Jan 26 08:18:08 vsi-prod sshd[2691]: Disconnected from 190.153.249.99 port 59598 [preauth]
Jan 26 08:18:12 vsi-prod sshd[2695]: Invalid user db2fenc2 from 143.110.241.56 port 54456
Jan 26 08:18:12 vsi-prod sshd[2695]: input_userauth_request: invalid user db2fenc2 [preauth]
Jan 26 08:18:13 vsi-prod sshd[2695]: Received disconnect from 143.110.241.56 port 54456:11: Bye Bye [preauth]
Jan 26 08:18:13 vsi-prod sshd[2695]: Disconnected from 143.110.241.56 port 54456 [preauth]
포트 22를 비활성화했지만 문제가 계속 발생합니다. 또한 닫아야 하는 포트에 대한 요청입니다(다시 확인했습니다).
속도 제한기를 생성하려고 했지만 iptables
둘 다 작동하지 않았습니다.
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m hashlimit --hashlimit 5/minute --hashlimit-burst 5 --hashlimit-mode srcip --hashlimit-name ssh-limit -j ACCEPT
마지막으로 somaxconn을 생성했지만 문제는 여전히 남아 있습니다.
net.core.somaxconn = 1024
문제를 해결하는 방법에 대한 제안이 있습니까? 이 시나리오를 방지하려면 어떤 설정/도구를 수행해야 합니까?
답변1
(이것은 주석이어야 합니다. 하지만 너무 길거나 주석이 서식을 지정하지 않습니다.)
이는 SYN 플러드 공격 때문입니다.
확실합니까? 이것을 어떻게 결정했나요? 혹시 확인하셨나요?신 쿠키켜져 있나요?
로그인 시도가 여러 번 있는 것을 확인했습니다.
인터넷에 오신 것을 환영합니다. 나는 이것이 아마도 syn 홍수와 관련이 없다는 것을 알고 있다고 가정합니다. 보다놀라울 정도로 높은 비율의 "봇넷" SSHD 로그인 실패에 대처하기 위한 팁은 무엇입니까?