How to install IPS(suricata) on unubntu 20.04

2021. 9. 8. 20:33OS/리눅스

반응형

ㅇSnort와 Suricata의 차이점

-snort 룰 완벽 호환

-GPU하드웨어 가속지원

-Lua 시그니처 작성 가능

-multi-core, multi-threading 지원

 

ㅇ관련 dependency 확인 및 설치
$ sudo apt install -y libpcre3 libpcre3-dbg libpcre3-dev build-essential libpcap-dev libyaml-0-2 \
libyaml-dev pkg-config zlib1g zlib1g-dev make libmagic-dev libjansson4 libjansson-dev libnfnetlink0 \
libnetfilter-queue-dev libnetfilter-queue1 libnetfilter-log-dev libnetfilter-log1 libnfnetlink-dev \
libcap-ng-dev libnspr4-dev libnss3-dev liblz4-dev rustc cargo libhtp2

패키지 명 관련 패키지 설명
libpcre3 libpcre
libpcre3-dbg
libpcre3-dev
펄호환 정규표현식
build-essential - 개발에 필요한 기본 라이브러리
libyaml libyaml-0-2
libyaml-dev
인간 친화적 data serialization 으로
프로그래밍 언어에 대한 표준
zlib1g zlib1g
zlib1g-dev
gzip파일을 읽고 쓸 수 있도록 해주는 어플리케이션
libmagic libmagic-dev 파일 명령을 지원하는 라이브러리
libjasson libjansson4
libjansson-dev
JSON데이터를 인코딩/디코딩 할 수 있도록 지원해줌
libnfnetlink libnfnetlink0
libnetfilter-queue-dev
libnetfilter-queue1
libnetfilter-log-dev
libnetfilter-log1
libnfnetlink-dev
커널-유저 간 통신을 하게 해주는 로우레벨 넷필터
libnspr libnspr4-dev 
libnss3-dev
포터블 런타임 라이브러리
liblz4 liblz4-dev 멀티코어 CPU에서 고속 지원
libhtp2 libhtp2 suricata에서 사용하는 HTTP스트림을 위한 parser

ㅇsuricata 설치파일 다운로드 및 압축해제
$ wget https://www.openinfosecfoundation.org/download/suricata-6.0.3.tar.gz
$ tar xvzf suricata-6.0.3.tar.gz
$ cd suricata-6.0.3/

 

ㅇsuricata 설치
$ ./configure --enable-nfqueue --disable-gccmarch-native
$ sudo make
$ sudo make install-full

 

ㅇsuricata 설정 및 확인
$ sudo sysctl -w net.ipv4.ip_forward=1

$ sudo ldconfig
$ sudo iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE

$ sudo iptables -I FORWARD -j NFQUEUE
$ sudo suricata -c /usr/local/etc/suricata/suricata.yaml -q 0

 

 

#리눅스에서 사용하는 IPS(suricata)는 다음과 같은 과정을 거치게 된다.

 

반응형