
Ağ Güvenliği: Port Tarama, IDS/IPS ve Saldırı Tespiti — VDS Pratik Rehberi
Nmap ile port tarama, Snort/Suricata IDS/IPS kurulumu, güvenlik duvarı kuralları ve ağ saldırı tespit sistemleri.
Ağ Güvenliği: Port Tarama, IDS/IPS ve Saldırı Tespiti — VDS Pratik Rehberi
VDS aldınız, root SSH ile bağlandınız. İlk gün ne yapmalısınız? Çoğu sysadmin bu soruda kayıp gider: PHP kurar, web sunucusu çalıştırır, sayfayı görür — saldırı yüzeyini kapatmadan. Ağ güvenliği bir hafta sonu projesi değil; süreklidir. Bu rehberde port tarama araçları, IDS/IPS sistemleri, fail2ban ve CrowdSec ile çalışan komutları saha deneyimiyle paylaşıyoruz.
Buyukweb perspektifi: Buyukweb 17+ yıldır Bursa Tier 3 veri merkezinde VDS, hosting ve dedicated sunucu hizmeti veriyor. Tüm VDS paketlerimizde L3+L4+L7 DDoS koruması standart, fakat uygulama katmanı sıkılaştırması sizin sorumluluğunuzda — VDS'lerimiz unmanaged. Bu rehberdeki tüm komutlar Buyukweb E5-V4 VDS (₺250/ay başlangıç) üzerinde doğrudan çalışır. Destek hattı: 0850 302 60 70.
Yeni VDS İçin 7 Adımlı Sıkılaştırma
Canlıya almadan önce mutlaka yapın:
- Gereksiz portları kapatın — UFW/firewalld ile default deny incoming.
- fail2ban kurun — SSH brute force karşısında ilk savunma.
- SSH key auth zorunlu —
PasswordAuthentication nosshd_config'de. - Root SSH kapalı — standart kullanıcı + sudo.
- Otomatik güvenlik güncellemesi —
unattended-upgradesveyadnf-automatic. - Log aggregation — rsyslog veya Wazuh manager.
- IDS/IPS — Suricata veya Snort 3.
Saldırı Türleri
| Tür | Tipik Araç | Savunma Katmanı |
|---|---|---|
| Recon (Keşif) | Nmap, Masscan, Shodan | Firewall, scan tespiti |
| Brute Force | Hydra, Medusa | fail2ban, key auth, MFA |
| DDoS L3/L4 | Botnet, amplification | DDoS koruma (Buyukweb L3-L7) |
| DDoS L7 | HTTP flood, slowloris | WAF, rate limit |
| Web App | sqlmap, custom payload | WAF, ModSecurity |
| Data Exfiltration | DNS tunneling | Çıkış trafiği izleme |
VDS senaryosunda çoğunlukla recon → brute force → web app sırası görülür.
Nmap ile Port Tarama
Nmap, ağ keşif standardı. Saldırganın size baktığını görmek için aynı aracı kendi sunucunuzda kullanın.
Etik: Nmap'i sadece sahip olduğunuz veya yazılı izinli sistemlerde çalıştırın. Yetkisiz tarama TCK 243-244 kapsamında suç olabilir.
# Kurulum
apt install nmap -y
# Hızlı (en yaygın 100 port)
nmap -F 192.0.2.10
# Tam port (1-65535)
nmap -p- 192.0.2.10
# TCP SYN — half-open, hızlı + sessiz
sudo nmap -sS 192.0.2.10
# UDP (DNS 53, NTP 123, SNMP 161)
sudo nmap -sU --top-ports 50 192.0.2.10
# Servis ve sürüm tespiti
nmap -sV 192.0.2.10
# Çıktı: 22/tcp open ssh OpenSSH 8.9
# OS tespiti
sudo nmap -O 192.0.2.10
# Tek-komut kapsamlı tarama
sudo nmap -sV -sC -O -p- -T4 192.0.2.10
open / closed / filtered: open aktif servis, closed host yanıt veriyor ama port kapalı, filtered firewall paketi düşürüyor. İdeal: kullanmadığınız her port filtered.
NSE (Nmap Scripting Engine)
/usr/share/nmap/scripts/ altında 600+ script var:
# Açık taraması
nmap --script vuln 192.0.2.10
# SSL/TLS analizi (zayıf cipher, eski TLS)
nmap --script ssl-enum-ciphers -p 443 192.0.2.10
# SSH şifreleme algoritmaları
nmap --script ssh2-enum-algos -p 22 192.0.2.10
# SMB açıkları
nmap --script smb-vuln* -p 445 192.0.2.10
Buyukweb ipucu: Yeni teslim edilen VDS'lere ilk 24 saat içinde küresel port taramaları gelir; bu normal. Önemli olan kendi VDS'inizi dışarıdan tarayıp neyin gözüktüğünü görmek. İkinci VDS'inizden
nmap -sV -p- KENDI_IPile saldırgan görüşünü alın.
Masscan: İnternet Ölçeği
Nmap titiz ama yavaş. Masscan asenkron mimarisiyle /0 subnet'i ortalama 6 dakikada tarar — Nmap TCP scan'inden ~1000x hızlı:
apt install masscan -y
# 100 portta saniyede 100K paket
masscan 10.0.0.0/16 -p 22,80,443 --rate=100000 -oG out.txt
Saha kullanımı: önce Masscan ile geniş tarama, sonra Nmap ile detay.
Saldırgan İlgili Portlar
| Port | Servis | Risk | Önlem |
|---|---|---|---|
| 22 | SSH | Brute force | Key auth, fail2ban, port değiştir |
| 21 | FTP | Düz şifre | SFTP/FTPS, FTP'yi kapat |
| 23 | Telnet | Düz şifre | KAPAT (SSH) |
| 25 | SMTP | Open relay | Auth + IP whitelist |
| 80, 443 | HTTP/S | Web app | WAF, rate limit |
| 3306 | MySQL | Yetkisiz erişim | Localhost veya whitelist |
| 3389 | RDP | Brute force | NLA, IP whitelist |
| 6379 | Redis | Auth'suz default | requirepass, bind 127.0.0.1 |
| 27017 | MongoDB | Eski sürümlerde auth yok | Auth aktif, bind localhost |
| 11211 | Memcached | Amplification DDoS | bind 127.0.0.1, UDP kapat |
Genel kural: Veritabanı portları asla 0.0.0.0 bind etmeyin. Localhost + uygulama sunucusu üzerinden erişim.
Sıkı Firewall: UFW + nftables
İlk savunma hattı sunucu içi firewall. Buyukweb ağ ucundaki DDoS koruması L3-L7 trafiği filtreler ama port düzeyi sıkılaştırması sizde.
# UFW (Ubuntu/Debian)
ufw --force reset
ufw default deny incoming
ufw default allow outgoing
ufw allow 2222/tcp comment 'SSH'
ufw allow 80/tcp
ufw allow 443/tcp
# Ofis subnet'inden MySQL
ufw allow from 198.51.100.0/24 to any port 3306
# SSH rate limit (6 bağlantı/30sn üzeri ban)
ufw limit 2222/tcp
ufw enable
ufw status verbose
İki Katman Mimarisi
[İnternet]
↓
[Cloudflare Proxy + WAF] ← origin IP gizleme, L7
↓
[Buyukweb DDoS L3+L4+L7] ← veri merkezi ucu
↓
[VDS UFW/nftables] ← port + IP whitelist
↓
[Nginx + ModSecurity]
↓
[Veritabanı (localhost)]
Cloudflare ipucu: Domain'inizi Cloudflare arkasına aldıysanız, sunucu firewall'ında 80/443'ü sadece Cloudflare IP aralıklarına açın. Origin IP sızsa bile direkt erişim engellenir.
SSH Sıkılaştırma
# /etc/ssh/sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers myuser admin
Port 2222
X11Forwarding no
PermitEmptyPasswords no
LoginGraceTime 30
MaxAuthTries 3
sshd -t && systemctl restart sshd
# İstemci: Ed25519 anahtar
ssh-keygen -t ed25519 -C "user@laptop"
ssh-copy-id -p 2222 [email protected]
Buyukweb perspektifi: SSH'ı kapattıktan sonra kilitlenirseniz Buyukweb VDS'lerinde KVM altyapısı sayesinde my.buyukweb.com müşteri panelinden VNC konsolu açılır. Yine de kapatmadan önce ikinci bir oturum açık bırakın.
fail2ban: Klasik Brute Force Kalkanı
apt install fail2ban -y
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# /etc/fail2ban/jail.local
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
ignoreip = 127.0.0.1/8 198.51.100.5
[sshd]
enabled = true
port = 2222
logpath = /var/log/auth.log
maxretry = 3
bantime = 86400
[nginx-req-limit]
enabled = true
filter = nginx-req-limit
port = http,https
logpath = /var/log/nginx/error.log
findtime = 60
maxretry = 10
[recidive]
enabled = true
bantime = 604800
findtime = 86400
maxretry = 3
systemctl enable --now fail2ban
fail2ban-client status sshd
fail2ban-client set sshd unbanip 198.51.100.99
CrowdSec: Modern Topluluk Tabanlı Alternatif
CrowdSec, fail2ban'ın 2020 sonrası halefi. Ana farkı: paylaşımlı topluluk havuzu — saldırgan IP'si topluluk genelinde bilinir.
curl -s https://install.crowdsec.net | sudo sh
apt install crowdsec crowdsec-firewall-bouncer-nftables -y
cscli decisions list
cscli collections install crowdsecurity/sshd
cscli collections install crowdsecurity/nginx
fail2ban vs CrowdSec
| Kriter | fail2ban | CrowdSec |
|---|---|---|
| Kurulum | Çok kolay | Kolay |
| Topluluk havuzu | Yok | Var |
| Çoklu sunucu sync | Manuel | Yerel API |
| Olgunluk | 20+ yıl | 4-5 yıl |
| Performans yoğun log | Zorlanır | Daha iyi |
Tek sunucu klasik kurulum → fail2ban. Çoklu sunucu, yeni kurulum → CrowdSec.
IDS/IPS: Suricata
Firewall + fail2ban "girişi engeller"; IDS "ağda dolaşan tehdidi görür". IPS ise inline çalışıp paketi düşürür. Suricata multi-thread mimarisiyle Snort 2'ye göre 5-10x hızlı, eve.json log formatı modern SIEM'e doğrudan beslenir.
# Ubuntu (PPA)
add-apt-repository ppa:oisf/suricata-stable -y
apt update && apt install suricata -y
# AlmaLinux 9
dnf install epel-release -y && dnf install suricata -y
# Ücretsiz ETSI Open kural seti
suricata-update enable-source et/open
suricata-update
# /etc/suricata/suricata.yaml (kritik kısım)
vars:
address-groups:
HOME_NET: "[192.0.2.0/24]"
EXTERNAL_NET: "!\$HOME_NET"
af-packet:
- interface: eth0
threads: auto
outputs:
- eve-log:
enabled: yes
filename: /var/log/suricata/eve.json
types: [alert, http, dns, tls, flow]
# IDS modu (passive)
suricata -c /etc/suricata/suricata.yaml -i eth0 -D
# IPS modu (inline NFQUEUE)
nft add rule inet filter input queue num 0 bypass
suricata --af-packet -c /etc/suricata/suricata.yaml -q 0 -D
# Log izle
tail -f /var/log/suricata/eve.json | jq 'select(.event_type=="alert")'
Özel Kurallar
# /etc/suricata/rules/local.rules
# SSH brute force (60sn'de 5+ başarısız)
alert tcp any any -> \$HOME_NET 22 (msg:"SSH Brute Force"; \
flow:to_server; threshold:type both,track by_src,count 5,seconds 60; \
sid:1000001;)
# Port scan (3sn'de 20+ SYN)
alert tcp any any -> \$HOME_NET any (msg:"Port Scan"; flags:S; \
threshold:type both,track by_src,count 20,seconds 3; sid:1000002;)
# Kuralları yeniden yükle
suricatasc -c reload-rules
Snort 3 vs Suricata
| Özellik | Snort 3 | Suricata |
|---|---|---|
| Multi-thread | Evet (yeni) | Evet (tasarımdan) |
| Log formatı | unified2, JSON | eve.json |
| Ücretsiz kural | Talos community | ETSI Open |
| AlmaLinux 9 paket | Manuel derleme | EPEL hazır |
| Tipik VDS RAM | 512MB-1GB | 1-2GB |
Yeni kurulum → Suricata. Eski Snort 2 kuralları büyük → Snort 3.
Host IDS: Wazuh ve Falco
Network IDS ağ trafiğini görür; host IDS sunucu içindeki dosya değişikliği, log anomalisi, rootkit'i yakalar.
# Wazuh manager (merkez)
curl -sO https://packages.wazuh.com/4.x/wazuh-install.sh
bash wazuh-install.sh -a
# Wazuh agent (izlenen sunucu)
WAZUH_MANAGER="manager-ip" apt install wazuh-agent -y
systemctl enable --now wazuh-agent
Wazuh kapsamı: FIM (file integrity), log analizi, rootkit tespiti, syscall denetimi (auditd), compliance raporları (PCI-DSS, NIST).
Buyukweb senaryo: 3+ VDS'iniz varsa bir tanesini Wazuh manager yapın (4 GB RAM önerilir), diğerlerine agent kurun. Buyukweb E5-V4 VDS orta paket (4 vCore, 8 GB RAM) manager için yeterli.
Sysdig Falco Docker/K8s runtime güvenliği için: kernel syscall'ları izleyip "container içinde shell açıldı", "/etc/shadow okundu" gibi runtime ihlallerini yakalar. AIDE klasik file integrity monitor; aideinit ile baseline al, cron ile günlük aide --check.
DDoS Önlemi
Buyukweb DDoS koruma kapsamı: Tüm VDS, hosting ve dedicated paketlerimizde L3 (paket), L4 (TCP/UDP) ve L7 (uygulama) koruma standart olarak veri merkezi ucunda çalışır. SYN flood, UDP flood, NTP/DNS amplification, HTTP flood, slowloris otomatik filtrelenir. Aşırı paket gönderen IP'ler ağ ucunda düşürülür.
İkinci katman: Cloudflare proxy (ücretsiz plan dahi yeterli) — origin IP gizleme, L7 WAF, anycast CDN, sınırsız mitigation.
# Nginx uygulama katmanı rate limit
limit_req_zone \$binary_remote_addr zone=login:10m rate=5r/m;
server {
location /wp-login.php {
limit_req zone=login burst=2 nodelay;
}
}
WAF Katmanları
- Cloudflare WAF (front) — ücretsiz plan temel kurallar, Pro/Business OWASP CRS + custom
- ModSecurity + OWASP CRS — sunucu içi WAF (Apache/Nginx)
- Imunify360 — Buyukweb cPanel hosting paketlerinde standart olarak gelir; WAF + malware tarama + brute force koruması + reputation block. Ek yapılandırma gerekmez.
Saldırı Tespit Edildiğinde
# 1. Trafik dump
tcpdump -i eth0 -n -w /tmp/incident.pcap host 198.51.100.99 -G 60 -W 1
# 2. Hızlı IP block
ufw insert 1 deny from 198.51.100.99
nft add rule inet filter input ip saddr 198.51.100.99 drop
fail2ban-client set sshd banip 198.51.100.99
cscli decisions add --ip 198.51.100.99 --duration 24h
# 3. Aktif bağlantılar
ss -tunp
netstat -an | awk '{print \$5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -20
# 4. Log forensiği
journalctl -u ssh --since "1 hour ago" | grep "Failed password"
grep "198.51.100.99" /var/log/auth.log /var/log/nginx/access.log
find / -mmin -60 -type f 2>/dev/null | grep -v /proc | grep -v /sys
Sızma şüphesinde: my.buyukweb.com müşteri panelinden VDS snapshot oluşturun (Veeam altyapı), ip link set eth0 down ile sunucuyu izole edin (KVM konsoldan!), yeni VDS + temiz yedekten geri yükleme önerilir.
Compliance Kısa Notu
- KVKK 12. madde: Sızma tespit edildikten sonra 72 saat içinde Kişisel Verileri Koruma Kurulu'na bildirim.
kvkk.gov.trüzerinden online form. - PCI-DSS: Kartlı ödeme almıyorsanız (gateway-only ise) SAQ-A yeterli; teknik denetim gerekmez.
Buyukweb veri sorumlusu olarak altyapı sağlar; uygulama içindeki kişisel veri için veri sorumlusu siz, Buyukweb veri işleyen rolünde. Bursa Tier 3 veri merkezimizde yedeklerin yurt dışına çıkışı yoktur.
Buyukweb Hizmetleri ile Eşleştirme
| İhtiyaç | Önerilen Paket |
|---|---|
| Tek site, WAF lazım | cPanel Hosting (Imunify360 + ModSecurity dahil) |
| Custom Suricata + Wazuh | E5-V4 VDS (₺250/ay başlangıç) |
| Wazuh manager merkez | E5-V4 VDS orta-üst paket (4-8 GB RAM) |
| IDS lab nested VM | Nested VDS (vt-x) |
| Tam donanım, IPMI | Fiziksel Dedicated |
| Güvenli uzak erişim | VPN paketleri (.ovpn) |
Sıkça Sorulan Sorular
Snort 3 ile Suricata arasında hangisi?
Yeni kurulum, paketten hızlı kurulum, eve.json modern log formatı istiyorsanız Suricata. Eski Snort 2 kural setiniz büyükse veya Snort native sözdiziminde özel kuralınız varsa Snort 3. Performans 1-10 Gbps trafikte ikisi arasında belirgin fark yok.
fail2ban ve CrowdSec birlikte çalışır mı?
Evet ama birinin firewall action'ını yönetmesi gerekir. Yeni kurulumda CrowdSec yeterli; eski klasik filter'lar (Postfix gibi) için fail2ban'ı bırakabilirsiniz.
VDS'de Suricata ne kadar RAM tüketir?
1-100 Mbps trafik + ETSI Open kural seti için: 1 GB RAM dar yeterli, 2 GB konforlu, 4+ GB rahat (1 Gbps trafiğe kadar). Buyukweb E5-V4 başlangıç paketi 2 GB RAM ile gelir; orta seviye trafiğe uygun.
WAF sunucu önünde mi sunucuda mı?
İkisi birden ideal. Front (Cloudflare) çoğu trafiği eler; sunucuda (ModSecurity) uygulamaya özel kuralları çalıştırır. Tek tarafa güvenmeyin: Cloudflare bypass edilebilirse sunucu WAF kapalıysa savunma boşalır.
Cloudflare WAF tek başına yeterli mi?
Çoğu küçük site için evet ama: (1) origin IP gizli kalmalı (sunucu firewall sadece Cloudflare IP'leri), (2) ücretsiz plan sınırlı kuraldır — kritik uygulamada Pro/Business + custom rules. Hassas (finans, sağlık) uygulamada ikinci katman ModSecurity ekleyin.
Port 22'yi 2222'ye değiştirmek güvenlik mi?
Hayır, gürültü azaltmadır. Otomatik script'ler 22'ye saldırır; 2222'ye geçince log temizlenir. Hedefli saldırgan Nmap ile yeni portunuzu 30 saniyede bulur. Gerçek güvenlik: SSH key auth + fail2ban + AllowUsers. Port değiştirme bunların yerine değil, ek olarak.
Buyukweb DDoS koruması ne kapsıyor?
L3 (paket), L4 (TCP/UDP) ve L7 (uygulama) koruma. SYN flood, UDP flood, amplification, HTTP flood ve slowloris otomatik filtrelenir. Tüm VDS, hosting ve dedicated paketlerinde standart, ek ücret yok. Hedefli >100 Gbps saldırılarda destek hattı (0850 302 60 70) ile koordineli mitigation devreye girer.
Wazuh agent VDS performansını düşürür mü?
Wazuh agent tipik %2-5 CPU + 100-200 MB RAM kullanır; hissedilir performans etkisi yok. Manager tarafında log işleme yükü vardır — 3+ sunucu ölçeğinde ayrı manager VDS'i ideal.
IDS bana Telegram alert nasıl gönderir?
Hızlı çözüm: tail -F /var/log/suricata/eve.json | jq -c 'select(.event_type=="alert")' çıktısını bir bash döngüsüyle Telegram bot API'sine besleyin. Olgun çözüm: eve.json → Filebeat → ElastAlert veya Wazuh manager integration.
Sonuç
Ağ güvenliği tek araçla bitmez; çok katmanlı savunma prensibinde her katman bir öncekinin atlatabileceği saldırıyı yakalar:
- Veri merkezi ucu DDoS koruması (Buyukweb L3+L4+L7)
- Cloudflare proxy + WAF — origin gizleme + L7
- Sunucu firewall (UFW/nftables)
- SSH key auth + fail2ban/CrowdSec
- Suricata/Snort IDS — ağ trafiği anomali
- Wazuh/Falco — host FIM + log
- ModSecurity/Imunify360 — uygulama WAF
- Düzenli denetim (Nmap, Lynis, OpenVAS)
Buyukweb VDS paketleri (E5-V4 ₺250/ay başlangıç) bu altyapıyı kurmak için kaynak ve L3-L7 DDoS koruması ile güvenli başlangıç sağlar. Sorularınız için Buyukweb 7/24 Türkçe destek hattı: 0850 302 60 70.
İlgili Büyükweb Hizmetleri
Ağ güvenliği ve sunucu sıkılaştırma ihtiyaçlarınız için Türkiye lokasyonlu Büyükweb hizmetleri:
- E5-V4 VDS (Linux/Windows, root) — L3+L4+L7 DDoS koruma, KVM, anında teslim
- VDS Sunucu Karşılaştırma — tüm VDS paketleri tek sayfada
- Datacenter Proxy IP — outbound trafik filtreleme
- OpenVPN Paketleri (.ovpn) — güvenli uzaktan erişim
- Fiziksel Dedicated Sunucu — IPMI, tam donanım
- Tüm Paket Karşılaştırma
Sorularınız için 0850 302 60 70 numaralı destek hattımıza veya iletişim sayfamıza yazabilirsiniz.
Ağ & Network İlgili Hizmetlerimiz
Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin
Etiketler:

