요즘 보안에 관심이 무척이나 많아졌다. 과거 회사에서 근무시 운영서버에 로그인을 3회
정보 실패하였을 때 로그인 차단 기능이 존재하였다. 어떻게 구현하는것인지 궁금해서
한번 찾아 본 뒤에 셋팅법을 적도록 하겠다.
[1] Tool Search
인터넷을 뒤지다 좋은 Tool인 fall2ban 이라는 Tool을 찾게 되었다. 단순히 각 데몬별로
로그인 성공 / 실패 횟수를 지정하여 그 기준이 넘을 경우 iptables에 등록해 주는 Tool
이다.
[2] fail2ban Install
아주간단하게 설치하였다. 아래 화면을 참조하도록 한다.
$ sudo apt-get install fail2ban [sudo] password for testId: 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 새 패키지가 전에 자동으로 설치되었지만 더 이상 필요하지 않습니다: linux-headers-2.6.32-24 linux-headers-2.6.32-26 linux-headers-2.6.32-27 linux-headers-2.6.32-26-generic-pae linux-headers-2.6.32-27-generic-pae linux-headers-2.6.32-24-generic-pae 이들을 지우기 위해서는 'apt-get autoremove'를 사용하십시오. 다음 패키지를 더 설치할 것입니다: whois 제안하는 패키지: python-gamin mailx 다음 새 패키지를 설치할 것입니다: fail2ban whois 0개 업그레이드, 2개 새로 설치, 0개 지우기 및 65개 업그레이드 안 함. 127k바이트 아카이브를 받아야 합니다. 이 작업 후 1,016k바이트의 디스크 공간을 더 사용하게 됩니다. 계속 하시겠습니까 [Y/n]? Y 받기:1 http://gb.archive.ubuntu.com/ubuntu/ lucid/universe fail2ban 0.8.4-1ubuntu1 [96.0kB] 받기:2 http://gb.archive.ubuntu.com/ubuntu/ lucid/main whois 5.0.0ubuntu3 [30.7kB] 내려받기 127k바이트, 소요시간 3초 (41.5k바이트/초) 전에 선택하지 않은 fail2ban 패키지를 선택합니다. (데이터베이스 읽는중 ...현재 116991개의 파일과 디렉토리가 설치되어 있습니다.) fail2ban 패키지를 푸는 중입니다 (.../fail2ban_0.8.4-1ubuntu1_all.deb에서) ... 전에 선택하지 않은 whois 패키지를 선택합니다. whois 패키지를 푸는 중입니다 (.../whois_5.0.0ubuntu3_i386.deb에서) ... man-db에 대한 트리거를 처리하는 중입니다 ... ureadahead에 대한 트리거를 처리하는 중입니다 ... fail2ban (0.8.4-1ubuntu1) 설정하는 중입니다 ... |
[3] 데몬별 차단 설정
path : /etc/fail2ban/jail.conf 파일을 수정하면된다.
아래 그림을 SSH 데몬의 차단 설정을 해놓은 예제이다.
[ssh] enabled = true ==> ssh데몬 차단기능을 할것인지 설정(true/false) |
이상이다. 실제 저런 경우 차단이 되면 iptables에 자동 등록된다.
[4] 차단해제
관리자에게 연락 후 차단 해제시에는 다음과 같은 명령을 입력하도록 한다.
sudo iptables -D fail2ban-ssh -s 210.93.54.140 -j DROP
[5] 끝
다양한 해킹 시도에는, 막는방법에는 여러가지가 있다. 난 개인적으로 Application에서 막는것보다 물리적으로 막는것을 좋아라 하지만, 이문제는 돈이 드는 문제라, Application에서 막는 방법에 대해서라도 자세히 알아두는 것이 좋다고 생각한다.
- 2011.02.18 랑이씀 -
'Server > Linux' 카테고리의 다른 글
[ VIM 창 분할하기 ] (2) | 2011.02.23 |
---|---|
[ 파티션 설정 ] (0) | 2011.02.21 |
[ iptables 를 이용한 국가별 차단 ] (10) | 2011.02.15 |
[ SSH 터널링 팁 ] (0) | 2011.02.13 |
Ubuntu Logs Explain (0) | 2011.02.08 |