SSH Anahtarları Nasıl Oluşturulur?
İlk adım, SSH anahtar tabanlı kimlik doğrulama sistemini kurmaktır. Bu, şifreler yerine anahtarlar kullanarak sunucuya giriş yapmanızı sağlar. Anahtar tabanlı kimlik doğrulama, brute-force saldırılarından korunmanıza yardımcı olur çünkü saldırganların şifreleri tahmin etmeleri çok daha zordur.
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Bu komut, RSA algoritmasını kullanarak 4096 bit uzunluğunda güvenli bir anahtar oluşturacaktır. Sonrasında public key'i (genellikle `.pub` uzantılı dosya) sunucunuza yüklemeniz gerekecek. Bu işlemi tamamladığınızda, şifre girmeden sunucunuza bağlanabilirsiniz.
Sunucu Güvenliği İçin En İyi SSH Port Ayarları
Birçok kişi SSH servisini varsayılan olarak port 22 üzerinden çalıştırır, ancak bu oldukça yaygın bir hata olabilir. Çünkü kötü niyetli kişiler, port 22'yi hedef alarak brute-force saldırıları yapabilirler.
sudo nano /etc/ssh/sshd_config
# "Port 22" satırını bulun ve değiştirin
Port 2200
Bu ayarı yaptıktan sonra, SSH servisini yeniden başlatarak değişikliklerin etkili olmasını sağlayabilirsiniz.
Brute-Force Saldırılarına Karşı Alınabilecek Önlemler
Birçok web yöneticisi için en korkulan saldırı türlerinden biri, brute-force saldırılarıdır. Bu tür saldırılarda, saldırganlar bir dizi farklı şifreyi ardışık olarak denerler. SSH ile korunan sunucular, bu tür saldırılara oldukça açıktır.
1. SSH giriş denemelerini sınırlayın: `fail2ban` gibi araçlar, başarısız giriş denemelerini tespit ederek saldırganları engelleme konusunda oldukça etkilidir.
sudo apt-get install fail2ban
2. MaxAuthTries ayarını düşürün: Bu ayar, başarısız kimlik doğrulama denemelerinin sayısını sınırlar. Aşağıdaki komut ile bu değeri düşürebilirsiniz:
sudo nano /etc/ssh/sshd_config
MaxAuthTries 3
Bu ayar, her oturum açma denemesinde üç başarısız girişten sonra bağlantıyı keser.
SSH Güvenliği İçin Otomatikleştirilmiş Yedekleme Sistemleri Kurmak
Sunucu güvenliğini artırmanın en iyi yollarından biri de veri yedekleme yapmaktır. Yedekleme işlemini manuel olarak yapmak sıkıcı olabilir, ancak bu işlemi otomatikleştirerek çok daha pratik hale getirebilirsiniz.
crontab -e
# Yeni satır ekleyin:
0 2 * * * rsync -avz /home/user/data /path/to/backup
Bu komut, her gece saat 2:00'de `/home/user/data` dizinindeki verilerinizi yedekleyecektir.