서버 설치 · 3 min read · Sep 24, 2025

우분투 24.04 서버에 Suricata IDS 설치하는 방법

Suricata는 OSIF(오픈 인포섹 재단)에서 개발한 오픈 소스 IDS(침입 탐지 시스템) 및 IPS(침입 방지 시스템)입니다. 네트워크 트래픽을 모니터링하고 검사하며 모든 패킷을 처리하여 악의적인 네트워크 활동을 감지할 수 있습니다. 로그 이벤트를 설정하고, 경고를 트리거하며, 의심스러운 네트워크 활동에 대해 트래픽을 차단할 수 있습니다.

이 튜토리얼에서는 우분투 24.04 서버에 Suricata IDS를 설치하는 방법을 보여줍니다. Suricata를 설치하고 구성하고, ET 서명 및 규칙을 다운로드한 다음, systemd 서비스로 Suricata를 백그라운드에서 시작합니다.

전제 조건

이 가이드를 시작하기 전에 다음 사항을 확인하십시오:

  • 우분투 24.04 서버.
  • 관리자 권한이 있는 비루트 사용자.

소스 코드에서 설치하기

이 섹션에서는 시스템에서 수동으로 컴파일하여 Suricata를 소스 코드에서 설치하는 방법을 배웁니다. 그 전에 Suricata를 컴파일하기 위한 패키지 종속성을 설치합니다.

먼저, 아래 명령어를 실행하여 우분투 패키지 인덱스를 업데이트하고 빌드 종속성을 설치합니다. 설치를 확인하려면 ‘ Y ‘를 입력하십시오.

sudo apt update  
sudo apt install autoconf automake build-essential cargo \  
cbindgen libjansson-dev libpcap-dev libcap-ng-dev libmagic-dev liblz4-dev libpcre2-dev libtool \  
libyaml-dev make pkg-config rustc zlib1g-dev

install deps

이제 ‘ /usr/src ‘ 디렉토리로 이동하여 아래 명령어를 실행하여 Suricata 소스 코드를 다운로드하고 추출합니다.

cd /usr/src
wget https://www.openinfosecfoundation.org/download/suricata-7.0.6.tar.gz  
tar -xf suricata-7.0.6.tar.gz

suricata-7.0.6 ‘ 디렉토리로 이동하여 다음과 같이 Suricata 컴파일을 구성합니다. 이를 통해 ‘ /usr/bin ‘ 디렉토리에 suricata 바이너리 파일을 설치하고, ‘ /etc/suricata ‘에 suricata 구성을, ‘ /var/lib/suricata ‘에 데이터 디렉토리를 설정합니다.

cd suricata-7.0.6/  
./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var

configure suricata compile

프로세스가 완료되면 아래 명령어를 사용하여 suricata를 복사하고 설치합니다.

sudo make && sudo make install-full

설치가 완료되면 다음과 같은 메시지가 표시됩니다:

compile and install-full

마지막으로 아래 명령어를 실행하여 ‘ suricata ‘ 바이너리 파일의 위치를 확인하고 버전을 확인합니다.

which suricata  
suricata --build-info

다음 출력에서 suricata ‘ 7.0.6 ‘가 ‘ /usr/bin/suricata ‘에 설치된 것을 확인할 수 있습니다.

check version

PPA 리포지토리를 통한 설치

APT를 통해 Suricata를 설치하려면 Suricata PPA 리포지토리를 우분투 시스템에 추가해야 합니다. 또한 ‘ software-properties ‘ 패키지가 설치되어 있는지 확인하십시오.

다음 명령어로 Suricata PPA 리포지토리를 추가합니다:

sudo add-apt-repository ppa:oisf/suricata-stable

add ppa

이제 우분투 패키지 인덱스 리포지토리를 업데이트하고 아래 ‘ apt ‘ 명령어로 Suricata를 설치합니다.

sudo apt update  
sudo apt install suricata

설치를 진행하려면 ‘ Y ‘를 입력하십시오.

update install

설치가 완료되면 아래 명령어로 suricata 바이너리 파일과 버전을 확인합니다.

which suricata  
suricata --build-info

아래에서 APT 패키지 관리자를 통해 Suricata 7.0.6가 설치된 것을 확인할 수 있습니다.

check version

마지막으로 아래 명령어를 실행하여 ‘ suricata ‘ 서비스를 활성화하고 중지합니다. 구성하기 전에 Suricata를 종료해야 합니다.

sudo systemctl enable suricata  
sudo systemctl stop suricata

stop service

Suricata 구성하기

이 섹션에서는 Suricata를 구성하여 네트워크 인터페이스를 모니터링합니다. Suricata는 대상 인터페이스에서 악의적인 트래픽을 캡처합니다.

기본 Suricata 구성 ‘ /etc/suricata/suricata.yaml ‘을 ‘ nano ‘ 편집기로 엽니다.

sudo nano /etc/suricata/suricata.yaml

로컬 네트워크를 사용하는 경우 ‘ HOME_NET ‘ 및 ‘ EXTERNAL_NET ‘ 변수에 집 네트워크 서브넷을 추가합니다.

HOME_NET: "[192.168.5.0/24]"  
...  
EXTERNAL_NET: "!$HOME_NET"

af-packet ‘ 섹션 내에서 기본 ‘ interface ‘를 대상 인터페이스로 변경합니다. 이 예에서는 Suricata로 ‘ enp0s3 ‘ 인터페이스를 모니터링합니다.

af-packet:  
 - interface: enp0s3

라이브 규칙 재로드를 활성화하기 위해 ‘ detect-engine ‘ 옵션에 ‘ rule-reload: true ‘를 추가합니다.

detect-engine:  
 - rule-reload: true

작업이 완료되면 파일을 저장하고 편집기를 종료합니다.

Suricata 규칙 세트 업데이트

Suricata를 시작하고 실행하기 전에 Suricata 서명 및 규칙을 다운로드하고 업데이트해야 합니다. 이는 ‘suricata-update’ 명령 유틸리티를 통해 수행할 수 있습니다.

아래 ‘ suricata-update ‘ 명령어를 실행하여 Suricata ET 규칙을 다운로드하고 업데이트합니다. ET 규칙이 없으면 Suricata가 시작되지 않습니다.

sudo suricata-update

Suricata 규칙은 다음과 같이 ‘ /var/lib/suricata/suricata.rules ‘ 파일에 기록됩니다:

update rules

testing

다음 명령어로 규칙의 출처를 확인할 수 있습니다:

sudo suricata-update list-sources

Suricata 실행하기

이제 Suricata를 구성하고 ET 규칙을 다운로드 및 업데이트했으므로 Suricata 규칙을 테스트하고 ‘suricata’ 서비스를 시작하고 확인합니다.

Suricata 규칙을 테스트하려면 아래 ‘ suricata ‘ 명령어를 실행합니다. 이는 ‘ /var/lib/suricata/suricata.rules ‘ 파일 내의 사용 가능한 규칙을 처리합니다.

sudo suricata -T -c /etc/suricata/suricata.yaml -v

오류가 없으면 ‘ suricata: 제공된 구성은 성공적으로 로드되었습니다. ‘라는 출력이 표시됩니다.

test suricata

이제 아래 명령어를 실행하여 ‘suricata’ 서비스를 백그라운드에서 시작하고 확인합니다.

sudo systemctl start suricata  
sudo systemctl status suricata

다음 출력에서 ‘ suricata ‘ 서비스가 실행 중인 것을 확인할 수 있습니다.

verify service

결론

축하합니다! 우분투 24.04 서버에 Suricata IDS 설치를 완료했습니다. 소스에서 수동으로 컴파일하는 방법과 APT 패키지 관리자를 통해 설치하는 두 가지 방법을 배웠습니다. 또한 Suricata를 구성하고, Suricata 서명 및 규칙을 업데이트하고, Suricata 규칙을 테스트하는 방법도 배웠습니다.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.