Rehber Ubuntu Sunucuda Kaba Kuvvet Saldırılarına Karşı Güvenliği Sağlama

Calone

Hectopat
Katılım
6 Haziran 2018
Mesajlar
523
Çözümler
1
Öncelikle Kaba Kuvvet Saldırısı yani Brute-Force Attack Nedir?
Kaba kuvvet saldırısı ya da İngilizce Brute-force attack, bir hackerın bir kombinasyonu doğru tahmin etme umuduyla birçok parola veya kullanıcı adı göndermesinden oluşur.

Uzun süredir Ubuntu sunucular kullanıyorum oyun sunucuları, website amaçlı kullandım genellikle güvenlik konusunda takıntılı olduğum için araştırma yaparak aslında çok basit korumalar ile ileri düzeyde koruma sağlayabildiğimi keşfettim bugün size 3 tane korunma yöntemini anlatacağım hepsini uygularsanız daha güvenli bir sunucunuz olur.

1. Korunma Yöntemi Fail2ban

Fail2ban aslında çok basit bir sistem sunucuya giriş yapmaya çalışan IP adresi 3 kere siz bu 3 kereyi ayarlayabiliyorsunuz yanlış şifre girişi yaparsa fail2ban bu IP adresini 10 dakika banlıyor bu 10 dakikada olmak zorunda değil, 20 dakika veya 30 dakika olarak da ayarlayabilirsiniz.

Kurulum:

1.
adım olarak kaynakları güncelleyin

[CODE highlight="1"]sudo apt-get update[/CODE]

2. adım olarak Fail2banı kurmalıyız

[CODE highlight="1"]sudo apt-get install fail2ban[/CODE]

3. adım .config veya .local ayarları

Fail2ban sistemi varsayılan olarak /etc/fail2ban/jail.conf dosyası yapılandırma ve parametrelerin tanımlı olduğu temel dosyadır ancak biz bu dosyayı kullanmayacağız onun yerine /etc/fail2ban klasörüne jail.local adında bir dosya oluşturacağız ve ayarlarımızı bunun içine yapacağız. Bu ayarlar nasıl olacak derseniz elimizde parametreler var onları kullanacağız.

Parametreler:

ignoreip =
Bu listedeki bir adres veya adresler için fail2ban kısıtlamaları etkilenmeyecektir. İlgili alanda CIDR Netmask veya tek IP eklenebilir. Fakat bu özellik için elinizde bir Statik bir IP adresi olmak zorunda yoksa eklediğiniz IP adresi dinamik IP adresiniz değiştiğinde parametrenin çalışmayacağı anlamına gelir.

bantime = Fail2ban tarafından engellenen IP için saniye cinsinden ne kadar bloke kalacağını belirten alandır. Varsayılan 600 saniyedir (10 dakika)

maxretry = Maksimum kaç başarısız işlem’den sonra “bantime” süresi kadar erişimin kısıtlanacağının tanımlandığı alandır. Varsayılan “3” olarak ayarlıdır.

logpath = Fail2banın dikkate alacağı servisin log dosyasıdır.

Jail.local Dosyası Ayarları:

1. adım olarak nano metin düzenleyicisini kuruyoruz (nano olmak zorunda değil vi, vim kullanabilirsiniz).​

[CODE highlight="1"]sudo apt-get install nano[/CODE]​

2. adım olarak jail.local dosyasını oluşturuyoruz.​

Kod:
cd ..
cd /etc/fail2ban/
sudo nano /etc/fail2ban/jail.local
jail.local dosyasını nano ile açtık ve düzenleyip kaydedip kapatmamız gerekiyor ben aşağıda kendi kullandığım jail.local dosyasının parametrelerini verdim siz bunları ayarlayabilirsiniz.​

[DEFAULT]​
bantime = 900​
maxretry = 3​
[sshd]​
enabled = true​

Screenshot_1.png
Parametreleri girdikten sonra sırasıyla CTRL+X, Y ve Enter tuşlarına basarak dosyamızı kaydediyoruz.​
Son adım olarak fail2banı yeniden başlatmamız gerekiyor.​
[CODE highlight="1"]/etc/init.d/fail2ban restart
[/CODE] veya
[CODE highlight="1"]sudo systemctl restart fail2ban[/CODE]

Artık fail2ban kuruldu denemek isterseniz 3 kere şifreyi yanlış girebilirsiniz ama 900 saniye ban yiyeceğinizi unutmayın.

2. Korunma Yöntemi Port Değişikliği

Sunucuya girerken kullandığınız portu değiştirmek Brute Force saldırısı yapacak kişileri birazcık olsun uğraştırır o portu bulmak için tarama yapmaları gerekir. Port bulunabilir evet ama güvenliğinizi bir nebze olsun arttırır.

SSHD_config düzenlemesi:

1.
adım olarak nano metin düzenleyicisini kuruyoruz (nano olmak zorunda değil vi, vim kullanabilirsiniz).

[CODE highlight="1"]sudo apt-get install nano[/CODE]

2. adım olarak sshd_config dosyasını açıyoruz.

[CODE highlight="1"]sudo nano /etc/ssh/sshd_config[/CODE]

3. adım Port satırını ayarlıyoruz.

Aşağıdaki görselde gördüğünüz gibi varsayılan portumuz 22 yani SSH bağlanmak için kullanılan dünya genelinde kullanılan Port bu. Şimdi biz bu portu diğer sistemler ile çakışmayacak şekilde ayarlayacağız yazdığınız portu başka bir program veya uygulama kullanıyorsa lütfen o portu yazmayın.

Varsayılan Port:

Screenshot_2.png

Benim kullandığım port:

Screenshot_3.png

Ayarları yukarıdaki gibi yapmanız gerekiyor Port yazan parametrenin başındaki # işaretini kaldırmazsanız Port değişmez. Neden 2 Port eklediğime gelecek olursak bazı sunucularda sıkıntı oluşabiliyor o yüzden Portunuzu değişmeden önce lütfen 22 Portunu açık bırakın sonra eklediğiniz Port ile bağlanmaya çalışın eğer bağlanamazsanız Port nasıl açılır? buradan port açma adımlarını uygulayın. Kendi ayarladığınız Port bağlantı sağlandığı takdirde 22 portunu silebilirsiniz. Yukarıda eklenen 2332 portu bir örnek o kısma 23 ile 65535 arasında bir sayı yazabilirsiniz.

4. adım SSH yeniden başlatıyoruz.

Kod:
sudo systemctl restart sshd

Lütfen oturumdan çıkmadan önce aşağıdaki komutu yazarak hata olmadığından emin olun.
Kod:
sudo systemctl status sshd

3. Korunma Yöntemi Güçlü Bir Şifre

Şifreniz güçlü olmadıktan sonra yukarıda anlattığım şeyleri yapmanız hiçbir işinize yaramaz o yüzden olabildiğince karışık ve tüm karakterleri içeren bir şifreniz olmalı bunun için Password Generator yani şifre oluşturucu siteler kullanabilirsiniz fakat kendiniz tüm karakterleri kullanarak ezbere bir şifrede oluşturabilirsiniz. Ben aşağıya şifre oluşturabileceğiniz bir kaç site bırakacağım. Eğer bu sitelerin oluşturduğu şifreleri kullanmak istiyorsanız lütfen şifrenizi iyi bir yere yedekleyin.

LastPass Password Generator

Örnekler:

&I!MemTJirj2q9s%lPLkUMPE%PxqdBk8 (32 karakter)
CJ&IuTelOyCEsYF!rrleOSFrG5E7Y3J3LXWw9T&#aino@iRUxX (50 karakter)


Avast Password Generator

Örnekler:

!2cLO[yr}]%8.9.=5QjwKYAvvIET(ih{ (32 karakter)
cRJQ7ez+qP&RkV'Spv9,RH-@P70!Ez[@b']qRX9n,8hK'Q(gZx (50 karakter)
 
Son düzenleme:

Yeni konular

Geri
Yukarı