Linux Sunucularda Güvenli SSH Konfigürasyonu Nasıl Yapılır?
SSH (Secure Shell), uzak sunuculara güvenli bir şekilde bağlanmayı sağlayan önemli bir protokoldür. Ancak, SSH varsayılan ayarlarıyla kullanılmadığında güvenlik açıklarına yol açabilir. Bu nedenle, Linux sunucularında SSH konfigürasyonunu uygun şekilde gerçekleştirmek, sunucularınızın güvenliğini artırmanın kritik bir parçasıdır. Bu makalede, SSH’nin nasıl daha güvenli hale getirileceğini ve potansiyel saldırılara karşı nasıl korunabileceğinizi anlatacağım.
1. SSH Portunu Değiştirmek
SSH’nin standart portu olan 22 numaralı porta yapılan saldırı denemeleri oldukça yaygındır. Bu portu değiştirmek, brute force saldırılarını azaltabilir.
SSH konfigürasyon dosyası /etc/ssh/sshd_config
içindedir. Port numarasını değiştirmek için bu dosyayı düzenleyin ve aşağıdaki değişikliği yapın:
/etc/ssh/sshd_config
Port 2222
Bağlantı kurarken yeni port numarasını belirtmeyi unutmayın:
“`bash
ssh -p 2222 kullanıcı_adı@host_adresi
“`
2. Root Girişi Devre Dışı Bırakma
Root kullanıcısına direkt SSH erişimini devre dışı bırakmak, güvenliği artırmanın başlıca yollarından biridir. Bu, yetkisiz giriş denemelerinin etkisini azaltır. Yine, konfigürasyon dosyasına gidip aşağıdaki satırı bulup düzenleyin:
/etc/ssh/sshd_config
PermitRootLogin no
3. Güçlü Şifreleme Yöntemleri Kullanma
SSH konfigürasyon dosyasında, hangi şifreleme yöntemlerinin kullanılacağını belirtebilirsiniz. Zayıf şifreleme yöntemlerini devre dışı bırakmak önemlidir. Aşağıdaki kod bloğunu konfigürasyon dosyanıza ekleyebilir ya da var olanı düzenleyebilirsiniz:
/etc/ssh/sshd_config
Ciphers aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-256-etm@openssh.com,hmac-sha2-256
KexAlgorithms diffie-hellman-group-exchange-sha256
4. SSH Anahtarı ile Giriş
Parolalar yerine SSH anahtarı ile giriş yapmak, önemli bir güvenlik önlemidir. SSH anahtarları, neredeyse her zaman parolalardan daha güvenlidir çünkü kaba kuvvet saldırılarına karşı daha dayanıklıdırlar.
Anahtarlarınızı oluşturmak için:
“`bash
ssh-keygen -t rsa -b 4096
“`
Oluşturduğunuz public
anahtarı, hedef sunucudaki ~/.ssh/authorized_keys
dosyasına ekleyin.
5. Belirli IP Adreslerine Erişimi Kısıtlamak
SSH erişimini yalnızca belirli IP adreslerine kısıtlamak, güvenlik sunucularınızın korunmasını artırır. iptables
veya firewalld
kullanarak erişimi düzenleyebilirsiniz.
Örnek olarak iptables
kullanarak:
“`bash
iptables -A INPUT -p tcp -s TRUSTED_IP –dport 2222 -j ACCEPT
iptables -A INPUT -p tcp –dport 2222 -j DROP
“`
6. SSH Servisini Yeniden Başlatma
Yaptığınız değişikliklerin aktif olması için SSH servisini yeniden başlatmayı unutmayın:
“`bash
sudo systemctl restart sshd
“`
Sonuç
Bu adımlarla, SSH konfigürasyonunuzu güvenli hale getirmiş oldunuz. Ancak unutmayın, güvenlik dinamik bir süreçtir ve sürekli olarak gözden geçirilerek güncellenmesi gerekmektedir. Özellikle, Linux sunucularınız için güçlü bir güvenlik duvarı koruması kurmak, bu tür saldırılara karşı kalıcı bir güvenlik sağlar. Ayrıca, VPS sunucu hizmetleri ve bulut sunucu seçenekleri ile daha güvenilir hosting ortamları seçerek veri güvenliğinizi artırabilirsiniz. Linux sunucular üzerinde her zaman daha fazla güvenlik katmanı ekleyerek verilerinizi koruma altına alabilirsiniz.