Site icon Netopsiyon Online

SSH Güvenliği ve Sunucu Erişim Kontrolleri

SSH (Secure Shell), uzak sunuculara güvenli bir şekilde erişmek için kullanılan en yaygın protokoldür. Ancak, yanlış yapılandırılmış bir SSH erişimi ciddi güvenlik açıklarına neden olabilir.

Bu makalede, SSH güvenliğini artırmak ve sunucu erişim kontrollerini daha güvenli hale getirmek için neler yapacağız onları ele alacağım.


1️⃣ SSH Güvenliğinin Önemi

📌 SSH saldırılarının yaygın türleri:

📌 SSH’nin Güvenli Olmaması Durumunda:

Bu nedenle, SSH erişimini güvenli hale getirmek kritik öneme sahiptir!


2️⃣ SSH Güvenliği İçin En İyi Uygulamalar

1. Varsayılan SSH Portunu Değiştirme

📌 Neden?

📌 Nasıl Yapılır?

sudo nano /etc/ssh/sshd_config

🔹 Aşağıdaki satırı bulun ve değiştirin:

Port 2222  # 22 yerine farklı bir port seçin

🔹 SSH servisini yeniden başlatın:

sudo systemctl restart sshd

⚠️ Not: Yeni portun güvenlik duvarında açık olduğundan emin olun:

sudo ufw allow 2222/tcp

2. SSH Anahtar Tabanlı Kimlik Doğrulama Kullanımı

📌 Neden?

📌 SSH Anahtarı Nasıl Oluşturulur?

ssh-keygen -t rsa -b 4096

🔹 Önerilen ayarlar: RSA 4096-bit veya Ed25519 kullanın.

📌 Anahtarı Sunucuya Kopyalama:

ssh-copy-id -i ~/.ssh/id_rsa.pub kullanıcı@sunucu_ip

🔹 Alternatif:

cat ~/.ssh/id_rsa.pub | ssh kullanıcı@sunucu_ip 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

📌 Sunucuda Parola ile Girişleri Devre Dışı Bırakma:

sudo nano /etc/ssh/sshd_config

🔹 Şu satırı bulun ve değiştirin:

PasswordAuthentication no

🔹 SSH’yi yeniden başlatın:

sudo systemctl restart sshd

🚀 Artık sadece SSH anahtarları ile giriş yapılabilir!


3. SSH İçin Fail2Ban Kullanın (Brute Force Koruması)

📌 Fail2Ban, başarısız SSH girişimlerini algılar ve saldırgan IP’lerini geçici olarak engeller.

📌 Fail2Ban Kurulumu:

sudo apt install fail2ban -y

📌 SSH için koruma ayarları:

sudo nano /etc/fail2ban/jail.local

🔹 Aşağıdaki ayarları ekleyin:

[sshd]
enabled = true
maxretry = 5
bantime = 3600
findtime = 600

🔹 Fail2Ban’i yeniden başlatın:

sudo systemctl restart fail2ban

Artık SSH’ye 5 kez hatalı giriş yapan IP’ler 1 saat boyunca engellenecek!


4. Otomatik Zaman Aşımı (Timeout) Ayarı

📌 Hareketsiz oturumları kapatarak güvenliği artırabilirsiniz.

🔹 SSH Timeout Ayarı:

sudo nano /etc/ssh/sshd_config

🔹 Şu satırları ekleyin:

ClientAliveInterval 300
ClientAliveCountMax 2

🔹 SSH’yi yeniden başlatın:

sudo systemctl restart sshd

🔹 Artık SSH oturumları 10 dakika boyunca aktif olmazsa otomatik olarak kapanacaktır.


Özetle;

SSH güvenliğini sağlamak için:
Varsayılan SSH portunu değiştirin.
Anahtar tabanlı kimlik doğrulama kullanın.
Parola girişlerini devre dışı bırakın.
Fail2Ban ile brute-force saldırılarını engelleyin.
Hareketsiz oturumları otomatik olarak sonlandırın.

Bu önlemleri uygulayarak SSH bağlantılarınızı güçlü ve güvenli hale getirebilirsiniz!

Exit mobile version