Linux Fail2Ban + Telegram 연동으로 실시간 차단 알림 받기
페이지 정보

본문
Fail2Ban + Telegram 연동으로 실시간 차단 알림 받기
Fail2Ban은 서버 보안에 강력한 도구이지만, 차단된 IP를 실시간으로 알림받을 수 있다면 대응 속도가 훨씬 빨라집니다.
이제 텔레그램을 활용해 Fail2Ban 차단 정보를 바로 스마트폰으로 받는 시스템을 구축해보겠습니다.
✅ 1. 텔레그램 봇 생성
-
텔레그램에서
@BotFather
대화 시작 -
/newbot
입력 → 이름과 사용자명 설정 -
발급된 API 토큰을 복사해 둡니다.
예시:
123456789:ABCDefGhIjkLMNopQRStuvWxYZ
✅ 2. Chat ID 확인
개인 채널(Chat ID)
-
봇에게 아무 메시지 전송
-
브라우저에 아래 주소 접속:
https://api.telegram.org/bot<토큰>/getUpdates
→ 아래처럼 나오면 "chat":{"id":123456789}
→ 이 값이 Chat ID입니다.
그룹 알림용 Chat ID
-
봇을 그룹에 초대
-
그룹에 메시지 작성
-
위와 같은 방식으로
/getUpdates
조회
→"id":-100xxxxxxxxx
→ 이게 그룹 Chat ID입니다. 마이너스(-) 포함!
✅ 3. Telegram 액션 스크립트 작성
다음 파일을 새로 만듭니다:
[code] sudo nano /etc/fail2ban/action.d/telegram.conf [/code]
내용:
[code] [Definition] actionstart = curl -s -X POST https://api.telegram.org/bot/sendMessage -d chat_id=<CHAT_ID> -d text="⚠️ Fail2Ban started on " actionstop = curl -s -X POST https://api.telegram.org/bot/sendMessage -d chat_id=<CHAT_ID> -d text="⛔ Fail2Ban stopped on " actionban = curl -s -X POST https://api.telegram.org/bot/sendMessage -d chat_id=<CHAT_ID> -d text="🚫 IP banned on for " actionunban = curl -s -X POST https://api.telegram.org/bot/sendMessage -d chat_id=<CHAT_ID> -d text="✅ IP unbanned on for "
[Init] name = default [/code]
<TOKEN>
과<CHAT_ID>
는 반드시 실제 값으로 교체하세요.
✅ 4. Fail2Ban 설정에 Telegram 액션 연결
[code] sudo nano /etc/fail2ban/jail.local [/code]
SSH 설정 블록에 다음을 추가하거나 수정:
[code] [sshd] enabled = true port = ssh logpath = %(sshd_log)s backend = systemd maxretry = 5 findtime = 600 bantime = 43200 action = telegram [/code]
✅ 5. 적용 및 테스트
Fail2Ban 서비스 재시작:
[code] sudo systemctl restart fail2ban [/code]
Fail2Ban 상태 확인:
[code] sudo fail2ban-client status sshd [/code]
✅ 차단 테스트 방법
다른 IP에서 SSH 접속을 일부러 잘못된 비밀번호로 5번 이상 시도해보세요.
정상적으로 작동하면 텔레그램으로 다음과 같은 메시지가 옵니다:
🚫 IP 203.0.113.10 banned on your.server.hostname for sshd
✅ 마무리
이제 서버에서 비정상적인 로그인 시도가 발생할 때마다
Fail2Ban이 자동으로 차단하고, 실시간으로 텔레그램으로 알림까지 전송해줍니다.
복잡한 이메일 알림보다 훨씬 빠르고, 스마트폰에서도 바로 확인할 수 있어
보안 대응 속도와 효율성이 크게 향상됩니다.
- 이전글우분투 서버 보안 강화: UFW를 이용한 SSH 접속 제한 가이드 25.04.02
- 다음글리눅스 서버 보안 강화 – Fail2Ban으로 SSH 자동 차단 시스템 구축기 25.04.01
댓글목록
등록된 댓글이 없습니다.