Başarısız SSH giriş girişimlerini nasıl takip edebilirim?

124

Birisinin SSH üzerinden Ubuntu 12.04 sunucusuna kaba kuvvetle giriş yapmaya çalışıp çalışmadığını görmek istiyorum. Bu tür faaliyetlerin gerçekleşip gerçekleşmediğini nasıl görebilirim?

    
sordu Ivan 20.08.2012 08:32

2 cevap

139

Tüm giriş denemeleri /var/log/auth.log 'ye bağlandı.

1. Kaba kuvvet etkileşimli SSH girişlerini filtrele

Bir terminal açın ve aşağıdakini yazın; 1 sayfadan uzunsa yukarı ve aşağı kaydırabilirsiniz; Çıkmak için q yazın:

grep sshd.\*Failed /var/log/auth.log | less
  • İşte benim VPS'lerden birinden gerçek bir örnek:

    Aug 18 11:00:57 izxvps sshd[5657]: Failed password for root from 95.58.255.62 port 38980 ssh2
    Aug 18 23:08:26 izxvps sshd[5768]: Failed password for root from 91.205.189.15 port 38156 ssh2
    Aug 18 23:08:30 izxvps sshd[5770]: Failed password for nobody from 91.205.189.15 port 38556 ssh2
    Aug 18 23:08:34 izxvps sshd[5772]: Failed password for invalid user asterisk from 91.205.189.15 port 38864 ssh2
    Aug 18 23:08:38 izxvps sshd[5774]: Failed password for invalid user sjobeck from 91.205.189.15 port 39157 ssh2
    Aug 18 23:08:42 izxvps sshd[5776]: Failed password for root from 91.205.189.15 port 39467 ssh2
    

2. Başarısız bağlantılar 'ı arayın (yani giriş denemesi yapılmadı, bağlantı noktası tarayıcı olabilir, vb.):

Bu komutu kullan:

grep sshd.*Did /var/log/auth.log | less
  • Örnek:

    Aug  5 22:19:10 izxvps sshd[7748]: Did not receive identification string from 70.91.222.121
    Aug 10 19:39:49 izxvps sshd[1919]: Did not receive identification string from 50.57.168.154
    Aug 13 23:08:04 izxvps sshd[3562]: Did not receive identification string from 87.216.241.19
    Aug 17 15:49:07 izxvps sshd[5350]: Did not receive identification string from 211.22.67.238
    Aug 19 06:28:43 izxvps sshd[5838]: Did not receive identification string from 59.151.37.10
    

Başarısız / kaba kuvvetli giriş denemeleri nasıl azaltılır?

  • SSH'nizi standart olmayan bir bağlantı noktasına geçirmeyi deneyin 22
  • Veya fail2ban .
verilen cevap ish 20.08.2012 08:48
67

Özellikle bir hesapta zayıf bir şifreniz varsa, izleme günlüklerinin zayıf bir çözüm olduğunu iddia ederim. Brute girişimleri çoğu zaman dakikada en az yüzlerce tuşa dener. Size brüt girişimlerinizi e-postayla göndermek için bir cron göreviniz olsa bile, sunucunuza gitmeden önce saatler olabilir.

Herkese açık bir SSH sunucunuz varsa, saldırıya uğramadan önce uzun alan çözümüne ihtiyacınız var

.

fail2ban değerini şiddetle öneriyorum. Vikileri , yapabildiğimden daha iyi olduğunu söylüyor.

  

Fail2ban, günlük dosyalarını tarar (ör. /var/log/apache/error_log ) ve kötü amaçlı işaretleri gösteren çok sayıda parola hatası, kötüye kullanım aramaları vb. gösteren IP'leri yasaklar. Genellikle Fail2Ban, güvenlik duvarı kurallarını, belirtilen IP adreslerini reddetmek için günceller. herhangi bir keyfi eylem (örneğin bir e-posta göndermek veya CD-ROM tepsisini çıkartmak) da yapılandırılabilir. Kutunun dışında Fail2Ban çeşitli servisler için filtrelerle geliyor (apache, curier, ssh, vb.).

Bundan koruma almak, sudo apt-get install fail2ban kadar basit.

Varsayılan olarak, birinin üç başarısız girişimi olduğu anda, IP'leri beş dakikalık yasağı alır. Bu tür bir gecikme aslında bir SSH kaba kuvvet teşebbüsünü durdurur ama eğer şifrenizi unutursanız, gününüze zarar vermez (ama yine de anahtarları kullanmalısınız!)

    
verilen cevap Oli 23.08.2012 11:12

Etiketlerdeki diğer soruları oku