Suricata + ELK 簡單威脅檢測系統(tǒng)搭建

簡單威脅檢測系統(tǒng)搭建

簡介:本次實(shí)驗(yàn)基于開組件Suricata + ELK 進(jìn)行搭建乡话,運(yùn)行系統(tǒng)為centos。Suricata為開源檢測引擎挽霉,并將檢測數(shù)據(jù)傳入ES中進(jìn)行大數(shù)據(jù)檢索儒老。

圖比較詳細(xì):https://zhuanlan.zhihu.com/p/140397901


Suricata檢測引擎搭建

參考鏈接https**://linux.cn/article-6985-1.html

官網(wǎng)下載suricata安裝包仲义,并進(jìn)行解壓:

安裝依賴包:

sudo yum install wget libpcap-devel libnet-devel pcre-devel gcc-c++ automake autoconf libtool make libyaml-devel zlib-devel file-devel jansson-devel nss-devel

./configure --sysconfdir=/etc --localstatedir=/var

進(jìn)行編譯:

make

sudo make install

sudo make install-conf

sudo make install-rules

編譯后,配置文件默認(rèn)存放在/etc/Suricata议谷。

官方默認(rèn)規(guī)則更新下載:

pip install Suricata-updata 然后執(zhí)行 suricat-updata

自定義規(guī)則添加:

在rules 目錄下添加自定義規(guī)則 venus.rules.

通過vim將下面規(guī)則寫入,該規(guī)則是針對隧道軟件NPS特征進(jìn)行編寫踪危。

Nsp工具:http:*//github.com/ehang-io/nps

以下是pcap包中的特征

根據(jù)特征編寫相應(yīng)規(guī)則檢測

alert tcp any any -> any any (msg:"nps_socks"; flow:established; content:"{|22|ConnType|22||3a|"; content:"|22|Host|22|"; distance:0; content:"|22|Crypt|22|"; distance:0; sid:2003; rev:1;)

然后在/etc/Suricata.yaml 配置文件中加入venus.rules。

Suricata檢測執(zhí)行:

suricata -c /etc/suricata/suricata.yaml -i enp0s31f6

然后測試機(jī)上運(yùn)行nps的客戶端铝耻,與服務(wù)端通信誊爹。當(dāng)然你也可以寫一些簡單的規(guī)則進(jìn)行測試蹬刷,其實(shí)我已經(jīng)很簡單了。

查看告警日志:

詳細(xì)告警數(shù)據(jù)存放在/var/log/suricata/eve.json中(之后需要將其導(dǎo)入ELK中進(jìn)行檢索)频丘,簡單告警日志存放在/var/log/Suricata/fast.log中办成。


Jdk1.8環(huán)境部署

官方下載壓縮包并解壓至/opt:

添加環(huán)境變量:

Vim /etc/profile

完成后執(zhí)行./etc/profile,成功運(yùn)行java搂漠。

Elasticsearch數(shù)據(jù)庫搭建

官方下載壓縮包并解壓至/opt中:

創(chuàng)建新用戶

Es數(shù)據(jù)庫迂卢,默認(rèn)無法使用root進(jìn)行啟動(dòng),所以需要使用非root進(jìn)行啟動(dòng)或者修改配置文件桐汤,推薦使用非root啟動(dòng)而克。

useradd -d /opt/ -m ela

創(chuàng)建ela用戶,并為其授權(quán)/opt

修改ES配置文件:

允許任意用戶訪問怔毛,端口為9200.

啟動(dòng)ES常見錯(cuò)誤:

參考鏈接:https**://blog.csdn.net/zhang89xiao/article/details/68925294

1员萍、can not run elasticsearch as root

切換到非root用戶

2、main ERROR Could not register mbeans java.security.AccessControlException: access denied ("javax.management.MBeanTrustPermission" "register")

改變elasticsearch文件夾所有者到當(dāng)前用戶

sudo chown -R noroot:noroot elasticsearch

3拣度、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

sudo vi /etc/sysctl.conf

添加下面配置:

vm.max_map_count=655360

并執(zhí)行命令:

sudo sysctl -p

4碎绎、max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

sudo vi /etc/security/limits.conf

添加如下內(nèi)容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

sudo vi /etc/pam.d/common-session

添加 session required pam_limits.so

sudo vi /etc/pam.d/common-session-noninteractive

添加 session required pam_limits.so

ES數(shù)據(jù)庫啟動(dòng)運(yùn)行

Su ela 切換到ela用戶中。

執(zhí)行./opt/elasticsearch-5.6.0/binelasticsearch蜡娶。

Curl測試es正常運(yùn)行混卵。


Kibana可視化搭建

官方下載壓縮包并解壓至/opt:

修改配置文件:

/opt/kibana-5.6.9-linux-x86_64/config/kibana.yml

運(yùn)行啟動(dòng)kibana:

./kibana

訪問192.168.31.220:5601


Logstash日志收集搭建

簡介:主要功能為收集suricata告警日志,在進(jìn)行篩選過濾傳人ES窖张。

官方下載壓縮包并解壓至/opt:

編寫logstach.conf配置文件:

[root@localhost bin]# cat logstash.conf

input{

? ? file{

? ? ? ? type => ["void_feedback"]

? ? ? ? path => ["/var/log/suricata/eve.json"]

? ? ? ? start_position => "beginning"

? ? }

}

//通過fitler 對message信息進(jìn)行json過濾幕随,不然es無法檢索

filter {

? ? if [type] == "void_feedback" {

? ? ? ? json {

? ? ? ? ? ? source => "message"

? ? ? ? ? ? #target => "doc"

? ? ? ? ? ? #remove_field => ["message"]

? ? ? ? }? ? ? ?

? ? }

}

output{

? ? elasticsearch {

? ? ? index => "suricata-%{+YYYY.MM.dd}"

? ? ? hosts => ["127.0.0.1:9200"]

}

stdout{

? ? ? ? codec => rubydebug

? ? }

}

Logstach啟動(dòng)運(yùn)行:

./logstash -f logstash.conf

數(shù)據(jù)成功導(dǎo)入ES中


完成測試OK

訪問192.168.31.220(已使用nginx進(jìn)行端口轉(zhuǎn)發(fā)),通過kibana查看告警宿接。

YLL

2020-5-13

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赘淮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子睦霎,更是在濱河造成了極大的恐慌梢卸,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件副女,死亡現(xiàn)場離奇詭異蛤高,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)碑幅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進(jìn)店門戴陡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人沟涨,你說我怎么就攤上這事恤批。” “怎么了裹赴?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵喜庞,是天一觀的道長诀浪。 經(jīng)常有香客問我,道長延都,這世上最難降的妖魔是什么雷猪? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮晰房,結(jié)果婚禮上春宣,老公的妹妹穿的比我還像新娘。我一直安慰自己嫉你,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布躏惋。 她就那樣靜靜地躺著幽污,像睡著了一般。 火紅的嫁衣襯著肌膚如雪簿姨。 梳的紋絲不亂的頭發(fā)上距误,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天,我揣著相機(jī)與錄音扁位,去河邊找鬼准潭。 笑死,一個(gè)胖子當(dāng)著我的面吹牛域仇,可吹牛的內(nèi)容都是我干的刑然。 我是一名探鬼主播,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼暇务,長吁一口氣:“原來是場噩夢啊……” “哼泼掠!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起垦细,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤择镇,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后括改,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腻豌,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年嘱能,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吝梅。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,650評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡焰檩,死狀恐怖憔涉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情析苫,我是刑警寧澤兜叨,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布穿扳,位于F島的核電站,受9級特大地震影響国旷,放射性物質(zhì)發(fā)生泄漏矛物。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一跪但、第九天 我趴在偏房一處隱蔽的房頂上張望履羞。 院中可真熱鬧,春花似錦屡久、人聲如沸忆首。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽糙及。三九已至,卻和暖如春筛欢,著一層夾襖步出監(jiān)牢的瞬間浸锨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工版姑, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留柱搜,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓剥险,卻偏偏與公主長得像聪蘸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子表制,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,527評論 2 349