기술 가이드

Brutelock로 무차별 대입 공격 차단하는 방법

3 min read 서버 보안 업데이트됨 18 Oct 2025
Brutelock로 무차별 대입 공격 차단하는 방법
Brutelock로 무차별 대입 공격 차단하는 방법

요약

Brutelock 에이전트를 설치하고 설정하면 SSH, FTP, POP, IMAP 등에서 반복된 로그인 실패를 실시간으로 감지해 공격 IP를 차단합니다. 이 문서는 설치 단계, 구성 파일 편집, iptables 연동, 테스트 방법과 운영 체크리스트를 포함한 실무 가이드입니다.

한 줄 정의

Brutelock: 시스템 로그를 모니터링해 무차별 대입(브루트포스) 시도를 탐지하고 악성 IP를 자동으로 차단하는 오픈소스 에이전트입니다.

설치 개요

  • 지원 서비스: SSH 외에 FTP, POP, IMAP 등 로그 파일을 통해 감시 가능한 모든 서비스.
  • 확장성: 로그 파일 경로와 정규표현식만 제공하면 추가 서비스 모니터링 가능.

설치 전 점검

  • 루트 권한 또는 sudo 권한을 가진 계정으로 작업하십시오.
  • 방화벽 정책(예: iptables) 변경 전 원격 접속 복구 수단을 준비하십시오.

설치 단계

  1. Brutelock 에이전트를 다운로드하고 /usr/local/에 저장합니다.
  2. 터미널에서 작업 디렉터리 이동:
cd /usr/local/
  1. 압축 해제:
tar -xjvf brutelock-version_number.tar.bz2
  1. 디렉터리 진입:
cd /usr/local/brutelock-version_number
  1. 구성 스크립트 실행:
./configure
  1. 빌드:
make
  1. 설치:
make install
  1. 새 구성 파일 편집
  • 파일 경로: /usr/local/brutelock/conf/brutelock.conf
  • 구독 키(subscription key)를 설정하십시오.
  • SSH 로그 경로가 시스템마다 다르므로 필요하면 경로를 수정하십시오.
  • FTP, POP, IMAP 등 보호할 다른 서비스를 주석 해제 후 설정하십시오.
  1. 화이트리스트 편집
  • 경로: /usr/local/brutelock/conf/whitelist
  • 각 IP를 별도 줄로 추가합니다. 로컬호스트(127.0.0.1) 외에 서버의 외부 IP도 최소한 하나 추가하십시오.
  1. iptables에 별도 체인 추가
  • Brutelock이 차단 규칙을 삽입할 체인을 만듭니다:
/sbin/iptables -N Brutelock-Firewall-INPUT
  • INPUT 체인에 Brutelock 체인을 삽입합니다:
/sbin/iptables -I INPUT -j Brutelock-Firewall-INPUT
  1. 데몬 시작
/usr/local/brutelock/bin/brutelockd
  1. 로그 모니터링
  • 설치 후 시스템 로그(예: /var/log/auth.log 또는 /var/log/secure)를 관찰하여 실패한 로그인 횟수가 줄어드는지 확인합니다.

중요: 구독 키

구독 키가 없다면 Brutelock 사이트에서 무료 또는 유료 옵션을 선택해 키를 발급받으십시오. 무료 옵션으로도 브루트포스 공격을 적극 차단할 수 있으며, 유료 구독은 지속적인 룰·데이터 업데이트를 통해 예방적 보호를 제공합니다.

구성 팁

  • 정규식 패턴을 적용할 때는 로그 형식(타임스탬프, 호스트명, 서비스명 등)에 맞춰 테스트하세요.
  • 여러 서비스의 로그를 한 곳에서 수집하고(예: rsyslog, syslog-ng) Brutelock이 수집된 로그 파일을 모니터링하도록 설정하면 관리가 편리합니다.
  • 화이트리스트는 최소 권한 원칙을 따르고, 넓은 범위(예: 0.0.0.0/0)로 절대 추가하지 마십시오.

테스트 및 검증

  • 기본 테스트 케이스
    • 정상: 루프백(127.0.0.1)에서 허용되는지 확인.
    • 실패 시 차단: 테스트용 외부 IP에서 여러 번 실패 로그인 후 iptables 규칙이 삽입되는지 확인.
    • 화이트리스트 예외: 화이트리스트에 넣은 IP는 차단되지 않는지 확인.

운영 체크리스트 역할별

  • 시스템 관리자
    • brtelockd 서비스 실행/중지 명령 숙지
    • /usr/local/brutelock/conf/brutelock.conf 백업
    • iptables 규칙 변경 전 세션 유지
  • 보안 담당자
    • 정기적으로 로그와 차단된 IP 목록 검토
    • 화이트리스트 변경 이력 감사
  • 운영팀
    • 패키지/소스 업데이트 시 구성 파일 호환성 점검

간단 운영 SOP

  1. 신규 서버에 Brutelock 설치
  2. 구성 파일에 구독 키와 로그 경로 설정
  3. 화이트리스트와 iptables 체인 추가
  4. 데몬 시작 후 24시간 모니터링
  5. 비정상 트래픽 발견 시 화이트리스트 및 정규식 조정

언제 Brutelock이 적합하지 않은가

  • 비정상적으로 많은 동시 접속이 정상인 환경(예: 대규모 API 엔드포인트에서 정상 비밀번호 입력 실패가 빈번한 경우)에서는 오탐이 발생할 수 있습니다. 이 경우 보다 정교한 인증·라우팅 기반 방어(예: rate limiting, WAF, MFA)와 병행해야 합니다.

대안 도구

  • Fail2Ban: 로그 기반 차단 도구로 설정 문법과 통합 방법이 Brutelock과 유사합니다.
  • CrowdSec: 협업 기반 침해 인텔리전스 공유가 가능한 오픈소스 도구입니다.

간단 용어집

  • Brutelock: 로그 모니터링 기반 자동 차단 에이전트
  • SSH: Secure Shell, 원격 접속 프로토콜
  • iptables: 리눅스 커널 패킷 필터링 툴

요약

Brutelock은 설치와 구성이 간단하며, 로그 기반으로 반복 로그인 실패를 자동 차단해 서버 가용성과 보안을 높입니다. iptables와 연동해 차단 규칙을 적용하고, 화이트리스트와 정규 표현식 설정을 통해 오탐을 줄이십시오.

추가 참고

  • 구성 파일이나 로그 경로가 시스템마다 다를 수 있으므로 README를 확인하십시오.
  • 방화벽 규칙을 변경하기 전에 원격 액세스 복구 계획을 준비하십시오.
공유하기: X/Twitter Facebook LinkedIn Telegram
저자
편집

유사한 자료

MacBook 키보드 작동 안됨 해결 가이드
튜토리얼

MacBook 키보드 작동 안됨 해결 가이드

인스타그램 릴스 좋아요 늘리는 9가지 전략
소셜미디어

인스타그램 릴스 좋아요 늘리는 9가지 전략

Valheim Plus 모드 설치 및 사용법
게임 가이드

Valheim Plus 모드 설치 및 사용법

CentOS 7에서 Nginx로 MediaWiki 설치 가이드
서버 가이드

CentOS 7에서 Nginx로 MediaWiki 설치 가이드

Outlook 공유 폴더 캐시 비활성화 방법
IT 관리

Outlook 공유 폴더 캐시 비활성화 방법

Windows에서 Outlook 첨부 파일 열기 문제 해결
문제해결

Windows에서 Outlook 첨부 파일 열기 문제 해결