Linux Server Güvenlik Rehberi: Sunucunuzu Koruma Altına Alın

z

zafer ak

Yazar

30 December 2025 4 dakika okuma 534 görüntülenme
Linux Server Güvenlik Rehberi: Sunucunuzu Koruma Altına Alın
Linux sunucu güvenliği için temel adımlar: SSH hardening, firewall yapılandırması, fail2ban, güvenlik güncellemeleri ve daha fazlası.

Linux sunucular, doğru yapılandırıldığında son derece güvenlidir. Bu rehberde, sunucunuzu koruma altına almak için temel güvenlik adımlarını öğreneceksiniz.

Linux Server Security

1. Sistem Güncellemeleri

Güvenlik yamalarını düzenli olarak uygulayın:

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# CentOS/RHEL/Rocky
sudo dnf update -y

# Otomatik güvenlik güncellemeleri (Ubuntu)
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

2. SSH Güvenliği

SSH Key Kullanımı

# Local makinede key oluşturma
ssh-keygen -t ed25519 -C "[email protected]"

# Public key'i sunucuya kopyalama
ssh-copy-id -i ~/.ssh/id_ed25519.pub kullanici@sunucu-ip

SSH Yapılandırması

/etc/ssh/sshd_config dosyasını düzenleyin:

# Port değiştirme (opsiyonel)
Port 2222

# Root girişini devre dışı bırakma
PermitRootLogin no

# Parola ile girişi devre dışı bırakma
PasswordAuthentication no

# Sadece belirli kullanıcılara izin
AllowUsers admin developer

# Boşta kalma zaman aşımı
ClientAliveInterval 300
ClientAliveCountMax 2

# SSH yapılandırmasını yeniden yükle
sudo systemctl restart sshd
SSH Security

3. Firewall Yapılandırması

UFW (Uncomplicated Firewall)

# UFW kurulumu ve etkinleştirme
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Gerekli portları açma
sudo ufw allow 2222/tcp    # SSH (özel port)
sudo ufw allow 80/tcp      # HTTP
sudo ufw allow 443/tcp     # HTTPS

# Belirli IP'den erişim
sudo ufw allow from 192.168.1.100 to any port 22

# UFW'yi etkinleştirme
sudo ufw enable

# Durumu kontrol etme
sudo ufw status verbose

iptables

# Mevcut kuralları görüntüleme
sudo iptables -L -v -n

# SSH izni
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# HTTP/HTTPS izni
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# Established bağlantılara izin
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

# Diğer tüm gelen trafiği engelle
sudo iptables -A INPUT -j DROP

# Kuralları kaydetme
sudo apt install iptables-persistent
sudo netfilter-persistent save

4. Fail2Ban Kurulumu

Brute-force saldırılarına karşı koruma:

# Kurulum
sudo apt install fail2ban

# Yapılandırma dosyası oluşturma
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

jail.local içeriği:

[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
destemail = [email protected]
sender = fail2ban@sunucu
action = %(action_mwl)s

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 24h
# Fail2Ban başlatma
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# Durum kontrolü
sudo fail2ban-client status
sudo fail2ban-client status sshd
Cybersecurity Protection

5. Kullanıcı Yönetimi

Sudo Kullanıcısı Oluşturma

# Yeni kullanıcı oluşturma
sudo adduser admin

# Sudo grubuna ekleme
sudo usermod -aG sudo admin

# Root hesabını devre dışı bırakma
sudo passwd -l root

Parola Politikası

# Parola kalitesi kontrolü
sudo apt install libpam-pwquality

# /etc/security/pwquality.conf
minlen = 12
dcredit = -1
ucredit = -1
lcredit = -1
ocredit = -1

6. Dosya Sistemi Güvenliği

# Önemli dosyaları koruma
sudo chmod 600 /etc/shadow
sudo chmod 644 /etc/passwd

# SUID bit kontrolü
find / -perm -4000 -type f 2>/dev/null

# World-writable dosyaları bulma
find / -perm -002 -type f 2>/dev/null

7. Log İzleme

# Önemli log dosyaları
tail -f /var/log/auth.log      # Kimlik doğrulama
tail -f /var/log/syslog        # Sistem mesajları
tail -f /var/log/fail2ban.log  # Fail2ban

# Başarısız giriş denemeleri
grep "Failed password" /var/log/auth.log | tail -20

# Logwatch kurulumu
sudo apt install logwatch
sudo logwatch --output mail --mailto [email protected] --detail high

8. Güvenlik Denetimi

# Lynis güvenlik denetimi
sudo apt install lynis
sudo lynis audit system

# Rkhunter (rootkit tarayıcı)
sudo apt install rkhunter
sudo rkhunter --check

# ClamAV (antivirüs)
sudo apt install clamav clamav-daemon
sudo freshclam
sudo clamscan -r /home

Güvenlik Kontrol Listesi

  • ✅ Sistem güncellemelerini düzenli uygulayın
  • ✅ SSH key kullanın, parola girişini devre dışı bırakın
  • ✅ Root SSH girişini engelleyin
  • ✅ Firewall yapılandırın (UFW/iptables)
  • ✅ Fail2Ban kurun
  • ✅ Gereksiz servisleri kapatın
  • ✅ Log dosyalarını izleyin
  • ✅ Düzenli güvenlik denetimi yapın
  • ✅ Yedekleme stratejisi oluşturun

Sonuç

Linux sunucu güvenliği sürekli bir süreçtir. Bu temel adımları uygulayarak sunucunuzun güvenlik seviyesini önemli ölçüde artırabilirsiniz. Düzenli denetim ve güncelleme yapmayı unutmayın.

İlgili Yazılar