Linux Yapılandırmalarında SSH Güvenliği Nasıl Sağlanır?
SSH (Secure Shell), bilgisayarlar arasında güvenli bir bağlantı kurulmasını sağlayan kritik bir ağ protokolüdür. Ancak, doğru yapılandırılmadığında SSH bağlantıları potansiyel bir güvenlik açığına dönüşebilir. Linux sunucularında SSH güvenliğini sağlamak için birçok yöntem bulunmaktadır. İşte SSH güvenliğini arttırmak için dikkate almanız gereken önemli yapılandırma adımları:
1. SSH Portunu Değiştirme
SSH için varsayılan port olan 22, saldırganlar tarafından en sık hedeflenen porttur. Bu portu değiştirmek, sunucunuza yapılacak brute-force saldırılarının önlenmesine yardımcı olabilir.
SSH yapılandırma dosyasını düzenleyin:
“`bash
sudo nano /etc/ssh/sshd_config
“`
Bu dosyada, Port 22
satırını bulun ve başka bir port numarasıyla değiştirin, örneğin:
“`
Port 2222
“`
Değişiklikleri kaydedin ve SSH servisini yeniden başlatın:
“`bash
sudo systemctl restart sshd
“`
2. Root Girişi Devre Dışı Bırakma
Root kullanıcı üzerinden doğrudan SSH bağlantısı, güvenlik risklerini artıran bir durum yaratır. Root girişi devre dışı bırakılarak bu riski azaltabilirsiniz.
SSH yapılandırma dosyasında, PermitRootLogin
ayarını düzenleyin:
“`
PermitRootLogin no
“`
3. İki Faktörlü Kimlik Doğrulama (2FA)
SSH için iki faktörlü kimlik doğrulama (2FA) uygulamak, güvenliğinizi önemli ölçüde artırabilir. Bunun için Google Authenticator veya benzeri hizmetler kullanılabilir.
4. Güçlü Şifreler ve Anahtar Tabanlı Kimlik Doğrulama
Parola yerine SSH anahtar çiftlerinin kullanılması, daha yüksek bir güvenlik seviyesi sağlar. SSH anahtarı oluşturmak ve yapılandırmak oldukça basittir:
Anahtar oluşturma:
“`bash
ssh-keygen -t rsa -b 4096
“`
Oluşturulan anahtarı sunucunuza kopyalayın:
“`bash
ssh-copy-id user@your-server-ip
“`
5. SSH Banner Ekleme
Sunucuya bağlanacak kullanıcılara bir uyarı mesajı göstererek yetkisiz erişim denemelerini caydırabilirsiniz.
/etc/issue.net
dosyasını oluşturun ve içine bir uyarı mesajı ekleyin. Ardından, /etc/ssh/sshd_config
dosyasında aşağıdaki satırı ekleyin veya düzenleyin:
“`
Banner /etc/issue.net
“`
6. Fail2Ban Kullanımı
Fail2Ban, belirli sayıda başarısız girişimden sonra IP adreslerini otomatik olarak engelleyerek brute-force saldırılarına karşı koruma sağlar. Yüklemek için:
“`bash
sudo apt install fail2ban
“`
Yapılandırmak için jail.local
dosyasını oluşturun ve ssh
jail ayarlarını ekleyin.
7. Düzenli Güncellemeler
Sunucularınızı düzenli olarak güncellemek, güvenlik açıklarının giderilmesinde önemlidir. Sistem paketlerinizi güncel tutmayı ihmal etmeyin:
“`bash
sudo apt update && sudo apt upgrade -y
“`
8. Güvenlik Duvarı Ayarları
Ağ güvenliğinizi artırmak için güvenlik duvarı kurallarını uygulayın. UFW (Uncomplicated Firewall) basit yapılandırma sunar:
“`bash
sudo ufw allow 2222/tcp
sudo ufw enable
“`
Sonuç
Tüm bu adımlar, Linux üzerinde SSH güvenliğinizi önemli ölçüde artıracaktır. Ancak, her zaman genel güvenlik politikalarına ve sistem yönetim prosedürlerine sadık kalarak yenilikleri takip etmeli ve gerekli güncellemeleri yapmalısınız. Eğer farklı türde sunuculara ihtiyacınız varsa, sanal sunucu veya bulut sunucu seçeneklerini değerlendirebilirsiniz. Bu tür hizmetler genellikle SSH güvenliği için ek araçlar ve hizmetler sunarak güvenliği pekiştirir.