메뉴 건너뛰기

2014.02.27 11:57

Snort란

조회 수 7874 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Snort란?
- snort는 실시간 트래픽 분석과 IP 네트워크 상에서 패킷 로깅이 가능한 가벼운(lightweight) 네트워크 침입탐지시스템이다.
snort는 프로토콜 분석, 내용 검색/매칭을 수행할 수 있으며 오버플로우, Stealth 포트스캔, CGI 공격, SMB 탐색, OS 확인 시도 등의 다양한 공격과 스캔을 탐지할 수 있다.

1. 필요한 파일이 2개 또는 3개 일 수 있다.
1) snort-2.1.0.tar.gz : www.snort.org에서 최신버젼을 받을 수 있다.
2) libpcap-0.7.2-1.i386.rpm : Linux9.0시디에서 구했다... www.rpmfind.com에서도 구할 수 있다.
3) pcre-4.5.tar.gz : ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 에서 구할 수 있다.

2. 이제 설치해보도록 한다.

1) 적당한 위치에 파일들을 옮긴 후 그 위치로 이동한다.
root@localhost # mv./snort-2.1.0.tar.gz /usr/local/src
root@localhost # mv ./libpcap-* /usr/local/src
root@localhost # mv ./pcre-* /usr/local/src
root@localhost # cd /usr/local/src

2) libpcap을 설치한다.
root@localhost # rpm -Uvh libpcap-0.7.2-1.i386.rpm

3) snort의 압축을 해제 후, 이동시킨다. 그 후 해당 디렉토리로 이동.
root@localhost # tar xvfz snort-2.1.0.tar.gz
root@localhost # mv snort-2.1.0 /usr/local/snort
root@localhost # cd /usr/local/snort

4) configure , make , make install을 한번에 한다.
root@localhost # ./configure && make && make install
< tip: &&와 ;의 차이점 : &&로 명령어를 묶을경우 에러가 나면 실행을 중지하지만, ;로 묶을경우 무시하고 설치한다. >

5) 만약 여기서 에러가 난다면(pcre에러) pcre를 설치해야한다.
pcre의 설치는 간단하므로 간략하게만 설명한다.
압축해제 -> configure -> make -> make install
root@localhost # tar xvfz pcre-4.5.tar.gz
root@localhost # cd pcre-4.5
root@localhost # ./configure && make && make install

6) snort의 설치가 4)번처럼 잘 되었다면 로그 기록을 위한 설정이 필요하다.
A) 로그기록을 위한 디렉토리 설정
root@localhost # mkdir /var/log/snort
root@localhost # chmod 700 /var/log/snort
B) /usr/local/snort/etc/snort.conf 파일의 환경설정
ⓐ var HOME_NET 의 IP부분을 any -> 자기서버IP로 변경해준다.
ⓑ include $RULE_PATH/web-iis.rules 부분은 IIS를 위한 설정이므로, 주석처리한다. (#)

4. 실행

root@localhost # /usr/local/snort/src/snort -l /var/log/snort -A fast -c /usr/local/snort/etc/snort.conf -D -N

[ 명령어 설명 ]
-l : 로그 디렉토리 설정
-c : 설정파일
-A : 로그기록을 어떻게 할지 선택 full,none,fast 세가지가 있습니다.
-D : 데몬으로 동작을 의미
-N : 로그를 남기지 않고 경고메시지만 남긴다는 의미
※. -N 옵션을 주지 않으면 서버에 접근하는 아이피를 디렉토리로 만들어서 로그가 남게 된다.

snort 실행 옵션은 아래와 같습니다.

-A Set alert mode: fast, full, or none (alert file alerts only)
-a Display ARP packets
-b Log packets in tcpdump format (much faster!)
-c <rules> Use Rules File <rules>
-C Print out payloads with character data only (no hex)
-d Dump the Application Layer
-D Run Snort in background (daemon) mode
-e Display the second layer header info
-F <bpf> Read BPF filters from file <bpf>
-g <gname> Run snort gid as <gname> group (or gid) after initialization
-h <hn> Home network = <hn>
-i <if> Listen on interface <if>
-I Add Interface name to alert output
-l <ld> Log to directory <ld>
-n <cnt> Exit after receiving <cnt> packets
-N Turn off logging (alerts still work)
-o Change the rule testing order to Pass|Alert|Log
-O Obfuscate the logged IP addresses
-p Disable promiscuous mode sniffing
-P <snap> set explicit snaplen of packet (default: 1514)
-q Quiet. Don't show banner and status report
-r <tf> Read and process tcpdump file <tf>
-s Log alert messages to syslog
-S <n=v> Set rules file variable n equal to value v
-t <dir> Chroots process to <dir> after initialization
-u <uname> Run snort uid as <uname> user (or uid) after initialization
-v Be verbose
-V Show version number
-X Dump the raw packet data starting at the link layer

rule 파일은 http://www.snort.org/downloads/snortrules.tar.gz 에서 받으시면 되고
rule 에 대한 자세한 설명은 http://www.snort.org/cgi-bin/done.cgi 에서 확인 하실 수 있습니다.
} 참조 끝

5. snort에 의한 로그파일은 /var/log/snort에 쌓이게된다. ( alert )

List of Articles
번호 제목 날짜 조회 수
237 split 명령어 (파일 나누기) 2021.03.26 76715
236 [CentOS 7] SSH 무작위 로그인 시도 막기 ( Fail2Ban ) 2018.03.28 69708
235 tomcat - server.xml 설정 file 2017.03.11 67361
234 리눅스서버 모니터링 rstatd 설치 2017.04.28 27358
233 fdisk로 파티션 삭제하기 2015.06.10 26046
232 fdisk로 파티션 삭제하기 2015.06.09 21723
231 CentOS6.6+httpd2.4.16+Mariadb10.0.20+php5.6.11 Source 설치.... file 2016.09.25 14749
230 bash 스크립트에서 네트워크 정보 확인하기 2014.02.27 14282
229 원격 접속 FreeNX (NOMACHINE) 설치/접속 (vnc 보다 훨 2014.02.27 12307
228 리눅스 읽기전용 파일시스템 / 파일 입/출력 오류 2016.07.22 12175
227 Centos7 64bit 웹서버 만들기-PHP설치 CAP5 file 2015.07.17 11979
226 php-5.2.17 make시에 오류 발생 make: *** [ext/dom/node.lo] 오류 1 2016.03.18 10746
225 이온큐브로더(ioncube) 설치 매뉴얼 2016.03.18 10391
224 CentOS 7 에 아파치(httpd) 설치 2015.07.16 10304
223 웹서버 모니터링 툴 awststs 2014.03.26 10269
222 파일 속성 명령어 : chattr, lsattr 2014.02.27 9619
221 libphp5.so: undefined symbol: unixd_config 2016.03.18 9577
220 iptable에서 TCP SYN Flooding 차단 설정 2014.02.27 9555
219 [CentOS 6.5] Tomcat 설치 및 구동 file 2017.03.11 9483
218 MySQL Linux Port 방화벽 설정(3306) file 2017.03.11 9470
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved