Oncelikle 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 bircok parola veya kullanıcı adı gondermesinden oluşur.

Uzun suredir Ubuntu sunucular kullanıyorum oyun sunucuları, website amaclı kullandım genellikle guvenlik konusunda takıntılı olduğum icin araştırma yaparak aslında cok basit korumalar ile ileri duzeyde koruma sağlayabildiğimi keşfettim bugun size 3 tane korunma yontemini anlatacağım hepsini uygularsanız daha guvenli bir sunucunuz olur.

1. Korunma Yontemi Fail2ban

Fail2ban aslında cok basit bir sistem sunucuya giriş yapmaya calış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ı guncelleyin

[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 klasorune jail.local adında bir dosya oluşturacağız ve ayarlarımızı bunun icine yapacağız. Bu ayarlar nasıl olacak derseniz elimizde parametreler var onları kullanacağız.

Parametreler:

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

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

maxretry = Maksimum kac başarısız işlem ’den sonra “bantime” suresi 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 duzenleyicisini 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:Panoya kopyala
cd .. cd /etc/fail2ban/ sudo nano /etc/fail2ban/jail.local


jail.local dosyasını nano ile actık ve duzenleyip 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​



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 Yontemi 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 icin tarama yapmaları gerekir. Port bulunabilir evet ama guvenliğinizi bir nebze olsun arttırır.

SSHD_config duzenlemesi:

1.
adım olarak nano metin duzenleyicisini 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ı acıyoruz.

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

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

Aşağıdaki gorselde gorduğunuz gibi varsayılan portumuz 22 yani SSH bağlanmak icin kullanılan dunya genelinde kullanılan Port bu. Şimdi biz bu portu diğer sistemler ile cakışmayacak şekilde ayarlayacağız yazdığınız portu başka bir program veya uygulama kullanıyorsa lutfen o portu yazmayın.

Varsayılan Port:



Benim kullandığım port:



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 yuzden Portunuzu değişmeden once lutfen 22 Portunu acık bırakın sonra eklediğiniz Port ile bağlanmaya calışın eğer bağlanamazsanız Port nasıl acılır? buradan port acma adımlarını uygulayın. Kendi ayarladığınız Port bağlantı sağlandığı takdirde 22 portunu silebilirsiniz. Yukarıda eklenen 2332 portu bir ornek o kısma 23 ile 65535 arasında bir sayı yazabilirsiniz.

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

Kod:Panoya kopyala
sudo systemctl restart sshd


Lutfen oturumdan cıkmadan once aşağıdaki komutu yazarak hata olmadığından emin olun.
Kod:Panoya kopyala
sudo systemctl status sshd


3. Korunma Yontemi Guclu Bir Şifre

Şifreniz guclu olmadıktan sonra yukarıda anlattığım şeyleri yapmanız hicbir işinize yaramaz o yuzden olabildiğince karışık ve tum karakterleri iceren bir şifreniz olmalı bunun icin Password Generator yani şifre oluşturucu siteler kullanabilirsiniz fakat kendiniz tum karakterleri kullanarak ezbere bir şifrede oluşturabilirsiniz. Ben aşağıya şifre oluşturabileceğiniz bir kac site bırakacağım. Eğer bu sitelerin oluşturduğu şifreleri kullanmak istiyorsanız lutfen şifrenizi iyi bir yere yedekleyin.

LastPass Password Generator

Ornekler:

&I!MemTJirj2q9s%lPLkUMPE%PxqdBk8 (32 karakter)
CJ&IuTelOyCEsYF!rrleOSFrG5E7Y3J3LXWw9T&#[email protected] (50 karakter)


Avast Password Generator

Ornekler:

!2cLO[yr}]%8.9.=5QjwKYAvvIET(ih{ (32 karakter)
cRJQ7ez+qP&RkV'Spv9,[email protected]!Ez[@b']qRX9n,8hK'Q(gZx (50 karakter)