보안 · 4 min read · Oct 16, 2025
침입 탐지: Snort, Base, MySQL, 및 Apache2를 Ubuntu 7.10 (Gutsy Gibbon)에서 사용하는 방법 (업데이트)
침입 탐지: Snort, Base, MySQL, 및 Apache2를 Ubuntu 7.10 (Gutsy Gibbon)에서 사용하는 방법 (업데이트)
이 튜토리얼은 DevilMan이 작성한 다른 방법을 기반으로 하지만, 모든 패키지를 수동으로 컴파일하거나 GUI를 사용하여 소프트웨어를 설치하는 아이디어는 마음에 들지 않았습니다. 이 방법은 Gutsy 서버 또는 Gutsy 데스크탑에서 작동합니다. 그 말은, 이 방법의 일부는 원본에서 직접 복사한 것입니다.
이 튜토리얼에서는 Snort(침입 탐지 시스템(IDS)), BASE(기본 분석 및 보안 엔진), MySQL 및 Apache2를 Ubuntu 7.10 (Gutsy Gibbon)에서 소스에서 설치하고 구성하는 방법을 설명합니다. Snort는 네트워크를 모니터링하고 가능한 위협에 대해 경고하는 데 도움을 줄 것입니다. Snort는 로그 파일을 MySQL 데이터베이스에 출력하며, BASE는 이를 사용하여 웹 브라우저에서 그래픽 인터페이스를 표시합니다.
1. 루트 권한 얻기
이 설치는 루트 사용자로 하는 것이 가장 쉽습니다.
sudo su -2. 패키지 설치하기
다음 명령은 이 설정을 작동시키기 위해 필요한 모든 패키지를 설치합니다:
apt-get install libpcap0.8-dev libmysqlclient15-dev mysql-client-5.0 mysql-server-5.0 bison flex apache2 libapache2-mod-php5 php5-gd php5-mysql libphp-adodb php-pear libc6-dev g++ gcc pcregrep libpcre3-dev3. Snort 다운로드 및 컴파일하기
Gutsy 저장소의 Snort 패키지는 구식입니다. 그래서 저는 최신 버전을 다운로드하여 설치하는 것을 선호했습니다. 이것이 우리가 처음부터 컴파일할 유일한 것입니다.
작성 시점의 Snort 최신 버전은 2.8.0.1입니다.
먼저 작업 디렉토리로 이동합시다:
cd /usr/src/웹 브라우저를 열고 http://www.snort.org/dl로 이동하여 가장 최근 릴리스를 마우스 오른쪽 버튼으로 클릭하고 링크 위치 복사를 선택합니다.
a. Snort 및 Snort 규칙 다운로드하기
wget http://www.snort.org/dl/current/snort-2.8.0.1.tar.gz규칙에 대한 몇 가지 옵션이 있습니다. 다음 명령은 공개 규칙을 다운로드하지만, Snort 사이트에서 빠른 등록을 통해 더 최신 규칙을 얻을 수 있습니다. 선택은 여러분의 몫이지만, 다음 명령은 적절한 URL로 동일하게 실행됩니다:
wget http://snort.org/pub-bin/downloads.cgi/Download/vrt_pr/snortrules-pr-2.4.tar.gzb. 압축 해제 및 컴파일 준비하기
tar zxvf snort-2.8.0.1.tar.gz
cd snort-2.8.0.1
tar zxvf ../snortrules-pr-2.4.tar.gzc. 이제 컴파일하기
./configure -enable-dynamicplugin --with-mysql
make
make install이 디렉토리를 잘 보관하세요. 나중에 Snort를 제거하려면 간단히 다음을 실행할 수 있습니다:
make uninstalld. 파일을 적절한 위치로 이동하기
이제 Snort의 규칙 및 구성을 적절한 위치로 이동해야 합니다.
mkdir /etc/snort /etc/snort/rules /var/log/snort
cd /usr/src/snort-2.8.0.1/etc
cp * /etc/snort/
cd ../rules
cp * /etc/snort/rules4. Snort 구성하기
Snort의 snort.conf 파일을 우리의 필요에 맞게 수정해야 합니다.
좋아하는 텍스트 편집기(nano, vi, vim 등)로 /etc/snort/snort.conf를 엽니다.
# vi /etc/snort/snort.conf“ var HOME_NET any “을 “ var HOME_NET 192.168.1.0/24 “로 변경합니다(귀하의 홈 네트워크는 192.168.1.0과 다를 수 있습니다).
“ var EXTERNAL_NET any “을 “ var EXTERNAL_NET !$HOME_NET “로 변경합니다(이는 HOME_NET을 제외한 모든 것이 외부라는 의미입니다).
“ var RULE_PATE ../rules “을 “ var RULE_PATH /etc/snort/rules “로 변경합니다.
목록을 아래로 스크롤하여 “ # output database: log, mysql, user= “가 있는 섹션으로 이동합니다. 이 줄 앞의 “ # “를 제거합니다.
“ user=root “을 “ user=snort “로 변경하고, “ password=password “을 “ password=snort_password “로 변경하며, “ dbname=snort “로 변경합니다.
사용자 이름, 비밀번호 및 데이터베이스 이름을 메모해 두세요. MySQL 데이터베이스를 설정할 때 이 정보가 필요합니다.
저장하고 종료합니다.
보안을 위해 구성 파일의 권한을 변경합니다(감사합니다, rojo):
# chmod 600 /etc/snort/snort.conf5. MySQL 데이터베이스 설정하기.
MySQL 서버에 로그인합니다.
# mysql -u root -pSnort 데이터베이스를 생성합니다. ‘snort_password’를 다른 것으로 변경해야 합니다!
mysql> create database snort;
grant all privileges on snort.* to 'snort'@'localhost' identified by 'snort_password'; mysql> exit우리는 데이터베이스 레이아웃을 위해 Snort 스키마를 사용할 것입니다.
# mysql -D snort -u snort -p < /usr/src/snort-2.8.0.1/schemas/create_mysql참고: 프롬프트가 나타나면 Snort DB 사용자 비밀번호를 사용하세요.
6. Snort 테스트할 시간
터미널에 입력합니다:
# snort -c /etc/snort/snort.conf모든 것이 잘 되었다면 ASCII 돼지를 볼 수 있어야 합니다.
테스트를 종료하려면 ctrl + c를 누릅니다.
참고: 오류가 발생하면 /etc/snort/rules/web-misc.rules의 97, 98 및 452 줄을 주석 처리해 보세요. 과거에 문제가 있었지만 지금은 더 이상 문제가 없는 것 같습니다.
7. BASE 다운로드 및 설치하기
웹 브라우저를 열고 http://sourceforge.net/project/showfiles.php?group_id=103348로 이동합니다.
다운로드를 클릭한 다음 최신 tar.gz 패키지를 마우스 오른쪽 버튼으로 클릭하고 링크 복사를 선택합니다(작성 시점에서 base-1.3.9입니다).
터미널에 입력합니다:
cd
wget http://easynews.dl.sourceforge.net/sourceforge/secureideas/base-1.3.9.tar.gz이제 웹 문서 루트로 이동합니다(기본적으로 /var/www입니다), tarball의 압축을 풀고 BASE 구성을 위해 필요한 권한을 설정합니다:
cd /var/www/
tar zxvf ~/base-1.3.9.tar.gz
cd ..
chmod 757 base-1.3.9몇 가지 Pear 모듈이 활성화되어 있는지 확인하고 싶습니다:
pear install Image_Color
pear install Image_Canvas-alpha
pear install Image_Graph-alpha8. BASE 설정하기
웹 브라우저를 열고 http://YOUR.IP.ADDRESS/base-1.3.9/setup로 이동합니다.
첫 페이지에서 계속하기를 클릭합니다.
- 5단계 중 1단계: ADODB의 경로를 입력합니다.
이 경로는 /usr/share/php/adodb입니다. - 5단계 중 2단계:
데이터베이스 유형 = MySQL, 데이터베이스 이름 = snort, 데이터베이스 호스트 = localhost, 데이터베이스 사용자 이름 = snort, 데이터베이스 비밀번호 = snort_password - 5단계 중 3단계: 인증을 사용하려면 여기에서 사용자 이름과 비밀번호를 입력하고 상자를 체크합니다.
- 5단계 중 4단계: BASE AG 생성 클릭.
- 5단계 중 5단계: 4단계가 완료되면 아래에서 5단계로 계속 클릭합니다.
이 페이지를 북마크하세요.
/var/www/base-1.3.9 폴더의 권한을 다시 변경합니다.
# chmod 755 /var/www/base-1.3.9완료되었습니다. 축하합니다!!!
터미널에서 Snort를 시작하려면 다음을 입력합니다(eth0를 귀하의 머신에 맞는 인터페이스로 변경해야 합니다):
# snort -c /etc/snort/snort.conf -i eth0 -D이 명령은 eth0 인터페이스를 사용하여 Snort를 데몬 모드로 시작합니다. 이 명령을 /etc/rc.local 파일에 추가하여 재부팅 후 시작되도록 할 수 있습니다.
실행 중인지 확인하려면 다음 명령으로 확인할 수 있습니다:
# ps aux | grep snort실행 중이라면 snort -c /etc/snort/snort.conf -i eth0 -D와 유사한 항목을 볼 수 있습니다.
자신만의 Snort 규칙을 작성하는 방법을 배우고 싶다면 http://www.snort.org/docs/snort_manual/node16.html에 가이드를 확인하세요.
행운을 빕니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.