Root hesabıyla internet üzerinden SSH erişimi vermek, sunucun için en büyük güvenlik risklerinden biri. Saldırganlar önce root hesabını dener çünkü her Linux sistemde root vardır. Bu rehberde root SSH erişimini güvenli şekilde kapatmayı ve alternatif kullanıcıyla çalışmayı göstereceğiz.
Adım adım ilerleyeceğiz: önce yeni kullanıcı oluşturup sudo yetkisi vereceğiz, sonra root girişini kapatacağız. Böylece sunucun hem güvenli olacak hem de yönetilebilir kalacak.
Root Erişimi Neden Kapatılmalı?
- Brute force hedefi: Botlar her zaman "root" kullanıcı adını dener
- Sınırsız yetki: Root olarak yapılan hatalar geri dönüşü olmayan hasara neden olabilir
- İzlenebilirlik: Herkes root kullanırsa kimin ne yaptığı anlaşılamaz
- Güvenlik standartları: PCI-DSS, ISO 27001 gibi standartlar root erişiminin kısıtlanmasını gerektirir
Adım 1: Yeni Yönetici Kullanıcı Oluştur
# Yeni kullanıcı oluştur
sudo adduser yonetici
# Sudo yetkisi ver
sudo usermod -aG sudo yonetici
# Test et
su - yonetici
sudo whoami # "root" çıktısı vermeli
Adım 2: SSH Key Ayarla (Önerilen)
# Yeni kullanıcı için SSH key dizini oluştur
sudo mkdir -p /home/yonetici/.ssh
sudo chmod 700 /home/yonetici/.ssh
# Yerel bilgisayardan public key'i kopyala
# Yerel makinende:
ssh-copy-id -i ~/.ssh/id_rsa.pub yonetici@sunucu-ip
# Veya manuel olarak:
echo "ssh-rsa AAAA...." | sudo tee /home/yonetici/.ssh/authorized_keys
sudo chmod 600 /home/yonetici/.ssh/authorized_keys
sudo chown -R yonetici:yonetici /home/yonetici/.ssh
Adım 3: SSH ile Yeni Kullanıcı Testi
# Yeni terminal aç ve test et
ssh yonetici@sunucu-ip
# sudo çalışıyor mu test et
sudo systemctl status sshd
Adım 4: Root SSH Erişimini Kapat
# SSH yapılandırma dosyasını düzenle
sudo nano /etc/ssh/sshd_config
# Bu satırı bul ve değiştir:
# PermitRootLogin yes
PermitRootLogin no
# Opsiyonel: Sadece belirli kullanıcılara izin ver
AllowUsers yonetici
# SSH servisini yeniden başlat
sudo systemctl restart sshd
Adım 5: Doğrulama
# Root ile bağlanamadığını test et
ssh root@sunucu-ip
# "Permission denied" hatası almalısın
# Yeni kullanıcı ile bağlanabildiğini test et
ssh yonetici@sunucu-ip
# Başarılı olmalı
💡 Güvenli Sunucu = Güvenli Altyapı
Root erişimini kapatmak güvenlik için kritik bir adım. Ama altyapı seviyesinde DDoS koruması da en az onun kadar önemli. HazalHost VDS sunucuları, L3/L4/L7 DDoS korumalı altyapı ile Türkiye lokasyonunda hizmet verir.
Ek Güvenlik Katmanları
# Parola girişini kapat (sadece SSH key ile)
PasswordAuthentication no
# Boş parola engelle
PermitEmptyPasswords no
# X11 forwarding kapat
X11Forwarding no
# MaxAuthTries düşür
MaxAuthTries 3
# Login süresi kısalt
LoginGraceTime 30
# Idle timeout ayarla
ClientAliveInterval 300
ClientAliveCountMax 2
# Fail2Ban kur
sudo apt install fail2ban
# SSH koruması etkinleştir
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
🚀 Güvenlik Yapılandırmasıyla Uğraşmak İstemiyorsan
Root kapatma, firewall, Fail2Ban... Hepsini tek tek kurmak yerine profesyonel altyapıda çalışmak çok daha mantıklı. HazalHost VDS sunucularda DDoS koruması, KVM konsol ve 7/24 destek standart olarak gelir.
Sonuç
Root SSH erişimini kapatmak, sunucu güvenliğinde atılacak en önemli adımlardan biridir. Yapman gereken: yeni kullanıcı oluştur, sudo yetkisi ver, SSH key ayarla, test et ve sonra root erişimini kapat. SSH key + Fail2Ban + UFW üçlüsüyle birleştiğinde sunucun önemli ölçüde korunmuş olur.
Sık Sorulan Sorular (FAQ)
Root erişimini kapattıktan sonra root komutlarını nasıl çalıştıracağım?
sudo komutu ile root yetkisi gerektiren tüm komutları çalıştırabilirsin. Örneğin: sudo apt update
Root erişimini kapattım ama sunucuma bağlanamıyorum, ne yapmalıyım?
VNC veya KVM konsol üzerinden sunucuya bağlanarak /etc/ssh/sshd_config dosyasını düzenle ve PermitRootLogin yes olarak değiştirip SSH'ı yeniden başlat.
Root hesabını tamamen silmeli miyim?
Hayır! Root hesabını silme. Sadece SSH üzerinden erişimini kapat. Root hesabı sistem servisleri tarafından kullanılır ve silmek sistemi bozabilir.