Debian / Ubuntu - Détecter les attaques effectuées contre votre serveur grâce à Logwatch

Page 1 / 1

Logwatch est très simple à installer et pratique pour détecter les éventuelles attaques de pirates ou les éventuels erreurs produites par les services installés sur votre serveur.
En effet, Logwatch vous envoi un résumé de vos logs par e-mail et ce tous les jours.

Tutoriel testé sous Ubuntu 12.04 et Debian 7.7.0.

Note : Logwatch a besoin de Postfix pour vous envoyer les résumés par e-mail. Pour installer et configurer Postfix, basez-vous sur le tutoriel : Debian - Installer et sécuriser un serveur mails complet

Pour commencer, installer "logwatch".

Bash

apt-get install logwatch

Puis, modifiez le fichier "/usr/share/logwatch/default.conf/logwatch.conf" comme ceci :

Bash

MailTo = webmaster@votre-domaine.com
MailFrom = logwatch@votre-domaine.com

Les modifications seront prises en compte au prochain lancement de logwatch.
Note : Une tache cron "00logwatch" a été créé pour lancer "logwatch" tous les jours à la même heure.

Tous les jours, vous receverez un rapport similaire à ceci :

Plain Text

 ################### Logwatch x.x.x (xx/xx/xx) #################### 
        Processing Initiated: xxx xx xx xx:xx:xx xxxx
        Date Range Processed: yesterday
                              ( xxxx-xx-xx )
                              Period is day.
        Detail Level of Output: 0
        Type of Output/Format: mail / text
        Logfiles for Host: xxxxxxx
 ################################################################## 


 --------------------- dpkg status changes Begin ------------------------ 

 Installed:
    [nom du paquet]:[architecture cpu] x.xx-x

 Upgraded:
    [nom du paquet]:[architecture cpu] x:x.x.x... => x:x.x.x...

 ---------------------- dpkg status changes End ------------------------- 

 
 --------------------- httpd Begin ------------------------ 

 
 A total of xx sites probed the server 
    xx.xx.xx.xx
    xx.xx.xx.xx
    xx.xx.xx.xx
    xx.xx.xx.xx
    xx.xx.xx.xx
 
 Requests with error response codes
    400 Bad Request
       /une-mauvaise-requete.html: x Time(s)
    401 Unauthorized
       /une-page-restreinte.php: x Time(s)
    404 Not Found
       /une-page-inexistante.html: x Time(s)
    405 Method Not Allowed
       /methode-non-autorisee.jpg: x Time(s)
    408 Request Timeout
       null: x Time(s)
    500 Internal Server Error
       /: 1 Time(s)
    501 Not Implemented
       /: x Time(s)
 
 ---------------------- httpd End ------------------------- 

 
 --------------------- IMAP Begin ------------------------ 

 
 [IMAPd] Logout stats:
 ====================
                                    User | Logouts | Downloaded |  Mbox Size
 --------------------------------------- | ------- | ---------- | ----------
       un-compte-email@votre-domaine.com |       x |       xxxx |          x
 ---------------------------------------------------------------------------
                                                 x |       xxxx |          x
 
 
 
 ---------------------- IMAP End ------------------------- 

 
 --------------------- POP-3 Begin ------------------------ 

 
 
 [POP3] Login failures:
 =========================
                                                   Host (user) |          # 
 ------------------------------------------------------------- | -----------
               xx.xx.xx.xx (un-compte-email@votre-domaine.com) |           x
 ---------------------------------------------------------------------------
                                                                           x
 
 
 
 ---------------------- POP-3 End ------------------------- 

 
 --------------------- pam_unix Begin ------------------------ 

 xxxxxftpd:
    Unknown Entries:
       authentication failure; logname= uid=x euid=x tty=/dev/ftpdxxxxxx ruser=xxxxxx rhost=xxx.xxx.xxx.xxx  user=xxxxxx: x Time(s)
 
 su:
    Sessions Opened:
       xxxxx -> root: x Time(s)

 .....

 ---------------------- pam_unix End ------------------------- 

 
 --------------------- Postfix Begin ------------------------ 

       xx   Miscellaneous warnings  
 
    x.xxxK  Bytes accepted                               x,xxx
    x.xxxK  Bytes delivered                              x,xxx
 ========   ==================================================
 
       xx   Accepted                                    xx.xx%
       xx   Rejected                                    xx.xx%
 --------   --------------------------------------------------
       xx   Total                                      100.00%
 ========   ==================================================
 
       xx   5xx Reject relay denied                     xx.xx%
       xx   5xx Reject unknown user                     xx.xx%
 --------   --------------------------------------------------
       xx   Total 5xx Rejects                          100.00%
 ========   ==================================================
 
       xx   Connections             
       xx   Connections lost (inbound) 
       xx   Disconnections          
       xx   Removed from queue      
       xx   Delivered               
 
 
 ---------------------- Postfix End ------------------------- 
 
 
 --------------------- xxxxftpd-messages Begin -----------------------

 
 **Unmatched Entries**
 pam_unix(xxxxftpd:session): session opened for user xxxxxxxx by (uid=x)
 pam_unix(xxxxftpd:session): session closed for user xxxxxxxx
 
 ---------------------- xxxxftpd-messages End ------------------------


 --------------------- sasl auth daemon Begin ------------------------

 
 SASL Authentications failed xx Time(s)
 Service smtp (pam) - xx Time(s):
    Realm domaine.com - xx Time(s):
       User: compte@domaine.com - PAM auth error - xx Time(s):
 
 ...
 
 ---------------------- sasl auth daemon End ------------------------- 
 
 
 --------------------- SSHD Begin ------------------------
 
 Users logging in through sshd:
    xxxxxxxx:
       xx.xx.xx.xx (xx-xx-xx-xx.xxx.fai.com): 2 times
 
 ---------------------- SSHD End ------------------------- 
 
 
 --------------------- Syslog-ng Begin ------------------------ 

 
 Syslog-ng reloaded:		    x Time(s)
 
 ---------------------- Syslog-ng End ------------------------- 

 
 --------------------- Disk Space Begin ------------------------ 

 Filesystem      Size  Used Avail Use% Mounted on
 /dev/xxxx        xxG  x.xG   xxG  xx% /
 
 
 ---------------------- Disk Space End ------------------------- 

 
 ###################### Logwatch End #########################

Si vous ne recevez pas le mail de Logwatch (par exemple : à cause d'un problème avec votre serveur d'e-mails), vous pouvez lancer Logwatch manuellement, en tapant cette commande :
Note : Patientez quelques secondes pendant que Logwatch génère et envoi le rapport par e-mail.

Bash

/etc/cron.daily/00logwatch