어느 날 메일을 보니 다음과 같은 메일이 있었다.
바로 이전 포스팅에서 만든 서버에 문제가 생긴 것이다
급하게 SSH
를 연결해서 장고 로그를 확인했다.
지운 IP들을 확인해보니 하나 빼고 모두 미국IP였고, 하나는 네덜란드IP였다.
어딘가에 서버 링크를 올린 적은 없는데, 무작위 scan 공격을 받은 것으로 추정된다.
특히나 로그 내역을 보면 phpMyAdmin
나 mysqlmanager
등에 접근하려고 했던 내용들이 확인되는데, 아마 이러한 애플리케이션들의 알려진 취약점들을 활용해 공격하려던 것으로 생각된다.
다행히 내가 별다른 설정을 하지 않았음에도 장고는 404 에러를 띄우며 안전하게 대응하였다.
이러한 공격을 받아본 건 처음이라, 일단은 향후 SSH Brute Force Attack
에 대응할 수 있도록, fail2ban
을 설치하여 일정 횟수 이상 로그인 시도를 하고 접속에 실패하는 경우 우분투를 잠갔다.
자세한 설치 방법은 이 링크를 참고하였다.
사실 이 외에도 정해진 IP에서만 SSH
로 연결할 수 있도록 방화벽을 설정하는 것이 바람직하지만, 서버의 취지가 동아리 부원들 교육인지라,, 어느 위치에서 접속할지 몰라 모든 IP를 허용해두었다.
실제 프러덕션에서는 프런트엔드를 제외한 모든 IP를 닫아두는 것이 바람직 할 것 같다.
SSH
연결이 탈취당하면 서버에 대한 지배권이 빼앗기는 것이나 마찬가지이므로, 반드시 방어수단을 준비해두어야겠다는 생각을 가지게되는, 나름 바람직한(?) 계기였다.