Snort IDS'yi kurarak ve ayarlayarak ağınızı davetsiz misafirlerden ve istenmeyen saldırılardan koruyun.
Ağ güvenliği konusunda ciddiyseniz, ağ çevresini korumak ve potansiyel olarak istenmeyen ağ trafiğini saptırmak için bir IPS veya IDS çözümü kurmak şarttır.
Snort, böyle ünlü, kişisel kullanım için ücretsiz ve açık kaynaklı bir IPS/IDS çözümüdür. Ağınızı siber saldırılardan korumak için Linux'ta Snort'u nasıl kuracağınızı ve kuracağınızı öğrenelim.
Snort Nedir?
Snort açık kaynaklıdır Ağ Saldırı Tespit ve Önleme Sistemi (NIDS/IPS) yazılımı, adından da anlaşılacağı gibi, ağınıza enjekte edilen potansiyel olarak kötü amaçlı paketleri algılayan ve bırakan kuralları ve filtreleri uygulayarak ağ çevrenizin güvenliğini sağlamaya yardımcı olur.
Snort ile, gelişmiş ağ trafiği kaydı, paket koklama ve analizi gerçekleştirebilecek ve ayarlayabileceksiniz. ağınızı istenmeyen ve potansiyel olarak kötü niyetli saldırılardan koruyan güçlü bir Saldırı Önleme Sistemi kurun trafik.
Snort'u Yüklemenin Ön Koşulları
Snort'u kurmadan önce yapmanız gereken bazı ön ayarlar vardır. Bu, çoğunlukla sisteminizin güncellenmesini ve yükseltilmesini ve düzgün çalışması için Snort'un gerektirdiği bağımlılıkların kurulmasını içerir.
Sisteminizi güncelleyerek ve yükselterek başlayın.
Ubuntu'da- ve Debian tabanlı Linux dağıtımları:
sudo apt update && apt upgrade -y
Arch Linux ve türevlerinde:
sudo pacman -Syu
RHEL ve Fedora'da:
sudo dnf yükseltmesi
Sisteminiz yükseltildiğinde, Snort'un gerektirdiği bağımlılıkları kurmaya devam edin. İşte çalıştırmanız gereken komutlar:
Ubuntu ve Debian'da şunu çalıştırın:
sudo apt install -y build-essential autotools-dev libdumbnet-dev libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev cmake liblzma-dev openssl libssl-dev cpputest libsqlite3-dev libtool uuid-dev git autoconf bison flex libcmocka-dev libnetfilter-queue-dev libunwind-dev libmnl-dev ethtool libjemalloc-dev libpcre++-dev
Arch Linux'ta şunu çalıştırın:
sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pullporkxz zlib cmake pkgconf
RHEL ve Fedora için aşağıdaki komutu verin:
sudo dnf kurulum gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y
Ayrıca, düzgün çalışması için Data Acquisition Library, LibDAQ for Snort'u ve derleme dosyalarını oluşturmak için gperftools'u manuel olarak yüklemeniz gerekir.
İlk olarak, LibDAQ kaynak dosyalarını resmi web sitesinden indirin wget komutunu kullanarak. Ardından, arşivi çıkartın ve cd kullanarak dizine taşıyın. Dizinin içinde şunu çalıştırın: önyükleme Ve yapılandır komut dosyaları daha sonra make ile dosyaları hazırlamaya devam edin ve kurulumu yap emretmek.
wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
tar -xzvf lib*
CD kitaplığı*
./önyükleme
./yapılandır
yapmak
sudo yükleme yapmak
LibDAQ yüklendiğinde, son bir bağımlılık yüklemeniz gerekir: gperftools. Kaynak dosyaları GitHub deposundan alarak başlayın. Dosyaları ayıklayın, dizine taşıyın ve yapılandırma komut dosyasını çalıştırın. Son olarak make ve make install komutlarını kullanarak paketi kurun.
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
tar -xvzf gper* && cd gper
./yapılandır
yapmak
sudo yükleme yapmak
Bu bağımlılıklar kurulduktan sonra, Snort'u kurmak için sonraki adımlara geçebilirsiniz.
Linux'ta Kaynaktan Snort'u Kurun
Ön kurulum ortadan kalktığında, artık gerçek yazılımı yüklemeye odaklanabilirsiniz. Onu kaynaktan oluşturacaksınız, bu yüzden önce gerekli derleme dosyalarını alın.
wget komutunu kullanın veya dosyaları resmi indirme sayfasından manuel olarak indirin:
wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
İndirmek:burnundan solumak
Derleme dosyalarını içeren arşivin indirilmesi bittiğinde, tar komutunu kullanarak arşivi çıkarın:
tar -xzvf snort*
Ayıklanan klasöre gidin, yapılandırma komut dosyasını çalıştırın, dosyaları hazırlamak için make komutunu kullanın ve son olarak bunları kurulumu yap:
cd snort*
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
cd yapı
yapmak
sudo yükleme yapmak
Snort şimdi sisteminize başarıyla kurulacaktır. Ancak, tamamlamanız gereken yalnızca bir adım daha var. Yeni yazılım manuel olarak kurulduğunda, kurulum dizini ve gerekli kitaplıklar otomatik olarak sistemin varsayılan yoluna dahil edilmeyebilir. Bu nedenle, uygulamayı başlatırken hatalarla karşılaşabilirsiniz.
Bu sorunu önlemek için ldconfig komutunu çalıştırmanız gerekir. Sistemin paylaşılan kitaplık önbelleğini yeni yüklenen kitaplıklar ve ikili dosyalarla eşitler. Ya bir kök kabuktan ldconfig komutunu çalıştırın ya da sudo önekini kullanın:
sudo ldconfig
Artık Snort'u kurmak için gereken tüm önemli adımları tamamladınız. Kurulumu doğrulamak için Snort komutunu çalıştırın. -V bayrağı ve sürüm adını ve diğer verileri döndüren bir çıktı görmelisiniz.
homurdanma -V
Snort kurulumunu doğruladıktan sonra, tam gelişmiş bir IDS/IPS olarak kurmak için sonraki adımlara geçin.
Snort'un Linux'ta İlk Yapılandırması
Snort'un verimliliği neredeyse tamamen, birlikte verilen kural setlerinin kalitesine bağlıdır.
Ancak, kuralları ayarlamaya başlamadan önce ağ kartlarını Snort ile çalışacak şekilde yapılandırmanız ve ayrıca varsayılan yapılandırmanın Snort tarafından nasıl işlendiğini test etmeniz gerekir. Ağ kartlarını yapılandırarak başlayın.
Ağ arabirimini rastgele moda ayarlayın:
sudo ip link set dev interface_name promisc açık
Daha büyük ağ paketlerinin kesilmesini önlemek için ethtool'u kullanarak Genel Alma Boşaltma (GRO) ve Büyük Alma Boşaltma'yı (LRO) devre dışı bırakın:
sudo ethtool -K interface_name büyük kapalı lro kapalı
Snort'un varsayılan yapılandırmayla nasıl performans gösterdiğini test edin:
snort -c /usr/yerel/etc/snort/snort.lua
Bu, Snort'u sisteminize doğru şekilde kurduğunuza ve kurduğunuza dair başarılı bir çıkış sinyali döndürmelidir. Artık, ağınızı güvence altına almak için en iyi kural kümesini bulmak için özelliklerini inceleyebilir ve farklı yapılandırmaları deneyebilirsiniz.
Snort ile Kurallar Oluşturun ve Bunları Uygulayın
Temel ayarlar yapıldığında, Snort artık çevrenizi savunmaya hazır. Bildiğiniz gibi, Snort'un trafiğin geçerliliğini belirlemek için kural setlerine ihtiyacı var, hadi Snort için birkaç topluluk yapımı, ücretsiz kural seti oluşturalım.
Snort, belirli dizinlerden kural kümelerini ve yapılandırmaları okur. İlk olarak, mkdir ve touch komutlarını kullanarak, Snort için kuralları ve diğer ilgili verileri depolamak üzere birkaç önemli dizin oluşturun:
sudo mkdir -p /usr/local/etc/{listeler, so_rules, kurallar}
sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist
Oluşturulan bu dizinlerle, wget komutunu kullanarak topluluk kural setini resmi web sitesinden indirebilirsiniz:
wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz
Kural setinin indirilmesi bittiğinde, çıkartın ve üzerine kopyalayın. /usr/local/etc/rules/ dizin.
tar -xvzf snort3-com*
cd snort3-com*
cp * /usr/yerel/etc/kurallar/
Snort'u kural kümesiyle çalıştırmak için şu komutu yürütün:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interface_name -s 65535 -k yok
Komutun dökümü:
- -C yolu varsayılan yapılandırma dosyasına ayarlar
- -R uygulanacak kural kümesine giden yolu ayarlar
- -Ben arayüzü ayarlar
- -S snaplen sınırını atar
- -k sağlama toplamlarını yok sayar
Bu, yapılandırmayı doğrulamalı ve Snort'ta tüm kural kümelerini uygulamalıdır. Herhangi bir ağ bozukluğu algıladığı anda sizi bir konsol mesajıyla uyaracaktır.
Kendi kural kümenizi oluşturmak ve uygulamak istiyorsanız, bu konuda daha fazla bilgiyi şuradan öğrenebilirsiniz: resmi dokümantasyon sayfaları.
Snort ile Günlüğü Ayarlama
Varsayılan olarak, Snort herhangi bir günlük çıkarmaz. ile belirtmeniz gerekir. -L Snort'u günlük modunda başlatmak için bayrak, günlük dosyası türünü tanımlayın ve -l Snort'un günlükleri boşaltması için günlük dizinini ayarlamak için bayrak.
Günlük kaydı etkinken Snort'u başlatma komutu şöyledir:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interface_name -s 65535 -k yok -L file_type -l /var/log / burundan çekme
Komutun dökümü:
- -C yolu varsayılan yapılandırma dosyasına ayarlar
- -R uygulanacak kural kümesine giden yolu ayarlar
- -Ben arayüzü ayarlar
- -S snaplen sınırını atar
- -k sağlama toplamlarını yok sayar
- -L günlük modunu etkinleştirir ve günlük dosyası türünü tanımlar
- -l günlükleri depolamak için yolu tanımlar
Örnek komutta, kayıt dizininin şu şekilde ayarlandığını unutmayın: /var/log/snort. Bu önerilen bir uygulama olsa da günlüklerinizi başka bir yerde saklamakta özgürsünüz.
Günlük dosyalarını tanımladığınız dizinden Snort'tan okuyabilir veya daha fazla analiz için Splunk gibi SIEM yazılımlarına aktarabilirsiniz.
Snort'u Sistem Başlangıç Arka Plan Programı Olarak Ekleyin
Snort'u kurup kurmuş olmanıza rağmen, başlangıçta yürütmeye başladığından ve bir arka plan arka plan programı olarak çalıştığından emin olmanız gerekir. Bunu bir otomatik başlatma sistem hizmeti olarak eklemek, Snort'un çalışır durumda olmasını ve sisteminizin çevrimiçi olduğu her an savunmasını sağlayacaktır.
Linux'ta bir Snort başlangıç arka plan programı şu şekilde eklenir:
- Yeni bir systemd hizmet dosyası oluşturarak başlayın:
/lib/systemd/system/snort.service'e dokunun
- Dosyayı istediğiniz bir metin düzenleyicide açın ve aşağıdaki verilerle doldurun. Bayrakları ihtiyaçlarınıza göre değiştirebilirsiniz:
[Birim]
Açıklama=Snort Arka Plan Programı
After=syslog.target network.target
[Hizmet]
Yazım=basit
ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k yok -l /var /log/snort -D -L pcap -i ens33
[Düzenlemek]
WantedBy=çok kullanıcılı.hedef - Dosyayı kaydedin ve çıkın. Ardından, hizmeti kullanarak ve systemctl komutları, komut dosyasını etkinleştirin ve başlatın:
sudo systemctl snort.service'i etkinleştir
sudo snort başlangıcı
Snort arka plan arka plan programı şimdi çalışır durumda olmalıdır. Komut dosyasının durumunu kullanarak doğrulayabilirsiniz. systemctl durum horlaması emretmek. Pozitif bir çıktı döndürmelidir.
Artık Ağınızı Snort IDS ile Nasıl Koruyacağınızı Biliyorsunuz
IDS'yi uygulamak iyi bir uygulama olsa da, aktif olandan daha pasif bir önlemdir. Ağınızın güvenliğini iyileştirmenin ve garanti altına almanın en iyi yolu, ağınızı sürekli olarak test etmek ve düzeltilecek kusurları aramaktır.
Sızma testi, istismar edilebilir güvenlik açıklarını bulmanın ve yamalamanın harika bir yoludur.