일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 페이스북
- 스프링 부트
- 페이징
- Security
- gdg
- tomcat
- 비동기
- RabbitMQ
- Refactoring
- JPA
- JWT
- java
- 스프링
- 클린코드
- Producer
- clean code
- assertj
- spring boot
- apache
- Spring
- 스프링부트
- load balancing
- GC
- jvm
- g1
- oauth2
- 시큐리티
- 리팩토링
- 권한
- OAuth
Archives
- Today
- Total
허원철의 개발 블로그
Linux - fail2ban 본문
이번 글은 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