Table of Contents
fail2ban 설치
목표
brute force(무차별 대입공격) 을 이용한 ssh 접속시도를 차단합니다.
설치
RHEL/CentOS
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum --enablerepo epel install fail2ban
Ubuntu
sudo apt install fail2ban
서비스 활성화
sudo systemctl enable fail2ban
sudo systemctl restart fail2ban
기본설정
10분동안 5회 이상 로그인시도가 실패하면, 10분간 로그인을 차단합니다.
설정변경
기본설정파일은 /etc/fail2ban/jail.conf
입니다.
기본설정파일의 수정은 권장되지 않습니다.
대신 신규로 설정파일을 생성할 것이 권장됩니다.
차단시간을 한시간으로 늘립니다.
차단했음에도 로그인시도가 있으면 차단시간을 두배씩 증가시켜 갑니다.
ssh 포트 번호를 변경했다면 설정을 추가해 줍니다.
mode 를 aggressive 로 변경하면, 비밀번호 인증실패 뿐만 아니라,
ddos, 공개키 인증실패에도 차단이 작동합니다.
sudo vi /etc/fail2ban/jail.local
------------------------------
[DEFAULT]
bantime = 1h
bantime.increment = true
[sshd]
enabled = true
port = 10022
mode = aggressive
------------------------------
sudo systemctl restart fail2ban
sudo fail2ban-client get sshd bantime
sudo fail2ban-client get sshd bantime.increment
sudo fail2ban-client status sshd