-->

[네트워크] 스노트(snort) 우분투(ubuntu) 설치 방법

지난 포스팅에서 무료로 사용할 수 있는 오픈소스 IDS/IPS/방화벽/웹방화벽 을 살펴보았다.

이번 포스팅에서는 그 중 첫번째인 snort를 우분투 16.04에 직접 구축, 사용해보려 한다.

 


관련포스팅

[네트워크] 오픈소스 무료 IDS/IPS/방화벽/웹방화벽 추천

 

 

snort 설치가이드 참조

snort 설치를 한두번 해봤는데 사람마다 OS, 버전, 환경 등이 달라서 그냥 무작정 블로그 보고 설치했다가 에러가 났던 기억이 난다. 그래서 그냥 공식 홈페이지의 'snort 설치 가이드'를 참고해서 설치하기로 했다. 나의 경우 현재 우분투 16.04를 쓰기 때문에 'Snort 2.99x on Ubuntu 14-16' 가이드를 참조했다.

 


snort 공식 홈페이지 - snort 설치 가이드

 

스노트(snort) 설치 가이드

 

그럼 가이드를 참조해서 먼저 설치를 해보자.

다 읽을 필요는 없고 아래 '10 Installing Snort'부터 실행해나가면 된다.

 

스노트(snort) 설치 가이드 '10 Installing Snort'

 

관련 패키지 설치

opensll, libssl-dev 등 snort 환경에 필요한 관련 패키지들을 먼저 설치해준 후, snort 소스코드를 다운받고 컴파일할 폴더를 하나 생성한다.

sudo apt-get install -y zlib1g-dev liblzma-dev openssl libssl-dev
sudo apt-get install -y libnghttp2-dev 
(추가: mkdir snort_src)
cd snort_src 

 

snort 다운로드

차근차근 실행해나가는 중, wget 명령에서 404 에러가 발생했다.

snort 버전 문제인가 싶어서 여러 버전으로 변경해보았지만 똑같았다.

wget https://snort.org/downloads/snort/snort-2.9.9.0.tar.gz

스노트(snort) wget 404 에러

 

그래서 그냥 아래 링크에서 직접 받아준다음에 폴더에 넣어줬다. 

설치 가이드상, 우분투 16 버전에 snort-2.9.9.0 을 다운받는걸로 보아 제일 호환성이 좋은건가 하고 그냥 맨나래 2.9.9.0을 다운받았다. 사실 2020년에 우분투 16.04는 좀 오래된 버전이긴 하다.

 


스노트 직접 다운로드

 

스노트(snort) 설치 파일 다운로드

 

 

위에서 파일을 직접 다운받은 후 snort_src 폴더에 넣어주고 압축을 풀어준다. 

tar -xvzf snort-2.9.9.0.tar.gz 
cd snort-2.9.9.0 
./configure --enable-sourcefire

 

 

snort 환경설정(configure)

tar 파일 압축을 풀고 아래와 같이 configure (환경설정)을 하려는데 이번엔 'dnet header not found' 에러가 났다.

./configure --enable-sourcefire

 

사실 이런 에러는 구글링하면 어지간한건 다 나온다. 패키지를 설치해주면 되는 문제다. libdumbnet-dev 패키지를 설치해주었다.

apt-get install libdumbnet-dev

 

추가적으로 configure 시 발생한 'daq_static library not found, go get it from ~' 와 관련한 에러는 snort 홈페이지에서 받으라고 친절하게 설명되어있다.

 

 

daq 파일은 wget으로 간단히 다운받을 수 있다. 이 주소 접근을 잘되는데 아까 wget은 왜 404가 떴는지 아직 알수가 없다. 다운만 받는다고 당연히 끝나는 건 아니다. 다운받은 daq 파일의 압축을 풀어주고 configure(환경설정), make(컴파일), make install(설치) 을 한꺼번에 해준다.

wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz
tar xvzf daq-2.0.6.tar.gz                 
cd daq-2.0.6
./configure && make && sudo make install

 

이제 다시 configure를 해주면 정상적으로 make 파일이 만들어진다.

 

 

 

Snort 컴파일 & 설치 (make & make install)

환경설정이 끝났으니 마지막으로 컴파일과 설치를 해준다. (+심볼릭 링크 설정)

make 
sudo make install
sudo ldconfig
sudo ln -s /usr/local/bin/snort /usr/sbin/snort

 

그럼 'snort -V' 로 snort 가 정상적으로 설치되었는지 확인할 수 있다. 정상적으로 설치되었다면 아래와 같은 예쁜 돼지가 반겨준다 :)

snort -V

Snort 설치 확인

 

 

이로써 우분투 16.04에 snort를 설치해보았다.

다음 포스팅에서는 설치한 snort의 룰과 옵션을 설명하고 실제로 내가 설정해놓은 정책에 의해 어떤식으로 탐지 결과가 나오는지 살펴보기로 한다.

 

댓글

Designed by JB FACTORY