Takip et

Ubuntu VPS’te Ağ Saldırılarını Tespit Etmek İçin psad Kullanımı

Ubuntu VPS’te Ağ Saldırılarını Tespit Etmek İçin psad Kullanımı Giriş: Neden Ağ Saldırı Tespiti Bu Kadar Önemli?

Ubuntu VPS’te Ağ Saldırılarını Tespit Etmek İçin psad Kullanımı

Giriş: Neden Ağ Saldırı Tespiti Bu Kadar Önemli?

Günümüzün dijital çağında, bir Ubuntu Sanal Özel Sunucu (VPS) işletmek, web siteleri barındırmaktan uygulama çalıştırmaya kadar birçok avantaj sunar. Ancak, bu avantajlarla birlikte ciddi güvenlik sorumlulukları da gelir. İnternet’e açık her sunucu, sürekli olarak çeşitli kötü niyetli aktörler tarafından taranır ve saldırıya uğrar. Bu saldırılar, basit port taramalarından gelişmiş dağıtık hizmet reddi (DDoS) saldırılarına, kaba kuvvet saldırılarından yazılım zafiyetlerini hedef alan exploit’lere kadar geniş bir yelpazeyi kapsar.

Bir VPS’in güvenliğini sağlamak, sadece güçlü parolalar ve güncel yazılımlarla sınırlı değildir; aynı zamanda potansiyel tehditleri proaktif olarak tespit etmek ve bunlara yanıt vermek de hayati önem taşır. Ağ saldırı tespiti, sunucunuzun savunma mekanizmasının temel bir bileşenidir. Erken tespit, saldırganların sisteminize sızmasını veya hizmetlerinizi kesintiye uğratmasını engelleyebilir, böylece veri kaybını, itibar zedelenmesini ve finansal zararları önleyebilir.

Bu makalede, Ubuntu VPS’inizde ağ saldırılarını tespit etmek için güçlü ve hafif bir araç olan psad (Port Scan Attack Detector) kullanımını detaylı bir şekilde ele alacağız. psad, iptables ve ufw gibi güvenlik duvarı günlüklerini analiz ederek port taramalarını, kaba kuvvet saldırılarını ve diğer şüpheli ağ faaliyetlerini gerçek zamanlı olarak algılayan, açık kaynaklı bir güvenlik aracıdır. Kurulumundan yapılandırmasına, test edilmesinden gelişmiş özelliklerine kadar her adımı adım adım inceleyerek, VPS’inizin güvenliğini bir üst seviyeye taşımanıza yardımcı olacağız.

psad Nedir?

psad, Port Scan Attack Detector kelimelerinin kısaltmasıdır ve Linux tabanlı sistemlerde port taramalarını ve diğer şüpheli ağ trafiğini tespit etmek için tasarlanmış, ücretsiz ve açık kaynaklı bir güvenlik aracıdır. Temel olarak, sistemin güvenlik duvarı (genellikle iptables veya ufw) tarafından oluşturulan günlük dosyalarını (syslog) analiz eder. Bu günlükler, gelen ve giden ağ bağlantıları hakkında değerli bilgiler içerir. psad, bu günlüklerdeki belirli kalıpları arayarak potansiyel saldırıları tanımlar.

psad‘ın çalışma prensibi oldukça basittir ancak etkilidir:
1. Günlük Analizi: psad, iptables veya ufw tarafından LOG hedefiyle işaretlenmiş paketleri içeren sistem günlüklerini (/var/log/syslog, /var/log/kern.log vb.) sürekli olarak izler.
2. Kalıp Eşleştirme: Gelen paketlerin kaynak IP adreslerini, hedef portlarını ve bağlantı durumlarını analiz eder. Belirli bir süre içinde aynı kaynak IP’den gelen çok sayıda bağlantı denemesi (özellikle farklı portlara) bir port taraması olarak algılanır.
3. Tehlike Seviyesi Belirleme: Algılanan her şüpheli aktiviteye bir “tehlike seviyesi” (danger level) atar. Bu seviye, taramanın yoğunluğuna, hedeflenen portlara ve diğer faktörlere göre belirlenir.
4. Uyarı ve Eylem: Belirlenen tehlike seviyesi önceden tanımlanmış eşikleri aştığında, psad yöneticilere e-posta yoluyla uyarı gönderebilir. İsteğe bağlı olarak, saldırganın IP adresini güvenlik duvarında otomatik olarak engelleyebilir veya diğer özel eylemleri tetikleyebilir.
5. DShield.org Entegrasyonu: psad, algılanan saldırı verilerini DShield.org projesine gönderme yeteneğine sahiptir. Bu, küresel tehdit istihbaratına katkıda bulunarak daha geniş bir güvenlik topluluğuna fayda sağlar.

psad’ın Temel Özellikleri:
* Gerçek Zamanlı Port Tarama Tespiti: iptables günlüklerini analiz ederek SYN, FIN, XMAS, NULL taramaları gibi çeşitli port tarama türlerini algılar.
* Daemon Modu: Arka planda sürekli olarak çalışarak sürekli izleme sağlar.
* E-posta Uyarıları: Belirlenen eşiklere ulaşıldığında yöneticilere detaylı e-posta bildirimleri gönderir.
* Otomatik Engelleme: Saldırgan IP adreslerini iptables veya ufw kuralları aracılığıyla otomatik olarak engelleyebilir.
* Esnek Yapılandırma: psad.conf dosyası aracılığıyla tehlike seviyeleri, engelleme süreleri, uyarı eşikleri ve diğer birçok parametre özelleştirilebilir.
* DShield.org Entegrasyonu: Küresel tehdit istihbaratına katkıda bulunma ve ondan faydalanma imkanı.
* Snort Entegrasyonu: Snort kurallarını kullanarak daha gelişmiş saldırı tespiti yapabilir.
* IP Adresi Kara Listeleme/Beyaz Listeleme: Belirli IP adreslerini her zaman izleme dışı bırakma veya her zaman engelleme yeteneği.

Neden psad Kullanmalısınız?

Ubuntu VPS’inizde psad kullanmak için birçok geçerli neden vardır. İşte başlıcaları:

* Proaktif Savunma: psad, saldırılar gerçekleşmeden veya ciddi zarara yol açmadan önce onları tespit etmenizi sağlar. Bu proaktif yaklaşım, reaktif olmaktan çok daha etkilidir.
* Gerçek Zamanlı Uyarılar: E-posta uyarıları sayesinde, sunucunuz bir saldırı altında olduğunda anında bilgi sahibi olursunuz. Bu, hızlı müdahale etmenizi ve potansiyel zararı minimize etmenizi sağlar.
* Otomatik Engelleme Yeteneği: psad‘ın belki de en güçlü özelliklerinden biri, tespit edilen saldırgan IP adreslerini otomatik olarak güvenlik duvarında engelleme yeteneğidir. Bu, manuel müdahaleye gerek kalmadan sunucunuzu sürekli olarak korur.
* Düşük Kaynak Tüketimi: psad, kaynakları verimli kullanan hafif bir araçtır. Bir VPS ortamında, kaynakların sınırlı olabileceği göz önüne alındığında bu önemli bir avantajdır.
* Kolay Entegrasyon: iptables ve ufw gibi yaygın Linux güvenlik duvarı çözümleriyle sorunsuz bir şekilde entegre olur. Mevcut güvenlik altyapınızla uyumlu çalışır.
* Detaylı Raporlama: psad, algılanan taramalar, tehlike seviyeleri ve engellenen IP’ler hakkında ayrıntılı raporlar sunar. Bu raporlar, güvenlik olaylarını anlamak ve gelecekteki savunma stratejilerini geliştirmek için değerlidir.
* Tehdit İstihbaratına Katkı: DShield.org entegrasyonu sayesinde, algılanan tehdit verilerini küresel bir tehdit istihbarat ağına katkıda bulunarak daha geniş bir güvenlik topluluğuna yardımcı olabilirsiniz.
* Esneklik ve Özelleştirme: psad.conf dosyası aracılığıyla, sunucunuzun özel ihtiyaçlarına ve güvenlik politikalarına uygun olarak birçok parametreyi özelleştirebilirsiniz.

Ön Gereksinimler

psad‘ı Ubuntu VPS’inizde başarıyla kurmak ve yapılandırmak için bazı ön gereksinimlerin karşılanması gerekir:

* Ubuntu VPS: Bu makale, Ubuntu Server’ın güncel sürümleri (örneğin, 20.04 LTS veya 22.04 LTS) üzerinde çalışacak şekilde tasarlanmıştır.
* Root veya Sudo Erişimi: Kurulum ve yapılandırma adımları için root kullanıcısı veya sudo ayrıcalıklarına sahip bir kullanıcıya ihtiyacınız olacaktır.
* iptables veya ufw: psad, güvenlik duvarı günlüklerini analiz ettiği için, sunucunuzda iptables veya ufw‘nin kurulu ve etkin olması şarttır. Daha da önemlisi, bu güvenlik duvarlarının gelen paketleri LOG hedefiyle günlüğe kaydetmesi gerekmektedir.
* Temel Linux Komut Satırı Bilgisi: Temel Linux komutları (dosya düzenleme, servis yönetimi vb.) hakkında bilgi sahibi olmak, kurulum ve sorun giderme sürecini kolaylaştıracaktır.
* E-posta Gönderme Yeteneği (İsteğe Bağlı ama Önerilir): psad‘ın e-posta uyarıları gönderebilmesi için sunucunuzda bir Mail Transfer Agent (MTA) kurulu olması gerekir. Popüler MTA’lar arasında Postfix, Sendmail ve Exim bulunur. Bu, psad‘ın en önemli özelliklerinden biri olduğu için şiddetle tavsiye edilir.

Kurulum ve Temel Yapılandırma

Şimdi psad‘ı Ubuntu VPS’inize kurmaya ve temel yapılandırmasını yapmaya başlayalım.

Sistem Güncelleme

Herhangi bir yazılım kurulumuna başlamadan önce, sisteminizin paket listelerini güncellemek ve mevcut paketleri yükseltmek iyi bir uygulamadır:

sudo apt update
sudo apt upgrade -y

iptables/ufw Loglamasını Etkinleştirme

psad‘ın çalışabilmesi için güvenlik duvarınızın paketleri günlüğe kaydetmesi gerekmektedir. Aşağıda ufw ve iptables için loglamanın nasıl etkinleştirileceği açıklanmıştır. Genellikle Ubuntu kullanıcıları ufw kullanır, ancak iptables daha düşük seviyeli ve güçlü bir kontrol sağlar.

UFW Kullanıyorsanız:
ufw loglamasını etkinleştirmek oldukça basittir:

sudo ufw logging on
sudo ufw reload

Bu komutlar, ufw‘nin syslog‘a paket bilgilerini kaydetmesini sağlar. psad varsayılan olarak ufw günlüklerini algılayabilir.

iptables Kullanıyorsanız:
Eğer ufw yerine doğrudan iptables kullanıyorsanız, LOG hedefine sahip kurallar eklemeniz gerekir. Bu kurallar, psad‘ın analiz edeceği bilgileri oluşturur. İşte yaygın bir örnek:

# INPUT zincirine düşen (DROP/REJECT edilmeden önce) paketleri logla
sudo iptables -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT

Güvenlik duvarının sonuna, düşen tüm paketleri logla ve DROP et

sudo iptables -A INPUT -j LOG --log-prefix "IPTABLES_DROP: " --log-level 7 sudo iptables -A INPUT -j DROP

İsteğe bağlı: Forward zincirini de loglamak isteyebilirsiniz

sudo iptables -A FORWARD -j LOG --log-prefix "IPTABLES_FWD: " --log-level 7 sudo iptables -A FORWARD -j DROP

Kuralları kaydet (Ubuntu'da iptables-persistent paketi ile)

sudo apt install iptables-persistent -y sudo netfilter-persistent save

Bu örnek, belirli portlara izin verirken, diğer tüm gelen bağlantıları günlüğe kaydeder ve düşürür. --log-prefix ve --log-level önemlidir. psad genellikle kern.log veya syslog dosyalarını izler.

rsyslog Yapılandırması (Gerekirse):
Çoğu durumda, ufw veya iptables logları otomatik olarak /var/log/syslog veya /var/log/kern.log‘a gider. Ancak, psad‘ın belirli bir log dosyasını izlemesini sağlamak veya daha ayrıntılı loglama için rsyslog yapılandırmasını kontrol etmek isteyebilirsiniz.

sudo nano /etc/rsyslog.d/50-default.conf dosyasını açarak kernel mesajlarının veya diğer önemli mesajların nereye yönlendirildiğini görebilirsiniz. Genellikle aşağıdaki satırlar önemlidir:

kern.*                          -/var/log/kern.log
daemon.*                        -/var/log/daemon.log

psad bu dosyaları okuyacaktır. Eğer özel bir log dosyası oluşturduysanız, psad.conf içinde bunu belirtmeniz gerekecektir.

psad Kurulumu

psad paketini Ubuntu depolarından kolayca kurabilirsiniz:

sudo apt install psad -y

Kurulum sırasında, psad bazı temel sorular sorabilir veya varsayılan değerlerle devam edebilir.

Temel psad Yapılandırması

psad‘ın ana yapılandırma dosyası /etc/psad/psad.conf‘tur. Bu dosyayı düzenleyerek psad‘ın davranışını özelleştirebilirsiniz.

sudo nano /etc/psad/psad.conf

Aşağıda, düzenlemeniz gereken en önemli parametreler ve açıklamaları yer almaktadır:

1. EMAIL_ADDRESSES: psad‘ın uyarı göndereceği e-posta adresleri. Buraya kendi e-posta adresinizi girin. Birden fazla adres virgülle ayrılabilir.

EMAIL_ADDRESSES             "your_email@example.com"

2. HOSTNAME: Sunucunuzun ana bilgisayar adı. E-posta uyarılarında bu ad kullanılacaktır.

HOSTNAME                    "your_vps_hostname"

3. HOME_NET: Kendi ağınızı veya sunucunuzun IP adresini/alt ağını tanımlar. psad bu ağ içindeki trafiği normal kabul edecektir.

HOME_NET                    "any/24"    # Örnek: "192.168.1.0/24" veya sunucunuzun IP'si "X.X.X.X/32"

Eğer sadece tek bir VPS’iniz varsa, HOME_NET‘i VPS’inizin genel IP adresi ve /32 maskesi olarak ayarlamak en doğrusudur. Örneğin, HOME_NET "192.0.2.1/32"

4. EXTERNAL_NETWORK_INTERFACES: psad‘ın izleyeceği ağ arayüzleri. Genellikle eth0 veya ens3 gibi birincil arayüzünüzü belirtmeniz gerekir.

EXTERNAL_NETWORK_INTERFACES eth0;ens3

5. ENABLE_AUTO_BLOCK: Otomatik engellemeyi etkinleştirir veya devre dışı bırakır. Y olarak ayarlamak, psad‘ın tehlike seviyesi eşiğini aşan IP’leri otomatik olarak engellemesini sağlar. Dikkatli kullanılmalıdır! Yanlış yapılandırma meşru trafiği engelleyebilir.

ENABLE_AUTO_BLOCK           Y

6. FW_BLOCK_TIME: Otomatik olarak engellenen IP’lerin güvenlik duvarında ne kadar süre kalacağını saniye cinsinden belirtir. Varsayılan 3600 saniye (1 saat) genellikle iyi bir başlangıçtır.

FW_BLOCK_TIME               3600

7. DANGER_LEVEL eşikleri: psad, algılanan saldırıları 1’den 5’e kadar tehlike seviyelerine ayırır. Bu eşikler, bir saldırının ne kadar ciddi olduğunu belirler. Varsayılan değerler çoğu senaryo için uygun olsa da, hassasiyeti artırmak veya azaltmak için bunları ayarlayabilirsiniz.

PORT_SCAN_THRESHOLD         10          # Bir IP'den gelen paket sayısı eşiği
    SCAN_TIMEOUT                300         # Tarama süresi (saniye)

Bu değerler, SCAN_TIMEOUT süresi içinde bir kaynak IP’den PORT_SCAN_THRESHOLD kadar paket geldiğinde bir tarama olarak algılanmasını sağlar.

8. IPTABLES_LOG_FILE / UFW_LOG_FILE: psad‘ın hangi günlük dosyasını izleyeceğini belirtir. Çoğu Ubuntu sisteminde syslog veya kern.log kullanılır.
* IPTABLES_LOG_FILE varsayılan olarak /var/log/syslog veya /var/log/kern.log olabilir.
* Eğer ufw kullanıyorsanız, psad genellikle otomatik olarak ufw günlüklerini algılar, ancak gerekirse UFW_LOG_FILE parametresini kontrol edebilirsiniz.

# IPTABLES_LOG_FILE             /var/log/syslog
    # UFW_LOG_FILE                  /var/log/syslog

Genellikle bu satırlar yorum satırı olarak kalır ve psad varsayılan olarak /var/log/syslog veya /var/log/kern.log‘u izler. Eğer özel bir loglama yapılandırmanız varsa, bu satırları etkinleştirip doğru yolu belirtmelisiniz.

9. ENABLE_DSHIELD_ALERTS: Eğer DShield.org’a veri göndermek isterseniz bu değeri Y yapın ve DSHIELD_USER_ID‘nizi belirtin.

ENABLE_DSHIELD_ALERTS       N
    # DSHIELD_USER_ID           0

Yapılandırma dosyasını kaydettikten sonra (CTRL+O, Enter, CTRL+X), psad servisini yeniden başlatmanız gerekir.

psad’ı Çalıştırma ve Test Etme

Yapılandırma tamamlandıktan sonra, psad servisini başlatabilir ve çalışıp çalışmadığını test edebiliriz.

psad Servisini Başlatma

psad servisini başlatmak ve sistem başlangıcında otomatik olarak başlamasını sağlamak için aşağıdaki komutları kullanın:

sudo systemctl start psad
sudo systemctl enable psad

psad Durumunu Kontrol Etme

Servisin düzgün çalışıp çalışmadığını kontrol etmek için:

sudo systemctl status psad

Çıktıda “active (running)” ifadesini görmelisiniz.

Yapılandırmayı Yeniden Yükleme

psad.conf dosyasında herhangi bir değişiklik yaptıktan sonra, psad daemon’unu yeniden başlatmak veya yapılandırmayı yeniden yüklemek önemlidir:

sudo psad -H   # Yapılandırmayı yeniden yükler

veya

sudo systemctl restart psad # Servisi tamamen yeniden başlatır

Test Saldırısı Simülasyonu

psad‘ın gerçekten çalışıp çalışmadığını anlamanın en iyi yolu, basit bir port taraması simüle etmektir. Bunu yapmak için, kendi yerel makinenizden veya başka bir harici IP adresinden VPS’inize nmap ile bir tarama yapabilirsiniz.

Uyarı: Bu testi kendi kontrolünüz altındaki sistemler arasında yapın. İzinsiz taramalar yasa dışı olabilir.

Kendi yerel makinenizden (veya başka bir test sunucusundan) aşağıdaki nmap komutunu çalıştırın. yerine Ubuntu VPS’inizin genel IP adresini yazın:

nmap -sS 

Bu komut, VPS’inizde yaygın olarak kullanılan 1000 portu SYN taraması ile kontrol edecektir.

Beklenen psad Çıktısı ve Kontrol:
Taramadan birkaç saniye veya dakika sonra (yapılandırmanıza bağlı olarak):

1. E-posta Kontrolü: psad.conf‘ta belirttiğiniz e-posta adresini kontrol edin. psad‘dan bir uyarı e-postası almanız gerekir. E-posta başlığı genellikle “psad Alert for ” veya benzeri bir şey olacaktır. E-posta içeriği, taramanın ayrıntılarını (kaynak IP, hedeflenen portlar, tehlike seviyesi) içerecektir. Eğer e-posta gelmiyorsa, spam klasörünü kontrol edin ve MTA (Postfix vb.) kurulumunuzun doğru olduğundan emin olun.

2. psad Durumunu Kontrol Etme: psad‘ın algıladığı taramaları görmek için VPS’inizde aşağıdaki komutu çalıştırın:

sudo psad -M

Bu komut, algılanan tüm port taramalarını listeler. Çıktıda nmap taramasını yaptığınız IP adresini ve ilgili tehlike seviyesini görmelisiniz.

Örnek Çıktı:

-- psad scan status --
    dl: 5, client: 192.168.1.100 (0), ports: 22,23,25,80,110,139,443,445,... (1000), packets: 1000, first_seen: Sat Apr 15 10:30:00 2023, last_seen: Sat Apr 15 10:30:10 2023

Burada dl: 5 tehlike seviyesini, client: 192.168.1.100 ise taramayı yapan IP adresini gösterir.

3. Engellenen IP’leri Kontrol Etme (Eğer otomatik engelleme açıksa):
Eğer ENABLE_AUTO_BLOCK‘u Y olarak ayarladıysanız, nmap taraması yapan IP adresinin engellenip engellenmediğini kontrol edebilirsiniz:

sudo psad -F

Bu komut, güvenlik duvarı tarafından engellenen tüm IP adreslerini listeler. nmap taraması yaptığınız IP adresini burada görmelisiniz.

Ayrıca, iptables kurallarını doğrudan kontrol ederek de engellemeyi doğrulayabilirsiniz:

sudo iptables -L -n -v

psad tarafından eklenen DROP veya REJECT kurallarını görmelisiniz.

Bu testler başarılı olursa, psad‘ın Ubuntu VPS’inizde düzgün bir şekilde çalıştığını ve ağ saldırılarını algılamaya hazır olduğunu gösterir.

Gelişmiş Yapılandırma ve Entegrasyonlar

psad‘ın temel kurulumu ve testi tamamlandıktan sonra, daha güçlü bir savunma için gelişmiş yapılandırma seçeneklerini ve entegrasyonları keşfedebiliriz.

Otomatik Engelleme

ENABLE_AUTO_BLOCK Y olarak ayarlandığında, psad algılanan saldırgan IP’leri otomatik olarak engeller. Bu, saldırıları anında durdurmak için çok etkilidir. Ancak, dikkatli kullanılmalıdır:
* Yanlış Pozitifler: Yanlış pozitifler (meşru trafiğin saldırı olarak algılanması), meşru kullanıcıların veya servislerin engellenmesine yol açabilir. Bu nedenle HOME_NET ve IGNORE_SCANNERS parametrelerini doğru ayarlamak çok önemlidir.
* FW_BLOCK_TIME: Engelleme süresi (FW_BLOCK_TIME) iyi düşünülmelidir. Çok kısa bir süre saldırganın tekrar denemesine izin verebilirken, çok uzun bir süre yanlışlıkla engellenen meşru kullanıcılar için sorun yaratabilir.

E-posta Uyarıları

psad‘ın en değerli özelliklerinden biri, tehlike seviyesi eşiklerine ulaşıldığında e-posta uyarıları göndermesidir. Bu, yöneticilerin anında bilgilendirilmesini sağlar.
* MTA Kurulumu: E-posta uyarılarının çalışması için sunucunuzda bir MTA (Mail Transfer Agent) kurulu ve yapılandırılmış olmalıdır. Postfix, Ubuntu’da yaygın olarak kullanılan bir MTA’dır.

sudo apt install postfix -y

Kurulum sırasında “Internet Site” seçeneğini ve sunucunuzun tam alan adını (FQDN) seçerek basit bir kurulum yapabilirsiniz. Daha karmaşık senaryolar için Postfix’in kendi yapılandırmasına bakmanız gerekebilir.
* EMAIL_ADDRESSES: /etc/psad/psad.conf dosyasındaki EMAIL_ADDRESSES parametresini doğru bir e-posta adresiyle doldurduğunuzdan emin olun.

DShield.org Entegrasyonu

DShield.org, küresel bir internet tehdit istihbarat projesidir. psad, algıladığı saldırı verilerini DShield.org’a gönderebilir ve bu da küresel tehdit analizine katkıda bulunur.
* /etc/psad/psad.conf dosyasında ENABLE_DSHIELD_ALERTS parametresini Y olarak ayarlayın.
* DShield.org web sitesine kaydolduktan sonra size verilen DSHIELD_USER_ID‘yi yapılandırma dosyasında belirtin.

ENABLE_DSHIELD_ALERTS       Y
    DSHIELD_USER_ID             12345

Bu, sunucunuzun algıladığı saldırıların küresel tehdit haritasına katkıda bulunmasını sağlar.

Özel Port Taraması Kuralları ve Tehlike Seviyeleri

psad.conf dosyasında DANGER_LEVEL ile başlayan birçok parametre bulunur. Bunlar, farklı tehlike seviyeleri için eşikleri tanımlar.
* DANGER_LEVEL1_THRESHOLD: En düşük tehlike seviyesi için paket eşiği.
* DANGER_LEVEL5_THRESHOLD: En yüksek tehlike seviyesi için paket eşiği.
Bu eşikleri, sunucunuzun hassasiyetine ve alıştığınız trafik yoğunluğuna göre ayarlayabilirsiniz. Örneğin, çok hassas bir sunucu için eşikleri düşürerek daha küçük taramaları bile algılayabilirsiniz.

Whitelist (Beyaz Liste) Oluşturma

Belirli IP adreslerinin veya portların psad tarafından taranmasını veya engellenmesini önlemek isteyebilirsiniz. Bu, meşru tarayıcıları (örneğin, kendi ağ izleme araçlarınız, arama motoru botları, güvenilir iş ortakları) yanlışlıkla engellemeyi önler.
* IGNORE_SCANNERS: Bu parametreye, psad‘ın göz ardı etmesi gereken IP adreslerini veya alt ağları virgülle ayrılmış olarak ekleyin.

IGNORE_SCANNERS             192.168.1.0/24,10.0.0.0/8,1.2.3.4

* IGNORE_PORTS: psad‘ın belirli portlara yapılan taramaları göz ardı etmesini sağlar. Örneğin, sadece belirli bir hizmetin portunu izlemek istemiyorsanız kullanışlıdır.

IGNORE_PORTS                80,443

Snort Entegrasyonu

psad, Snort gibi bir Ağ Saldırı Tespit Sistemi (NIDS) ile entegre olabilir. Snort, imzaya dayalı bir tespit sistemi olup, bilinen saldırı kalıplarını algılar. psad, Snort tarafından oluşturulan uyarıları da işleyebilir.
* psad.conf dosyasında ENABLE_SNORT_ALERTS ve SNORT_RULES_FILE gibi parametreleri ayarlayarak Snort entegrasyonunu etkinleştirebilirsiniz.
* Bu, daha gelişmiş tehdit tespiti için psad‘ın yeteneklerini genişletir, ancak Snort’un kurulumu ve yapılandırması kendi başına ayrı bir konudur.

Web Arayüzü (Log Analiz Araçları)

psad‘ın resmi bir web arayüzü yoktur. Ancak, algıladığı verileri ve raporları komut satırı araçlarıyla (aşağıdaki “psad Komutları ve Raporlama” bölümüne bakın) kolayca görüntüleyebilirsiniz. Daha gelişmiş görselleştirme ve analiz için, psad loglarını merkezi bir log yönetim sistemine (ELK Stack, Graylog vb.) gönderebilir ve orada analiz edebilirsiniz. Bu, büyük ölçekli altyapılarda veya daha derinlemesine güvenlik analizi gerektiğinde faydalıdır.

psad Komutları ve Raporlama

psad, komut satırından çeşitli bilgiler almanızı ve yönetmenizi sağlayan bir dizi kullanışlı komut sunar:

* sudo psad --status veya sudo psad -S: psad daemon’unun mevcut durumunu, algılanan taramaların sayısını, engellenen IP’leri ve diğer özet bilgileri gösterir.
* sudo psad -M: Algılanan tüm port taramalarını listeler. Her bir tarama için kaynak IP, tehlike seviyesi, hedeflenen portlar ve zaman damgası gibi detayları gösterir.
* sudo psad -A: psad‘ın tüm algıladığı taramaları gösterir. -M‘ye benzer ancak daha kapsamlı olabilir.
* sudo psad -F: Güvenlik duvarı tarafından şu anda engellenen tüm IP adreslerini listeler.
* sudo psad -R : Belirli bir IP adresinin güvenlik duvarındaki engellemesini manuel olarak kaldırır. Örneğin: sudo psad -R 192.168.1.100.
* sudo psad -K: Güvenlik duvarındaki tüm psad tarafından eklenen engellemeleri kaldırır. Dikkatli kullanın!
* sudo psad -H: psad.conf dosyasındaki yapılandırma değişikliklerini yeniden yükler. Daemon’u yeniden başlatmadan yapılandırma güncellemeleri için kullanışlıdır.
* sudo psad -D: psad daemon’unu durdurur.
* sudo psad -P: psad daemon’unu başlatır.
* sudo psad -i: psad‘ın log dosyasını tek seferlik analiz etmesini sağlar. Bu, canlı izleme yerine geçmiş logları incelemek için kullanışlıdır.
* sudo psad --version: psad‘ın sürümünü gösterir.
* sudo psad --help: Tüm mevcut komut satırı seçeneklerini listeler.

Bu komutlar, psad‘ın sağladığı güvenlik bilgilerini anlamak, sorunları gidermek ve sunucunuzun güvenlik durumunu yönetmek için vazgeçilmezdir. Düzenli olarak psad -S ve psad -M komutlarını kullanarak sunucunuzdaki şüpheli faaliyetleri takip etmeniz önerilir.

Sorun Giderme ve İpuçları

psad kurulumu ve yapılandırması sırasında veya sonrasında karşılaşabileceğiniz bazı yaygın sorunlar ve çözüm ipuçları:

* E-posta Uyarıları Gelmiyor:
* psad.conf dosyasındaki EMAIL_ADDRESSES parametresinin doğru e-posta adresini içerdiğinden emin olun.
* E-postalarınızın spam/gereksiz klasörünü kontrol edin.
* Sunucunuzda bir MTA (Postfix gibi) kurulu ve doğru yapılandırılmış mı? sudo systemctl status postfix komutuyla kontrol edin.
* MTA’nın günlüklerini kontrol edin (/var/log/mail.log veya /var/log/syslog) e-posta gönderme hataları için.
* Sunucunuzun e-posta göndermek için gerekli portlara (örn. 25, 587) erişimi olduğundan emin olun.

* psad Hiçbir Şey Algılamıyor:
* psad servisinin çalıştığından emin olun: sudo systemctl status psad.
* Güvenlik duvarınızın (iptables/ufw) loglamayı etkinleştirdiğinden ve doğru şekilde yapılandırıldığından emin olun. ufw logging on veya iptables -j LOG kuralları var mı?
* iptables loglarının gerçekten /var/log/syslog veya /var/log/kern.log gibi psad‘ın izlediği bir dosyaya gittiğinden emin olun. tail -f /var/log/syslog komutuyla logları canlı olarak izleyin ve bir test taraması yapın. Loglarda IPTABLES_DROP veya UFW ile ilgili girdileri görmelisiniz.
* psad.conf dosyasındaki IPTABLES_LOG_FILE veya UFW_LOG_FILE parametresinin doğru log dosyasını işaret ettiğinden emin olun (veya yorum satırı olarak kalıp varsayılanları kullandığından).
* HOME_NET parametresinin kendi IP adresinizi veya test taraması yaptığınız IP’yi içermediğinden emin olun, aksi takdirde psad onu göz ardı edebilir.
* IGNORE_SCANNERS veya IGNORE_PORTS parametrelerinin test taraması yapan IP’yi veya hedeflenen portları içermediğinden emin olun.

* Yanlış Pozitifler (Meşru Trafiği Engelleme):
* HOME_NET parametresini doğru bir şekilde yapılandırın. Kendi ağınızdaki veya güvenilir IP’lerinizi bu listeye ekleyin.
* IGNORE_SCANNERS parametresine güvenilir IP adreslerini (örn. kendi ofis IP’niz, izleme servislerinin IP’leri) ekleyin.
* DANGER_LEVEL eşiklerini ve PORT_SCAN_THRESHOLD değerini gözden geçirin. Çok düşük eşikler, normal ağ etkinliğini saldırı olarak algılayabilir.
* Otomatik engellemeyi geçici olarak devre dışı bırakın (ENABLE_AUTO_BLOCK N) ve sadece uyarıları izleyerek yanlış pozitifleri analiz edin.

* Kaynak Kullanımı Yüksek:
* psad genellikle hafiftir. Ancak çok yüksek trafikli bir sunucuda veya aşırı detaylı loglama yapılandırmasında CPU veya bellek kullanımını artırabilir.
* psad‘ın log dosyalarını düzenli olarak temizlediğinden emin olun (logrotate yapılandırmasını kontrol edin).
* Gereksiz loglamayı devre dışı bırakın veya log seviyesini düşürün.

* psad Engellemesi Kaldırılamıyor:
* sudo psad -R komutunu doğru IP adresiyle kullandığınızdan emin olun.
* iptables -L -n -v çıktısında psad tarafından eklenen engelleme kuralının hala orada olup olmadığını kontrol edin. Eğer manuel olarak iptables kurallarını değiştirdiyseniz, psad‘ın kontrolü dışına çıkmış olabilir.

Genel İpuçları:
* Logları Düzenli Olarak Kontrol Edin: psad‘ın kendi loglarını (/var/log/psad/psad.log) ve sistem loglarını (/var/log/syslog, /var/log/kern.log) düzenli olarak kontrol edin.
* Yedekleme: psad.conf dosyasında önemli değişiklikler yapmadan önce her zaman bir yedek alın.
* Diğer Güvenlik Katmanları: psad, tek başına bir güvenlik çözümü değildir. Güçlü parolalar, SSH anahtar tabanlı kimlik doğrulama, düzenli yazılım güncellemeleri, fail2ban gibi diğer güvenlik araçları ve iyi bir güvenlik politikası ile birlikte kullanılmalıdır. fail2ban, kaba kuvvet saldırılarına karşı daha çok odaklanırken, psad daha geniş bir yelpazede port taramalarını ve şüpheli etkinlikleri hedefler. Bu iki araç birbirini tamamlayabilir.

Sonuç

Bir Ubuntu VPS’i internete açık tutmak, sürekli bir güvenlik mücadelesidir. psad (Port Scan Attack Detector), bu mücadelede size yardımcı olabilecek güçlü, esnek ve hafif bir araçtır. Bu makalede ele aldığımız adımları izleyerek, VPS’inizde psad‘ı başarıyla kurabilir, yapılandırabilir ve ağ saldırılarını proaktif olarak tespit edebilirsiniz.

psad‘ın iptables veya ufw günlüklerini analiz etme yeteneği, port taramalarını, tehlikeli paketleri ve diğer şüpheli ağ faaliyetlerini gerçek zamanlı olarak algılamasını sağlar. E-posta uyarıları sayesinde, sunucunuz bir tehdit altında olduğunda anında bilgi sahibi olursunuz ve otomatik engelleme yeteneği, saldırganları manuel müdahaleye gerek kalmadan durdurmanıza olanak tanır. DShield.org entegrasyonu gibi gelişmiş özellikler ise, küresel tehdit istihbaratına katkıda bulunarak daha geniş bir güvenlik perspektifi sunar.

Unutulmamalıdır ki psad, kapsamlı bir güvenlik stratejisinin sadece bir parçasıdır. Sunucunuzu güvende tutmak için güçlü parolalar kullanmak, SSH anahtar tabanlı kimlik doğrulamayı zorunlu kılmak, tüm yazılımları düzenli olarak güncellemek, gereksiz servisleri kapatmak ve diğer güvenlik duvarı kurallarını uygulamak gibi temel güvenlik uygulamalarını asla göz ardı etmemelisiniz. fail2ban gibi araçlarla entegrasyon, kaba kuvvet saldırılarına karşı ek bir savunma katmanı sağlayabilir.

Siber güvenlik sürekli bir süreçtir. psad‘ın yapılandırmasını düzenli olarak gözden geçirmek, algılanan olayları analiz etmek ve güvenlik politikalarınızı güncel tehditlere göre ayarlamak, VPS’inizin uzun vadeli güvenliğini sağlamak için hayati öneme sahiptir. psad ile donatılmış bir Ubuntu VPS, ağ saldırılarına karşı çok daha dirençli olacak ve dijital varlıklarınız için daha güvenli bir ortam sunacaktır.

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.