Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Statistik ma'lumotlarga ko'ra, tarmoq trafigining hajmi har yili taxminan 50% ga oshadi. Bu uskunadagi yukning oshishiga olib keladi va, xususan, IDS/IPSning ishlash talablarini oshiradi. Siz qimmatbaho ixtisoslashtirilgan uskunani sotib olishingiz mumkin, ammo arzonroq variant mavjud - ochiq kodli tizimlardan birini amalga oshirish. Ko'pgina yangi ma'murlar bepul IPS-ni o'rnatish va sozlash juda qiyin deb o'ylashadi. Suricata misolida, bu mutlaqo to'g'ri emas - siz uni o'rnatishingiz va bir necha daqiqada bepul qoidalar to'plami bilan standart hujumlarni qaytarishni boshlashingiz mumkin.

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash
Snort yoki Suricata. 1-qism: Korporativ tarmog'ingizni himoya qilish uchun bepul IDS/IPSni tanlash

Nima uchun bizga boshqa ochiq IPS kerak?

Uzoq vaqt davomida standart deb hisoblangan Snort 6-yillarning oxiridan beri ishlab chiqilmoqda, shuning uchun u dastlab bitta ipli edi. Yillar davomida u IPvXNUMX qo'llab-quvvatlashi, dastur darajasidagi protokollarni tahlil qilish qobiliyati yoki ma'lumotlarga kirish uchun universal modul kabi barcha zamonaviy xususiyatlarga ega bo'ldi.

Asosiy Snort 2.X dvigateli bir nechta yadrolar bilan ishlashni o'rgandi, lekin bitta tishli bo'lib qoldi va shuning uchun zamonaviy apparat platformalaridan optimal tarzda foydalana olmaydi.

Muammo tizimning uchinchi versiyasida hal qilindi, biroq noldan yozilgan Suricata bozorda paydo bo'lishi uchun tayyorlash juda uzoq davom etdi. 2009 yilda u IPS funktsiyalariga ega bo'lgan Snort-ga ko'p tarmoqli alternativ sifatida ishlab chiqila boshlandi. Kod GPLv2 litsenziyasi ostida tarqatiladi, biroq loyihaning moliyaviy hamkorlari dvigatelning yopiq versiyasidan foydalanishlari mumkin. Tizimning birinchi versiyalarida kengaytirilishi bilan bog'liq ba'zi muammolar paydo bo'ldi, ammo ular juda tez hal qilindi.

Nega Suricata?

Suricata bir nechta modullarga ega (masalan, Snort): qo'lga olish, olish, dekodlash, aniqlash va chiqarish. Odatiy bo'lib, qo'lga kiritilgan trafik bitta oqimda dekodlashdan oldin ketadi, garchi bu tizimni ko'proq yuklaydi. Agar kerak bo'lsa, iplar sozlamalarda bo'linishi va protsessorlar o'rtasida taqsimlanishi mumkin - Suricata ma'lum bir uskuna uchun juda yaxshi optimallashtirilgan, ammo bu endi yangi boshlanuvchilar uchun HOWTO darajasi emas. Shuni ham ta'kidlash joizki, Suricata HTP kutubxonasiga asoslangan ilg'or HTTP tekshirish vositalariga ega. Ular, shuningdek, aniqlanmasdan trafikni qayd qilish uchun ishlatilishi mumkin. Tizim shuningdek, IPv6 dekodlashni qo'llab-quvvatlaydi, jumladan IPv4-in-IPv6, IPv6-in-IPv6 tunnellari va boshqalar.

Trafikni ushlab turish uchun turli interfeyslardan foydalanish mumkin (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING) va Unix Socket rejimida siz boshqa sniffer tomonidan olingan PCAP fayllarini avtomatik ravishda tahlil qilishingiz mumkin. Bundan tashqari, Suricata modulli arxitekturasi tarmoq paketlarini olish, dekodlash, tahlil qilish va qayta ishlash uchun yangi elementlarni ulashni osonlashtiradi. Shuni ham ta'kidlash kerakki, Suricata'da trafik standart operatsion tizim filtri yordamida bloklanadi. GNU/Linux-da IPS ishlashi uchun ikkita variant mavjud: NFQUEUE navbati (NFQ rejimi) va nol nusxasi (AF_PACKET rejimi) orqali. Birinchi holda, iptables-ga kiradigan paket NFQUEUE navbatiga yuboriladi, u erda foydalanuvchi darajasida qayta ishlanishi mumkin. Suricata uni o'z qoidalariga muvofiq boshqaradi va uchta hukmdan birini chiqaradi: NF_ACCEPT, NF_DROP va NF_REPEAT. Birinchi ikkitasi o'z-o'zidan tushunarli, ammo oxirgisi paketlarni belgilash va ularni joriy iptables jadvalining boshiga yuborish imkonini beradi. AF_PACKET rejimi tezroq, lekin tizimga bir qator cheklovlar qo'yadi: u ikkita tarmoq interfeysiga ega bo'lishi va shlyuz sifatida ishlashi kerak. Bloklangan paket oddiygina ikkinchi interfeysga uzatilmaydi.

Suricata-ning muhim xususiyati - Snort uchun ishlanmalardan foydalanish qobiliyati. Administrator, xususan, Sourcefire VRT va OpenSource Emerging Threats qoidalariga, shuningdek, Tijoriy Emerging Threats Pro-ga kirish huquqiga ega. Birlashtirilgan chiqish mashhur backendlar yordamida tahlil qilinishi mumkin va PCAP va Syslog-ga chiqish ham qo'llab-quvvatlanadi. Tizim sozlamalari va qoidalari YAML fayllarida saqlanadi, ularni o'qish oson va avtomatik ravishda qayta ishlanishi mumkin. Suricata dvigateli ko'plab protokollarni taniydi, shuning uchun qoidalarni port raqamiga bog'lash shart emas. Bundan tashqari, flowbits tushunchasi Suricata qoidalarida faol qo'llaniladi. Tetiklashni kuzatish uchun turli xil hisoblagichlar va bayroqlarni yaratish va qo'llash imkonini beruvchi seans o'zgaruvchilari ishlatiladi. Ko'pgina IDSlar turli TCP ulanishlarini alohida ob'ektlar sifatida ko'rib chiqadi va hujum boshlanishini ko'rsatish uchun ular orasidagi aloqani ko'rmasligi mumkin. Suricata butun rasmni ko'rishga harakat qiladi va ko'p hollarda turli ulanishlar bo'ylab tarqalgan zararli trafikni tan oladi. Biz uning afzalliklari haqida uzoq vaqt gapirishimiz mumkin, biz o'rnatish va sozlashga o'tganimiz ma'qul.

Qanday qilib o'rnatiladi?

Biz Suricata-ni Ubuntu 18.04 LTS bilan ishlaydigan virtual serverga o'rnatamiz. Barcha buyruqlar superuser (root) sifatida bajarilishi kerak. Eng xavfsiz variant serverga standart foydalanuvchi sifatida SSH orqali ulanish va keyin imtiyozlarni oshirish uchun sudo yordam dasturidan foydalanishdir. Avval biz kerakli paketlarni o'rnatishimiz kerak:

sudo apt -y install libpcre3 libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libmagic-dev libcap-ng-dev libjansson-dev pkg-config libnetfilter-queue-dev geoip-bin geoip-database geoipupdate apt-transport-https

Tashqi omborni ulash:

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

Suricata-ning so'nggi barqaror versiyasini o'rnating:

sudo apt-get install suricata

Agar kerak bo'lsa, standart eth0 ni serverning tashqi interfeysining haqiqiy nomi bilan almashtirib, konfiguratsiya fayllari nomini tahrirlang. Standart sozlamalar /etc/default/suricata faylida saqlanadi va maxsus sozlamalar /etc/suricata/suricata.yaml da saqlanadi. IDS konfiguratsiyasi asosan ushbu konfiguratsiya faylini tahrirlash bilan cheklangan. Uning nomi va maqsadi bo'yicha Snortdagi hamkasblari bilan bir xil bo'lgan ko'plab parametrlar mavjud. Shunga qaramay, sintaksis butunlay boshqacha, lekin faylni o'qish Snort konfiguratsiyasiga qaraganda ancha oson va u ham yaxshi sharhlangan.

sudo nano /etc/default/suricata

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

ΠΈ

sudo nano /etc/suricata/suricata.yaml

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Diqqat! Boshlashdan oldin, siz vars bo'limidagi o'zgaruvchilarning qiymatlarini tekshirishingiz kerak.

Sozlashni yakunlash uchun qoidalarni yangilash va yuklab olish uchun suricata-update dasturini o'rnatishingiz kerak bo'ladi. Buni qilish juda oson:

sudo apt install python-pip
sudo pip install pyyaml
sudo pip install <a href="https://github.com/OISF/suricata-update/archive/master.zip">https://github.com/OISF/suricata-update/archive/master.zip</a>
sudo pip install --pre --upgrade suricata-update

Keyinchalik Emerging Threats Open qoidalarini o'rnatish uchun suricata-update buyrug'ini ishga tushirishimiz kerak:

sudo suricata-update

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Qoida manbalari ro'yxatini ko'rish uchun quyidagi buyruqni bajaring:

sudo suricata-update list-sources

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Qoida manbalarini yangilash:

sudo suricata-update update-sources

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Biz yangilangan manbalarni yana bir bor ko'rib chiqamiz:

sudo suricata-update list-sources

Agar kerak bo'lsa, mavjud bepul manbalarni qo'shishingiz mumkin:

sudo suricata-update enable-source ptresearch/attackdetection
sudo suricata-update enable-source oisf/trafficid
sudo suricata-update enable-source sslbl/ssl-fp-blacklist

Shundan so'ng siz qoidalarni yana yangilashingiz kerak:

sudo suricata-update

Shu nuqtada, Suricata-ning Ubuntu 18.04 LTS-da o'rnatilishi va dastlabki konfiguratsiyasi tugallangan deb hisoblanishi mumkin. Keyin qiziqarli boshlanadi: keyingi maqolada VPN orqali virtual serverni ofis tarmog'iga ulaymiz va barcha kiruvchi va chiquvchi trafikni tahlil qilishni boshlaymiz. Biz DDoS hujumlarini, zararli dasturlar faolligini va umumiy tarmoqlardan foydalanish mumkin bo'lgan xizmatlarning zaifliklaridan foydalanishga urinishlarni bloklashga alohida e'tibor qaratamiz. Aniqlik uchun eng keng tarqalgan turdagi hujumlar simulyatsiya qilinadi.

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Snort yoki Suricata. 2-qism: Suricata-ni o'rnatish va dastlabki sozlash

Manba: www.habr.com

a Izoh qo'shish