Herkese açık bir adresteki her panel, kullanıcı adı ve sızdırılmış parola listelerini tarayan makinelerce durmadan denenir. Bu yoğunluk hedef alındığınızın işareti değildir. Bir hesabın parolası o listelerden birinde göründüğü anda ihlale dönüşür.
Ne olup bittiğini görün
sudo grep -c "Failed password" /var/log/auth.log
sudo awk '/Failed password/ {print $(NF-3)}' /var/log/auth.log | sort | uniq -c | sort -rn | head
Buna son veren dört şey
- Her yönetici hesabında iki aşamalı doğrulama. Böylece doğru parola tek başına yetmez olur - bakınız panelde iki aşamalı doğrulama.
- Hız sınırlama, böylece bir makine dakikada binlerce değil bir avuç deneme alır - bakınız bir giriş uç noktasını sınırlamak.
- Fail2ban, birkaç başarısızlıktan sonra adresi yasaklamak için - bakınız Fail2ban neyi durdurur.
- Ortak hesap olmasın. Bir kişi, bir giriş; böylece bir silme tek bir silme olur.
admin adını değiştirin ama buna güvenmeyin
Apaçık kullanıcı adını değiştirmek otomatik gürültünün çoğunu kaldırır, çünkü listeler kullanıcı adı yönünden kısa, parola yönünden uzundur. Bu bir koruma değildir: ad genellikle sitenin kendisinden bulunabilir.
Panelin nereden yanıt vereceğini kısıtlayın
# nginx: the panel only answers to the office
location /admin/ {
allow 203.0.113.0/24;
deny all;
}
Beklenmedik bir ülkeden, olağandışı bir saatte, uzun bir başarısızlık dizisinin ardından gelen başarılı bir giriş - işte önemli örüntü budur. Başarısızlıklara değil, başarıya uyarı koyun: başarısızlıklar süreklidir ve herkes bir süre sonra onları okumayı bırakır.
Bir hesabın ele geçirildiğini bulursanız o parolayı değiştirmek işin sonu değildir. Daha ileri gitmediğini varsaymadan önce ele geçirilmiş bir siteyi tespit etmek yazısını okuyun.