← 블로그 목록
작성일: 2026-05-12 LinuxSSH보안auth.log

Linux auth.log 분석 가이드: SSH 침입 시도 탐지와 차단

Linux 서버를 인터넷에 노출하면 SSH 포트(기본 22번)에 대한 자동화 공격이 수분 내로 시작됩니다. 이 모든 시도는 /var/log/auth.log (Debian/Ubuntu 계열) 또는 /var/log/secure (CentOS/RHEL 계열)에 기록됩니다.


auth.log에 기록되는 주요 이벤트

SSH 인증 실패

`` May 10 03:22:11 web01 sshd[23451]: Failed password for invalid user admin from 203.0.113.42 port 52341 ssh2 May 10 03:22:12 web01 sshd[23452]: Failed password for root from 203.0.113.42 port 52342 ssh2 May 10 03:22:14 web01 sshd[23453]: Invalid user test from 203.0.113.42 `

  • Failed password for invalid user — 존재하지 않는 사용자명으로 시도
  • Failed password for [유효한 사용자명] — 실제 계정에 대한 비밀번호 오입력
  • Invalid user — 사용자명 자체가 시스템에 없음

MaxAuthTries 초과 차단

` May 10 03:22:15 web01 sshd[23454]: error: maximum authentication attempts exceeded for invalid user admin from 203.0.113.42 port 52343 ssh2 May 10 03:22:15 web01 sshd[23454]: Disconnecting invalid user admin 203.0.113.42 port 52343: Too many authentication failures `

연속 실패가 MaxAuthTries(기본 6회)를 넘으면 SSH 데몬이 강제 연결 차단합니다.

sudo 명령 실행 기록

` May 10 08:20:01 web01 sudo: user1 : TTY=pts/0 ; PWD=/home/user1 ; USER=root ; COMMAND=/usr/bin/apt update `

내부자 위협이나 권한 남용 탐지에 활용됩니다.


grep으로 공격 IP 분석하기

인증 실패 IP 집계

`bash grep 'Failed password' /var/log/auth.log \ | awk '{print $(NF-3)}' | sort | uniq -c | sort -rn | head -20 `

시도된 사용자명 목록

`bash grep 'Invalid user' /var/log/auth.log \ | awk '{print $8}' | sort | uniq -c | sort -rn | head -20 `

공격자가 주로 시도하는 사용자명:


SSH 보안 강화 설정

1. 패스워드 인증 비활성화 (가장 효과적)

/etc/ssh/sshd_config:

` PasswordAuthentication no PubkeyAuthentication yes PermitRootLogin no `

공개키 인증만 허용하면 패스워드 브루트포스는 원천 차단됩니다.

2. MaxAuthTries 줄이기

` MaxAuthTries 3 LoginGraceTime 30 `

3. 특정 IP만 허용 (방화벽)

`bash ufw allow from 192.168.1.0/24 to any port 22 ufw deny 22 `


Fail2Ban으로 자동 차단

/etc/fail2ban/jail.local:

`ini [sshd] enabled = true port = ssh logpath = /var/log/auth.log maxretry = 5 findtime = 300 bantime = 3600 `

5분 내 5회 실패 시 1시간 차단합니다.

`bash sudo fail2ban-client status sshd ``


공격 패턴의 MITRE ATT&CK 매핑

순위사용자명시도 횟수
--------------------------
1admin1,204
2root987
3ubuntu643
4test412
5postgres311
탐지 패턴MITRE 기법설명
----------------------------
반복 패스워드 시도T1110.001Brute Force: Password Guessing
다수 사용자명 시도T1110.003Brute Force: Password Spraying
root 직접 로그인 시도T1078.001Valid Accounts: Default Accounts
비정상 시간대 sudoT1548.003Abuse Elevation: Sudo and Sudo Caching

정리

SSH 브루트포스 공격은 서버 노출 즉시 시작됩니다. 핵심 방어 순서:

  1. 공개키 인증 전용 — 패스워드 인증 완전 비활성화
  2. Fail2Ban 설치 — 반복 실패 IP 자동 차단
  3. 로그 주기적 점검 — auth.log에서 실패 패턴 모니터링
  4. 허용 IP 제한 — SSH 접근 IP를 방화벽에서 화이트리스트