워드프레스에서 로그인 시도 횟수를 제한하면 무작위로 암호를 입력하여 해킹을 시도하는 무차별 대입 공격을 방지하는 데 도움이 됩니다. Solid Security (이전 명칭 iThemes Security) 같은 무료 보안 플러그인을 사용하면 과도한 로그인을 시도하는 사용자를 차단할 수 있습니다.
이런 무거운 보안 플러그인 사용이 꺼려지는 경우 로그인 시도 횟수만을 제한하는 플러그인을 고려할 수 있습니다. 워드프레스에서는 Limit Login Attempts라는 유명한 로그인 시도 차단 플러그인이 있습니다. 이 플러그인은 블루호스트 등 일부 웹호스팅 업체에서 워드프레스를 자동 설치할 때 함께 설치되곤 했습니다. Limit Login Attempts는 아직도 100만 개 이상 사이트에 설치되어 사용되고 있지만 7년 이상 업데이트가 되지 않고 있습니다.
오랫동안 업데이트가 안 될 경우 최신 워드프레스 사이트에서 문제를 일으킬 수 있고 보안에도 안 좋을 수 있습니다. 이 플러그인 대신 Limit Login Attempts Reloaded 플러그인을 고려할 수 있습니다.
워드프레스에서 로그인 시도 횟수를 제한하여 보안을 강화하는 Limit Login Attempts Reloaded 플러그인
정상적인 로그인뿐만 아니라 인증 쿠키(auth cookie)를 사용한 로그인을 통한 로그인의 횟수를 제한하는 플러그인입니다. 이 플러그인도 현재 100만 개 이상 사이트에 설치되어 사용되고 있습니다.
이 글을 작성할 당시 2019년 9월에 100만 개 이상 사이트에 설치되어 사용되었지만 2024년 8월 현재 200만 개가 넘는 사이트에 활성화되어 있습니다.
워드프레스는 기본적으로 로그인 페이지를 통해서 또는 특별한 쿠키를 전송한 로그인 시도를 무제한 허용합니다. 이 때문에 무차별 대입 공격(Brute Force)으로 비밀번호 또는 해시(hash)가 해킹당할 수 있습니다.
Limit Login Attempts Reloaded는 로그인 시도 횟수가 지정한 일정 횟수에 도달하면 해당 인터넷 주소를 차단하여 브루트 포스 공격을 어렵게 하거나 불가능하게 만듭니다.
이 플러그인을 설치한 후에 설정 > Limit Login Attempts에서 허용되는 재시도 횟수, 일정 횟수 로그인 실패 시 로그인 잠금 시간 등 여러 가지 설정을 할 수 있습니다.
이 플러그인의 설정 페이지를 번역한 한국어 언어 파일을 다음 글에서 다운로드할 수 있습니다.
다운로드한 파일을 FTP를 통해 /wp-content/plugins/limit-login-attempts-reloaded/languages/ 폴더로 업로드하면 됩니다. 번역을 수정하거나 새로운 문자열을 번역하려는 경우 Loco Translate 플러그인이나 Poedit 같은 프로그램을 사용할 수 있습니다.
※ 일부 보안 플러그인에는 사용자들의 로그인 횟수를 제한하는 기능을 제공할 수 있습니다. 그런 경우에는 이 플러그인을 설치할 필요가 없습니다.
※ 플러그인을 사용하지 않고 로그인 시도 횟수를 제한하려는 경우 다음 Stackoverflow 글을 참고해보세요:
보안관련 좋은 글 감사합니다.
이 방법을 이용하면 봇에 의한 로그인 시도를 차단할 수 있어 보안에 도움이 될 것입니다.