天天看點

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

您或許是由于多次Snort安裝失敗的痛苦經曆對他産生了陰影,或許還停留在在尋找更好的安裝教程的旅程上,.......看完下文之後,希望對Snort安裝不再犯怵。

整個安裝系統分為以下三個階段。

第一階段

本階段主要是準備環境,調試Snort主程式,難度系數****

步驟一:需要準備的軟體環境:
  • VMware workstation 15 Pro
  • CentOS-7-x86_64-Minimal-1908.iso
  • Cent OS 7 最小化安裝
  • libdnet-1.12.tg
  • daq-2.0.7.tar.gz
  • snort-2.9.16.tar.gz
  • barnyard2-2-1.13.tar.gz
  • adodb-5.20.17
  • snortrules-snapshot-29160.tar.gz
  • base-1.4.5.tar.gz

仔細核對無誤後,開始用最小化安裝模式來安裝CentOS7

檢驗

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
步驟二:安裝相關依賴包

yum install -y epel-release

yum install -y gcc gcc-c++ flex bison zlib-devel zlib-static libpcap pcre-devel pcre-static libpcap-devel tcpdump git libtool luajit luajit-devel openssl openssl-devel net-tools

步驟三:安裝libdnet

tar -zxvf libdnet-1.12.tgz

cd /usr/local/src/libdnet-1.12/

./configure

make && make install

步驟四: 安裝DAQ 2.0.7

tar zxvf daq-2.0.7.tar.gz

cd daq-2.0.7

aclocal

autoconf

automake

./configure

make && make install

步驟五:安裝snort 2.9.16

tar zxvf snort-2.9.16.tar.gz

cd snort-2.9.16

./configure --enable-sourcefire

make && make install

步驟六:添加使用者群組
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
步驟七:準備配置 Snort

mkdir /etc/snort/

cd /etc/snort/

tar zxvf /usr/local/src/snortrules-snapshot-29160.tar.gz -C .

cp /etc/snort/etc/sid-msg.map /etc/snort

cp /usr/local/src/snort-2.9.16/etc/* .

檢視/etc/snort目錄

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

chown -R snort:snort *

touch /etc/snort/rules/white_list.rules

touch /etc/snort/rules/black_list.rules

步驟八,配置snort.conf

vi /etc/snort/snort.conf

修改位置如下:

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

登出247行内容

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

加入下面一行

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

完成snort.conf配置,儲存退出。

步驟九 測試Snot

測試snort分為兩部分内容:snort程式啟動測試和snort報警測試。

添加測試規則

vi /etc/snort/rules/local.rules

alert icmp any any -> $HOME_NET any (msg:"ICMP Packet Detected";sid:1000003;rev:1;)

輸入測試指令

snort -T -i ens33 -u snort -g snort -c /etc/snort/snort.conf

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

顯示Snort successfully validated the configuration!後程式自動退出。

snort報警測試

打開兩個終端分别輸入下面的指令:

啟動snort

snort -i ens33 -c /etc/snort/snort.conf -A fast

在另一個終端先觀察

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

在沒收到ICMP包是,系統不會報警。

開始ping Snort伺服器

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

收到報警

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

snort報警測試成功。

在啟動snort的終端上,輸入Ctrl+C退出程式。

第二階段

第一階段我們成功的完了将snort報警記錄到檔案,這一階段,我們不在向/var/log/snort目錄下的檔案記錄,而是将報警記錄存放到MySQL資料庫中。我們需要完成以下步驟。

步驟1:安裝資料庫

yum install –y mariadb-server mariadb-devel

開機啟動資料庫

systemctl enable mariadb.service

啟動資料庫

systemctl start mariadb

為資料庫管理者root賦予密碼(暫定為123456)

/usr/bin/mysqladmin -u root password '123456'

為了得到資料庫的模闆我們需要解壓barnyard2-2-1.13.tar.gz檔案

cd /usr/local/src

tar zxvf barnyard2-2-1.13.tar.gz

步驟2:設定權限

建立Snort資料庫并設定讀取權限。

登入資料庫

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

CREATE DATABASE snort;

USE snort;

CREATE USER 'snort'@'localhost' IDENTIFIED BY '123456';

建立使用者snort,通路本機資料庫的密碼是123456

GRANT CREATE,SELECT,UPDATE,INSERT,DELETE ON snort.* TO [email protected] IDENTIFIED BY '123456';

賦予名為“snort”的資料庫權限,授權使用者snort對資料庫的操作權限.

SET PASSWORD FOR 'snort'@'localhost'=PASSWORD('123456');

為使用者snort設定通路密碼

SOURCE /usr/local/src/barnyard2-2-1.13/schemas/create_mysql;

通過引入檔案create_mysql來建立資料庫結構

FLUSH PRIVILEGES;

下面來檢視資料庫snort的表

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

這隻是一個空表沒有資料,我們需要繼續操作。

步驟3:安裝和配置Barnyard2

cd /usr/local/src/barnyard2-2-1.13/

./autogen.sh

./configure --with-mysql --with-mysql-libraries=/usr/lib64/mysql

make && make install

步驟4:準備配置barnyard2

mkdir /var/log/barnyard2

chown snort:snort /var/log/barnyard2

touch /var/log/snort/barnyard2.waldo

chown snort:snort /var/log/snort/barnyard2.waldo

cp /usr/local/src/barnyard2-2-1.13/etc/barnyard2.conf /etc/snort

vi /etc/snort/barnyard2.conf

修改如下幾處

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

配置完成,儲存退出。

步驟5:測試banyard2
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

2-3分鐘後完成測試自動退出程式。

步驟6: snort+barnyard2測試

下面首先啟動snort

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

然後,啟動barnyard2

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

接着,觀察/var/log/snort目錄

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

沒有ping包之前的狀态。

在其他機器上ping Snort伺服器。再次觀察snort目錄

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

觀察資料庫中的報警記錄條數

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

這樣snort.log.時間戳在存儲資料包的同時,将報警存入資料庫。

由此證明實驗成功。

步驟7:清空snort資料庫

mysql -u snort -p -D snort -e "delete from event"

第三階段: 安裝BASE

步驟0: 安裝http,php及相關擴充

yum install -y httpd php php-mysql php-gd

步驟1:準備軟體

yum install unzip

unzip adodb-5.20.17.zip

mv adodb5 /var/www/html/adodb

tar zxvf base-1.4.5.tar.gz -C /var/www/html/

mv /var/www/html/base-1.4.5/ /var/www/html/base

步驟2:修改php.ini

vi /etc/php.ini

centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

設定權限

chown -R apache:apache /var/www/html/

步驟3:重新開機服務設定防火牆

systemctl restart mariadb #重新開機MariaDB

systemctl enable httpd.service #開機啟動Http服務

systemctl restart httpd.service 重新開機http

開放80端口

firewall-cmd --zone=public --add-port=80/tcp

步驟4:檢查PHP環境
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
步驟5:臨時關閉SELinux

setenforce 0

步驟6:設定BASE
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝
centos7賦予全部權限_終結CentOS 7+Snort2.9+BASE 安裝

成功!

如果你對上面的安裝流程還有不明白的地方,可以參考視訊教程《手動建構Snort系統》