suricata配置說明
0x01 配置文件及日誌輸出簡要介紹
suricata有兩個重要輸入和輸出文件夾,輸入文件夾是配置文件夾,輸出文件夾時日誌文件夾。
配置文件夾的默認位置是在:/etc/suricata/
,文件夾大致的結構爲
$ tree -L 1
.
├── classification.config
├── classification.config.dpkg-old
├── reference.config
├── rules
├── suricata.yaml
└── threshold.config
需要重點關注的是suricata.yaml
文件和rules
文件夾
suricata.yaml
文件是對於suricata的軟件配置。
rules
文件夾中存放了相關的檢測規則,如果在suricata運行過程中有數據包分析觸發了檢測規則,則會以日誌的形式輸出。
0x02 進行配置
通過修改suricata.yaml
文件對軟件進行配置,大致的流程如下:
- 選擇suricata守護的網段或IP
- 配置日誌輸出器
- 選擇檢測規則
- 測試規則文件
具體的流程如下:
1 選擇suricata守護的網段或IP
suricat可以對單個IP、IP集合、單個網段、多個網段進行守護。
可以在suricata安裝的系統中使用命令ifconfig
或者ip addr
查看網段的具體信息
在/etc/suricata/suricata.yaml
文件中搜索關鍵字HOME_NET:
,進行配置。
HOME_NET:"[192.168.1.0/24]" # 守護單個網段
如果需要守護特定的IP,例如192.168.1.2
,則對HOME_NET
進行如下配置
HOME_NET:"[192.168.1.2]" # 守護單個IP
如果需要守護特定的多個IP,例如192.168.1.2
和192.168.1.3
,則可以對HOME_NET
做出下面的配置
HOME_NET:"[192.168.1.2,192.168.1.3]" # 守護多個IP
2 配置日誌輸出器
日誌文件夾默認是/var/log/suricata
,也可以配置更改,在配置文件/etc/suricata/suricata.yaml
中搜索default-log-dir
,進行配置輸出日誌文件夾
default-log-dir: /var/log/suricata
-
配置簡單輸出
fast.log
簡略的輸出,將suricata的報警輸出進行簡單的彙總,不是具體信息
outputs: # a line based alerts log similar to Snort's fast.log - fast: enabled: yes filename: fast.log append: yes # filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
-
配置警告輸出
警告輸出可以說是最爲重要的,只要觸發了規則,就會輸出警告。輸出是以輸出器爲單位進行輸出的,可以配置多個輸出器,也可以自定義輸出器要輸出的內容、文件格式等等
如果說
output
字段是總的控制輸出,那麼他的下級就是一個個的輸出器,如下,一共配置了三個輸出器,fast
、eve-log
outputs: - fast: enabled: yes filename: fast.log append: yes filetype: regular - eve-log: enabled: yes filetype: regular filename: alert.json types: - alert
fast
輸出器是所有觸發事件的簡要概括eve-log
是alert告警輸出,只要入侵行爲觸發了預定的規則,則將日誌輸出
-
規則配置
規則通常是採用開源的一些規則文件,也兼容snort的規則,也可以自己編寫規則
default-rule-path: /etc/suricata/rules rule-files: - local.rules - files.rules
規則文件存放在/etc/suricata/rules
裏面,是後綴爲.rules
的文件
如果要讓suricata啓動某個規則,在配置中啓動文件就可以了
0x03 測試配置文件
類似於snort,suricata在配置完後,最好也先測試一下配置文件
sudo suricata -T -c /etc/suricata/suricata.yaml