허원철의 개발 블로그

Linux - fail2ban 본문

server

Linux - fail2ban

허원철 2017. 9. 21. 21:43
이번 글은 fail2ban에 대한 내용입니다. 

Linux 서버를 누구나 접근이 가능한 네트워크망(IP대역을 제한할 수 없는 경우)에서 사용하게 되면, 무작위로 ssh 로그인을 시도하여 접근하는 것이 가능합니다. 이를 보완하기 위해서 첫째로는 ssh 로그인 시, 직접적으로 root로 접근하는 것을 막습니다. 두번째로 fail2ban을 이용하여 이를 보완할 수 있습니다.
 

fail2ban 란?
  
- 지정된 시간(findtime) 내에 지정된 횟수(maxretry) 이상으로 접근 실패시에 해당 IP를 지정된 시간(bantime)동안 차단하는 것을 말합니다.
 

fail2ban 설치하기(Centos 7 기준으로 합니다.)
 
1. epel 패키지 설치
- 공식 Centos 패키지 저장소에는 fail2ban이 없기 때문에 epel 패키지 설치합니다. 
 
1
yum install -y epel-release
cs
 
2. fail2ban 설치
 
1
yum install -y fail2ban
cs
 
3. fail2ban 활성화
 
1
systemctl enable fail2ban.service
cs
 
4. fail2ban 재실행
 
1
systemctl restart fail2ban.service
cs
 
 
fail2ban 설정 변경

- 기본적인 경로는 /etc/fail2ban 하위 디렉토리에 위치합니다.
- 기본적인 설정은 jail.conf으로 있으나, 변경이 필요한 경우에는 jail.conf를 복사하여 jail.local 파일을 만들어 커스텀 하거나 jail.d/customisation.local에 값을 수정하여 사용하기를 권장합니다.
 
1
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
cs
 
설정을 전체적으로는 볼 수 없고, 기본적인 것만 보자면
 
1
vi /etc/fail2ban/jail.local
cs
  
1
2
3
4
5
6
7
8
[DEFAULT]
...
maxretry= (최대 로그인 시도 횟수)
findtime = (로그인 시도 유지 시간)
bantime = (차단 유지 시간)
...
[sshd]
enabled = (ssh 로그인 시, 활성화 유무)
cs

 


참고


https://www.unixmen.com/install-fail2ban-centos-7/

 

'server' 카테고리의 다른 글

CI - 젠킨스 원격지 배포하기(SSH)  (412) 2017.08.28
CI - 젠킨스 업그레이드  (401) 2017.08.24
CI - 젠킨스 빌드하기  (395) 2017.06.28
CI - 젠킨스 시작하기  (412) 2017.06.27
Docker - 시작하기  (401) 2017.05.11
Comments