
Sunucu Hardening Checklist: Kurulumdan Sonra Yapılması Gereken 20 Adım
Yeni kurulan bir Linux sunucu varsayılan yapılandırmasıyla üretim ortamına hazır değildir. CIS (Center for Internet Security) benchmark'larına göre varsayılan kurulumlar onlarca güvenlik açığı içerir. Bu checklist, sunucunuzu kurulumdan hemen sonra güçlendirmek için uygulamanız gereken 20 kritik adı
Ahmet Yılmaz
Kıdemli Altyapı Mühendisi
Yeni kurulan bir Linux sunucu varsayılan yapılandırmasıyla üretim ortamına hazır değildir. CIS (Center for Internet Security) benchmark'larına göre varsayılan kurulumlar onlarca güvenlik açığı içerir. Bu checklist, sunucunuzu kurulumdan hemen sonra güçlendirmek için uygulamanız gereken 20 kritik adımı kapsar. Her adım somut komutlar ve doğrulama yöntemleri içerir.
SSH Güçlendirme (Adım 1-4)
# 1. Root girisini devre disi birak
PermitRootLogin no
# 2. Parola ile girisi kapat, yalnizca anahtar tabanli
PasswordAuthentication no
PubkeyAuthentication yes
# 3. SSH portunu degistir
Port 2222
# 4. Bos parola ve X11 forwarding'i kapat
PermitEmptyPasswords no
X11Forwarding no
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2
⚠️ Dikkat: SSH yapılandırmasını değiştirmeden önce mevcut oturumunuzu açık tutun ve yeni bir terminalde bağlantıyı test edin. Yanlış yapılandırma sunucuya erişiminizi kalıcı olarak kaybetmenize neden olabilir.
Firewall ve Ağ Güvenliği (Adım 5-8)
# 5. UFW ile temel firewall kurulumu
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp # SSH (degistirilmis port)
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable
# 6. Fail2Ban kurulumu
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
# 7. IPv6 kullanmiyorsaniz devre disi birakin
echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
# 8. Gereksiz servisleri durdurun
sudo systemctl disable avahi-daemon
sudo systemctl disable cups
sudo ss -tulnp # Acik portlari kontrol edin
Kullanıcı ve Yetki Yönetimi (Adım 9-12)
# 9. Sudo yetkili kullanici olustur
sudo adduser deploy
sudo usermod -aG sudo deploy
# 10. Parola politikasi (min 12 karakter, karmasiklik)
sudo apt install libpam-pwquality -y
# /etc/security/pwquality.conf:
# minlen = 12, dcredit = -1, ucredit = -1, lcredit = -1
# 11. SUID/SGID dosyalarini tara
find / -perm /4000 -type f 2>/dev/null
find / -perm /2000 -type f 2>/dev/null
# 12. /tmp dizinini noexec ile bagla
# /etc/fstab'a ekle:
# tmpfs /tmp tmpfs defaults,noexec,nosuid,nodev 0 0
Kernel ve Sistem Güçlendirme (Adım 13-16)
# 13. IP spoofing korumasi
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# 14. ICMP redirect'leri reddet
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
# 15. SYN flood korumasi
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
# 16. Core dump'lari devre disi birak
fs.suid_dumpable = 0
Loglama ve İzleme (Adım 17-20)
# 17. Auditd kurulumu ve etkinlestirme
sudo apt install auditd -y
sudo systemctl enable auditd
# 18. Kritik dosya degisikliklerini izle
sudo auditctl -w /etc/passwd -p wa -k user_changes
sudo auditctl -w /etc/shadow -p wa -k password_changes
sudo auditctl -w /etc/ssh/sshd_config -p wa -k ssh_changes
# 19. Otomatik guncelleme yapilandirmasi
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
# 20. Dosya butunlugu kontrolu (AIDE)
sudo apt install aide -y
sudo aideinit
sudo cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# Gunluk kontrol icin cron ekle:
# 0 3 * * * /usr/bin/aide --check
💡 İpucu: Bu checklist'i uyguladıktan sonra OpenSCAP veya Lynis ile otomatik güvenlik taraması yapın. Bu araçlar CIS benchmark'larına göre eksik yapılandırmaları raporlar.
SSH güçlendirme detayları için SSH Hardening rehberimizi, firewall yapılandırması için iptables rehberimizi inceleyin. Ağ izolasyonu için VPC rehberimize göz atın. Hosted Cloud bulut sunucuları ile güvenli altyapınızı oluşturun.
Sıkça Sorulan Sorular
Hardening sonrası uygulamalarım çalışmayı durdurursa ne yapmalıyım?
Her adımı tek tek uygulayın ve arasında uygulamalarınızı test edin. Sorun çıkarsa son değişikliği geri alın. Özellikle firewall kuralları ve kernel parametreleri uygulamaları etkileyebilir. Staging ortamında test etmeniz önerilir.
CIS Benchmark nedir?
CIS (Center for Internet Security) Benchmark, işletim sistemleri ve uygulamalar için topluluk tarafından geliştirilen güvenlik yapılandırma standartlarıdır. Level 1 (temel) ve Level 2 (ileri) olmak üzere iki seviye sunar. Bu checklist CIS Level 1 gereksinimlerinin çoğunu kapsar.
Otomatik güncelleme güvenli mi?
Güvenlik güncellemeleri için otomatik güncelleme önerilir. Ancak major sürüm güncellemelerini otomatik yapmayın - bunlar uyumluluk sorunlarına neden olabilir. unattended-upgrades yalnızca güvenlik yamalarını otomatik uygulayacak şekilde yapılandırılabilir.
Bu checklist hangi dağıtımlar için geçerli?
Komutlar Ubuntu/Debian tabanlı dağıtımlar için yazılmıştır. CentOS/RHEL için paket yöneticisi (yum/dnf) ve bazı dosya yolları farklıdır ancak prensipler aynıdır. Dağıtımınıza özel CIS Benchmark dokümanını referans alın.
Hardening'i ne sıklıkla tekrarlamalıyım?
İlk kurulumdan sonra tam checklist uygulanmalıdır. Sonrasında aylık Lynis taraması, haftalık AIDE dosya bütünlüğü kontrolü ve her major güncelleme sonrası yapılandırma doğrulaması yapın.
Sonuç
Sunucu hardening, güvenli bir altyapının ilk adımıdır. SSH güçlendirme, firewall yapılandırması, kernel parametreleri ve audit logları ile saldırı yüzeyinizi minimize edin. Bu 20 adımlık checklist'i her yeni sunucu kurulumunda uygulayın ve düzenli güvenlik taramalarıyla yapılandırmanızı doğrulayın.
Güvenli Sunucu Altyapısı
Hosted Cloud bulut sunucuları ile güçlendirilmiş, güvenli altyapınızı dakikalar içinde kurun.
Güvenli Sunucu Planlarını İncele →Ahmet Yılmaz
Kıdemli Altyapı Mühendisi
10 yılı aşkın bulut altyapısı ve DevOps deneyimiyle Hosted Cloud'un teknik ekibinde yer almaktadır. Kubernetes, Terraform ve yüksek erişilebilirlik mimarileri üzerine uzmanlaşmıştır.
Yorumlar yakında