Debian Üzerinde Snort Nasıl Yapılandırılır

Snort, ücretsiz bir ağ saldırı tespit sistemidir (IDS). Daha az resmi olarak, ağınızı şüpheli etkinlikler için gerçek zamanlı olarak izlemenizi sağlar . Şu anda Snort'un Fedora, CentOS, FreeBSD ve Windows tabanlı sistemler için paketleri var. Tam kurulum yöntemi işletim sistemleri arasında değişiklik gösterir. Bu derste, Snort için doğrudan kaynak dosyalarından kurulum yapacağız. Bu rehber Debian için yazılmıştır.

Güncelleme, Yükseltme ve Yeniden Başlatma

Snort kaynaklarına el koymadan önce, sistemimizin güncel olduğundan emin olmalıyız. Bunu aşağıdaki komutları vererek yapabiliriz.

sudo apt-get update
sudo apt-get upgrade -y
sudo reboot

Kurulum öncesi yapılandırma

Sisteminiz yeniden başlatıldıktan sonra, SBPP'yi yükleyebildiğimizden emin olmak için bir dizi paket kurmamız gerekir. Gerekli olan bir dizi paket olduğunu anlayabildim, bu yüzden temel komut aşağıda.

sudo apt-get install flex bison build-essential checkinstall libpcap-dev libnet1-dev libpcre3-dev libnetfilter-queue-dev iptables-dev libdumbnet-dev zlib1g-dev -y

Tüm paketler yüklendikten sonra, kaynak dosyalarınız için geçici bir dizin oluşturmanız gerekir - bunlar istediğiniz her yerde olabilir. Ben kullanacağım /usr/src/snort_src. Bu klasörü oluşturmak için rootkullanıcı olarak oturum açmanız veya sudoizinlere sahip olmanız gerekir root.

sudo mkdir /usr/src/snort_src
cd /usr/src/snort_src

Veri Toplama Kütüphanesini (DAQ) Kurma

Snort için kaynak almadan önce DAQ'yu kurmamız gerekiyor. Kurulumu oldukça basittir.

wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz

Tarball'dan dosyaları ayıklayın.

tar xvfz daq-2.0.6.tar.gz

DAQ dizinine geçin.

cd daq-2.0.6

DAQ'yu yapılandırın ve yükleyin.

./configure; make; sudo make install

Bu son satır ./configureilk önce yürütülür . Sonra yürütür make. Son olarak, yürütür make install. Yazarken biraz tasarruf etmek için burada daha kısa sözdizimini kullanıyoruz.

Snort'u Yükleme

Dizinde bulunduğumuzdan emin olmak istiyoruz /usr/src/snort_src, bu nedenle şu dizine geçtiğinizden emin olun:

cd /usr/src/snort_src

Şimdi kaynakların dizinindeyiz tar.gz, kaynak dosyasını indireceğiz . Bu yazının yazıldığı sırada Snort'un en son sürümü 2.9.8.0.

wget https://www.snort.org/downloads/snort/snort-2.9.8.0.tar.gz

Snort'u fiilen kurmak için kullanılan komutlar DAQ için kullanılan komutlara çok benzer, ancak farklı seçenekleri vardır.

Snort kaynak dosyalarını ayıklayın.

tar xvfz snort-2.9.8.0.tar.gz

Kaynak dizine geçin.

cd snort-2.9.8.0

Kaynakları yapılandırın ve yükleyin.

 ./configure --enable-sourcefire; make; sudo make install

Snort'un kurulum sonrası

Snort yüklendikten sonra, paylaşılan kütüphanelerimizin güncel olduğundan emin olmamız gerekir. Bunu şu komutu kullanarak yapabiliriz:

sudo ldconfig

Bunu yaptıktan sonra Snort kurulumunuzu test edin:

snort --version

Bu komut çalışmazsa, bir sembolik bağlantı oluşturmanız gerekir. Bunu yazarak yapabilirsiniz:

sudo ln -s /usr/local/bin/snort /usr/sbin/snort
snort --version

Ortaya çıkan çıktı aşağıdakine benzer:

   ,,_     -*> Snort! <*-
  o"  )~   Version 2.9.7.5 GRE (Build 262)
   ''''    By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
           Copyright (C) 2014-2015 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using libpcap version 1.6.2
           Using PCRE version: 8.35 2014-04-04
           Using ZLIB version: 1.2.8

Kökten Çıkarma Snort

Şimdi snort yüklendiğine göre, çalışmasını istemiyoruz root, bu yüzden bir snortkullanıcı ve grup oluşturmamız gerekiyor . Yeni bir kullanıcı ve grup oluşturmak için şu iki komutu kullanabiliriz:

sudo groupadd snort
sudo useradd snort -r -s /sbin/nologin -c SNORT_IDS -g snort

Programı kaynağı kullanarak kurduğumuzdan, yapılandırma dosyalarını ve snort kurallarını oluşturmamız gerekiyor.

sudo mkdir /etc/snort
sudo mkdir /etc/snort/rules
sudo mkdir /etc/snort/preproc_rules
sudo touch /etc/snort/rules/white_list.rules /etc/snort/rules/black_list.rules /etc/snort/rules/local.rules

Dizinleri ve kuralları oluşturduktan sonra artık günlük dizini oluşturmamız gerekiyor.

sudo mkdir /var/log/snort

Son olarak, herhangi bir kural eklemeden önce, dinamik kuralları saklamak için bir yere ihtiyacımız var.

sudo mkdir /usr/local/lib/snort_dynamicrules

Önceki tüm dosyalar oluşturulduktan sonra, bunlara uygun izinleri ayarlayın.

sudo chmod -R 5775 /etc/snort
sudo chmod -R 5775 /var/log/snort
sudo chmod -R 5775 /usr/local/lib/snort_dynamicrules
sudo chown -R snort:snort /etc/snort
sudo chown -R snort:snort /var/log/snort
sudo chown -R snort:snort /usr/local/lib/snort_dynamicrules

Yapılandırma dosyalarını ayarlama

Bir sürü zaman kazanmak ve her şeyi kopyalayıp yapıştırmak zorunda kalmamak için, tüm dosyaları yapılandırma dizinine kopyalamanıza izin verin.

sudo cp /usr/src/snort_src/snort*/etc/*.conf* /etc/snort
sudo cp /usr/src/snort_src/snort*/etc/*.map /etc/snort

Şimdi yapılandırma dosyaları var, iki şeyden birini yapabilirsiniz:

  • Barnyard2'yi etkinleştirebilirsiniz
  • Veya yapılandırma dosyalarını yalnız bırakabilir ve istenen kuralları seçerek etkinleştirebilirsiniz.

Her iki durumda da, hala birkaç şeyi değiştirmek isteyeceksiniz. Okumaya devam et.

Yapılandırma

Gelen /etc/snort/snort.confdosya için, bir değişken değiştirmeniz gerekecektir HOME_NET. Dahili ağınızın IP bloğuna ayarlanmalıdır, böylece kendi ağınızın sunucuda oturum açma girişimlerini kaydetmez. Bu 10.0.0.0/24veya olabilir 192.168.0.0/16. 45 satırında /etc/snort/snort.conf, değişkeni HOME_NETağınızın IP bloğunun değerine değiştirin .

Ağımda şöyle görünüyor:

ipvar HOME_NET 192.168.0.0/16

Ardından, EXTERNAL_NETdeğişkeni şu şekilde ayarlamanız gerekir:

any

Bu sadece EXERNAL_NETsizin HOME_NETolmayan her şeye dönüşür .

Kuralların belirlenmesi

Sistemin büyük bir çoğunluğu oluşturulduğuna göre, bu küçük domuzcuk için kurallarımızı yapılandırmamız gerekiyor. Bir yerde etrafında hat 104 sizin de /etc/snort/snort.confdosyaya görmeniz gerekir bir "var" beyanı ve değişkenler RULE_PATH, SO_RULE_PATH, PREPROC_RULE_PATH, WHITE_LIST_PATH, ve BLACK_LIST_PATH. Değerleri kullandığımız yollara ayarlanmalıdır Un-rooting Snort.

var RULE_PATH /etc/snort/rules
var SO_RULE_PATH /etc/snort/so_rules
var PREPROC_RULE_PATH /etc/snort/preproc_rules
var WHITE_LIST_PATH /etc/snort/rules
var BLACK_LIST_PATH /etc/snort/rules

Bu değerler ayarlandıktan sonra, yaklaşık 548 satırından başlayarak geçerli kuralları silin veya yorumlayın.

Şimdi, yapılandırmanızın doğru olup olmadığını kontrol edelim. İle doğrulayabilirsiniz snort.

 # snort -T -c /etc/snort/snort.conf

Aşağıdakine benzer bir çıktı göreceksiniz (kısalık için kesilmiş).

 Running in Test mode

         --== Initializing Snort ==--
 Initializing Output Plugins!
 Initializing Preprocessors!
 Initializing Plug-ins!
 .....
 Rule application order: activation->dynamic->pass->drop->sdrop->reject->alert->log
 Verifying Preprocessor Configurations!

         --== Initialization Complete ==--

    ,,_     -*> Snort! <*-
   o"  )~   Version 2.9.8.0 GRE (Build 229) 
    ''''    By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
            Copyright (C) 2014-2015 Cisco and/or its affiliates. All rights reserved.
            Copyright (C) 1998-2013 Sourcefire, Inc., et al.
            Using libpcap version 1.7.4
            Using PCRE version: 8.35 2014-04-04
            Using ZLIB version: 1.2.8

            Rules Engine: SF_SNORT_DETECTION_ENGINE  Version 2.4  <Build 1>
            Preprocessor Object: SF_IMAP  Version 1.0  <Build 1>
            Preprocessor Object: SF_FTPTELNET  Version 1.2  <Build 13>
            Preprocessor Object: SF_SIP  Version 1.1  <Build 1>
            Preprocessor Object: SF_REPUTATION  Version 1.1  <Build 1>
            Preprocessor Object: SF_POP  Version 1.0  <Build 1>
            Preprocessor Object: SF_DCERPC2  Version 1.0  <Build 3>
            Preprocessor Object: SF_SDF  Version 1.1  <Build 1>
            Preprocessor Object: SF_GTP  Version 1.1  <Build 1>
            Preprocessor Object: SF_DNS  Version 1.1  <Build 4>
            Preprocessor Object: SF_SSH  Version 1.1  <Build 3>
            Preprocessor Object: SF_DNP3  Version 1.1  <Build 1>
            Preprocessor Object: SF_SSLPP  Version 1.1  <Build 4>
            Preprocessor Object: SF_SMTP  Version 1.1  <Build 9>
            Preprocessor Object: SF_MODBUS  Version 1.1  <Build 1>

 Snort successfully validated the configuration!
 Snort exiting

Artık her şey hatasız olarak yapılandırıldığına göre, Snort'u test etmeye hazırız.

Snort Testi

Snort'u test etmenin en kolay yolu local.rules. Bu, özel kurallarınızı içeren bir dosyadır.

snort.confDosyada, 546 satırının etrafında bir yerde fark ettiyseniz , bu satır vardır:

include $RULE_PATH/local.rules

Eğer sahip değilseniz, lütfen 546 civarında ekleyin. Daha sonra local.rulesdosyayı test için kullanabilirsiniz . Temel bir test olarak, Snort'un bir ping isteğini (ICMP isteği) takip etmesini istiyorum. local.rulesDosyanıza aşağıdaki satırı ekleyerek bunu yapabilirsiniz .

 alert icmp any any -> $HOME_NET any (msg:"ICMP test"; sid:10000001; rev:001;)

Dosyanıza ekledikten sonra kaydedin ve okumaya devam edin.

Testi çalıştırın

Aşağıdaki komut Snort'u başlatır ve kullanıcı snortu olarak grup snortu altında config'i kullanarak "hızlı mod" uyarılarını yazdırır /etc/snort/snort.confve ağ arayüzünde dinler eno1. eno1Sisteminizin dinlediği ağ arabirimine geçmeniz gerekecektir .

$ sudo /usr/local/bin/snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i eno1

Çalıştırdıktan sonra, bu bilgisayara ping atın. Aşağıdaki gibi görünen çıktıları görmeye başlayacaksınız:

01/07−16:03:30.611173 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.105 -> 192.168.1.104
01/07−16:03:31.612174 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.104 -> 192.168.1.105
01/07−16:03:31.612202 [**] [1:10000001:0] ICMP test [**] [Priority: 0]  192.168.1.105 -> 192.168.1.104
^C*** Caught Int−Signal

Programdan çıkmak için Ctrl + C tuşlarına basabilirsiniz , hepsi bu kadar. Snort ayarlandı. Şimdi istediğiniz kuralları kullanabilirsiniz.

Son olarak, topluluk tarafından "Topluluk" sekmesi altındaki resmi siteden indirebileceğiniz bazı genel kurallar olduğunu belirtmek isterim . "Snort" u arayın, hemen altında bir topluluk bağlantısı var. Bunu indirin, çıkarın ve community.rulesdosyayı arayın .



Debianda NFS Paylaşımı Ayarla

Debianda NFS Paylaşımı Ayarla

NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz

Debian 9 Üzerinde Yakıt CMS Kurulumu

Debian 9 Üzerinde Yakıt CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Thelia, e-iş web siteleri oluşturmak ve PHP ile yazılmış çevrimiçi içeriği yönetmek için açık kaynaklı bir araçtır. Thelia kaynak kodu i

Debianda Chroot Oluşturma

Debianda Chroot Oluşturma

Bu makale size Debianda nasıl bir cezaevi hapishane kurulacağını öğretecek. Debian 7.x kullandığınızı varsayıyorum. Debian 6 veya 8 çalıştırıyorsanız, bu işe yarayabilir, bu

Debian 9 InvoicePlane Nasıl Kurulur

Debian 9 InvoicePlane Nasıl Kurulur

Farklı Bir Sistem mi Kullanıyorsunuz? InvoicePlane ücretsiz ve açık kaynaklı bir faturalandırma uygulamasıdır. Kaynak kodu bu Github deposunda bulunabilir. Bu rehber

Debian 9u Debian 10a Yükseltme

Debian 9u Debian 10a Yükseltme

Giriş Debian 10 (Buster), Debian 9un (Stretch) halefidir. 6 Temmuz 2019da piyasaya sürüldü. Bu derste, bir var olanı yükselteceğiz

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Backdrop CMS 1.8.0, basit ve esnek, mobil uyumlu, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Debian 9 Üzerinde BookStack Kurulumu

Debian 9 Üzerinde BookStack Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? BookStack, bilgileri düzenlemek ve depolamak için basit, kendi kendine barındırılan, kullanımı kolay bir platformdur. BookStack tamamen ücretsiz ve açık

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

Golang, Google tarafından geliştirilen bir programlama dilidir. Çok yönlülüğü, sadeliği ve güvenilirliği sayesinde Golang en popüler topluluklardan biri haline geldi

Debian 9a Cıvata CMS Takma (Uzatma)

Debian 9a Cıvata CMS Takma (Uzatma)

Farklı Bir Sistem mi Kullanıyorsunuz? Bolt PHP ile yazılmış açık kaynaklı bir CMSdir. Cıvata kaynak kodu GitHubda barındırılıyor. Bu kılavuz size Bolt CMnin nasıl kurulacağını gösterecektir

Munin ile Debian Sunucu Durumunu İzleme

Munin ile Debian Sunucu Durumunu İzleme

Munin, makinenizdeki süreçleri ve kaynakları araştırmak için bir izleme aracıdır ve bilgileri bir web arayüzü aracılığıyla grafiklerde sunar. Aşağıdaki kullanın

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür

Debian 9 Üzerinde PyroCMS Kurulumu

Debian 9 Üzerinde PyroCMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? PyroCMS, PHP ile yazılmış açık kaynaklı bir CMSdir. PyroCMS kaynak kodu GitHubda barındırılmaktadır. Bu kılavuzda entir boyunca yürüyün

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Giriş Bu eğitimde, CentOS, Debian veya Ubuntu çalıştıran bir Linux sunucusuna tüm IP aralığını / alt ağını ekleme işlemini ele alacağız. Süreç

Counter Strikeı Ayarlama: Debianda Kaynak

Counter Strikeı Ayarlama: Debianda Kaynak

Bu kılavuzda, Debian 7de Counter Strike: Source oyun sunucusu kuracağız. Bu komutlar Debian 7de test edildi, ancak aynı zamanda o

Debian 9 Üzerinde Dolibarr Kurulumu

Debian 9 Üzerinde Dolibarr Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun