Sécurité serveur : que surveiller ?

Maintenant que mon serveur est parti, 7/7, j’aimerais savoir quels sont les points et logs à surveiller pour voir d’éventuels essais d’intrusion, etc…
J’ai installé “fail2ban” et actuellement, le résultat à la question : # fail2ban-client status ssh , semble acceptable avec des ‘0’ partout,
Quels sont les logs plus particulièrement instructif dans ce domaine :question:

Rapidement parce que je suis charette :

  • pour ssh : auth.log
  • pour http (si apache) : access.log, error(s).log
  • pour la machine en général : syslog
    Le reste dépend des services installés sur ta machine

Je te conseille vivement l’utilisation d’un outil comme logwatch qui va zieuter tes logs à ta place et te faire un rapport.

[quote=“antalgeek”]Rapidement parce que je suis charette :

  • pour ssh : auth.log
  • pour http (si apache) : access.log, error(s).log
  • pour la machine en général : syslog
    Le reste dépend des services installés sur ta machine

Je te conseille vivement l’utilisation d’un outil comme logwatch qui va zieuter tes logs à ta place et te faire un rapport.[/quote]
Ça a l’air sympa, en effet.
Doit-il être installé sur la machine à zieuter ou peut-on l’installer sur la machine qui sert à passer les commandes en ssh :question:

Tu l’installes sur le serveur.
Tu as plusieurs configurations possibles : lancement à la main ou via cron (par défaut je crois), il peut t’envoyer le rapport par mail, générer un fichier texte, du html à mettre sur ton site pour y accéder depuis un navigateur, il a plusieurs niveaux de “verbosité”…
C’est un outil très pratique pour un petit serveur maison.

Côté documentation, une fois le paquet installé, tu trouveras un how-to (an anglais) dans /usr/share/doc/logwatch. Pour de la doc en français je te colle un lien si j’en trouve.

L’installation de rkhunter et chkrootkit serait peut être intéressante pour toi :

Merci à vous deux, j’installe demain.

http://www.debian-fr.org/je-suis-pirate-a-l-aide-t24068-75.html?hilit=paquet%20surveillance#p237772

Si je comprends bien ta longue description :stuck_out_tongue: , je dois installer le paquet “surveillance” et c’est tout ?

entre autres (tu peux mettre plusieurs choses, lis le fil en entier). J’utilise également le script suivant

#!/bin/sh grep find /var/lib/dpkg/info/surveillance.postinst | awk '{l=l" "$2} END {print "find "l" -type f"}' | sh > /tmp/.liste_surveillance diff -urN /etc/liste_surveillance /tmp/.liste_surveillance rm /tmp/.liste_surveillance

dans /usr/local/bin/complet et j’éxécute régulierement surveille et complet via cron. J’ai été assez échaudé en son temps par chkrootkit qui n’avait strictement rien détecté d’une intrusion alors même que l’interface eétait en mode promiscuous et que le rootkit était connu…

Pour l’instant, j’ai installé 3 trucs, avant de m’attaquer au lien de François.
Fail2ban = tout semble bon pour le moment
Rkhunter = idem
Logwatch : j’ai besoin d’un décryptage de la partie httpd, qu’est-ce que ça indique :question:

[code]FAIL2BAN …

Status for the jail: ssh
|- filter
| |- File list: /var/log/auth.log
| |- Currently failed: 0
| - Total failed: 1 ====================== No problem, il s'agit d'un mauvais pass de ma part :-)- action
|- Currently banned: 0
| - IP list:- Total banned: 0


RÉSUMÉ DE RKHUNTER …

System checks summary

File properties checks…
Files checked: 126
Suspect files: 0

Rootkit checks…
Rootkits checked : 108
Possible rootkits: 0

Applications checks…
Applications checked: 4
Suspect applications: 0

The system checks took: 1 minute and 32 seconds

All results have been written to the logfile (/var/log/rkhunter.log)

No warnings were found while checking the system.


LOGWATCH …

— httpd Begin -----

Requests with error response codes
404 Not Found
//README: 1 Time(s)
//admin/myadmin/: 1 Time(s)
//admin/phpmyadmin/: 1 Time(s)
//database/: 1 Time(s)
//db/: 1 Time(s)
//dbadmin/: 1 Time(s)
//mydatabase/: 1 Time(s)
//mydb/: 1 Time(s)
//myphp/: 1 Time(s)
//mysql/: 1 Time(s)
//mysqladmin/: 2 Time(s)
//phpMyAdmin/: 1 Time(s)
//phpadm/: 1 Time(s)
//phpmy/: 1 Time(s)
//phpmyadmin/: 1 Time(s)
//pma/: 1 Time(s)
//pmaadmin/: 1 Time(s)
//pmadmin/: 1 Time(s)
//sql/: 1 Time(s)
//sqladmin/: 1 Time(s)
//sqldatabase/: 1 Time(s)
/email//README: 1 Time(s)
/horde-3.0.5//README: 1 Time(s)
/horde-3.0.6//README: 1 Time(s)
/horde-3.0.7//README: 1 Time(s)
/horde-3.0.8//README: 1 Time(s)
/horde-3.0.9//README: 1 Time(s)
/horde//README: 1 Time(s)
/horde2//README: 1 Time(s)
/horde3//README: 1 Time(s)
/mail//README: 1 Time(s)
/mails//README: 1 Time(s)
/mailz//README: 1 Time(s)
/newmail//README: 1 Time(s)
/phpmyadmin/scripts/setup.php: 1 Time(s)
/pma/scripts/setup.php: 1 Time(s)
/robots.txt: 2 Time(s)
/w00tw00t.at.blackhats.romanian.anti-sec:): 1 Time(s)
/webmail//README: 1 Time(s)

– httpd End –


[/code]

toutes les requêtes effectuées sur ton serveur et n’ayant pas abouties:

Tous les trucs en admin sont des essais pour rentrer dans le système (kiddy script basique). Tu as également des recherches de webmail pour relayer du spam…

Merci François, donc pas de soucis quand on lit ce genre de réponse “Requests with error response codes”.
Par contre, quelle serait le genre de réponse à prendre en considération pour ce domaine ?

Très classique tes erreurs 404, pas grand chose à faire à part les ignorer.
Justement as-tu pensé à configurer tes pages d’erreur ?
Réponse : non
En recherchant l’adresse : tonsite.fr/antalgeek je récupère ta version d’apache ainsi que les modules chargés et leur numéro de version.
J’ai fait un peu joujou après avec telnet donc tu verras mon ip traîner dans les log.

Plus d’explications sur la config des pages d’erreurs, stp !

EDIT :
J’ai compris ce que tu voulais dire, je vais faire.

Je n’avais pas fait attention. En effet, sur mon ancienne page, c’était comme ça :
http://ricardo.free.fr/ff

La config des pages d’erreurs, tu veux parler de la config de la signature d’apache non ? Si c’est ça, ça se règle dans /etc/apache2/conf.d/security

Il y a d’une part les pages d’erreur et d’autre part les paramètres ServerSignature et ServerTokens (pour apache). On change la première pour que ce soit dépaysant (et plus joli) et les autres pour ne pas donner d’informations sur le service utilisé.

J’ai bien modifié tocken et signature, je n’ai plus les indications mais je n’arrive pas à faire "remonter " ma page 404 perso.
Sur une autre machine, j’avais un fichier ;;;/conf.d/localized-error-pages mais il n’existe plus sur cette Lenny.
:006

Ca m’a l’air bien parti

[quote=“antalgeek”]Ca m’a l’air bien parti

coucou ! je cherche à afficher ma page

Oui et non :open_mouth:
Je n’arrive toujours pas à afficher ma page.
J’ai essayé en mettant le chemin de celle-là (voir la ligne commentée) mais sans succès.
la capture est celle de /etc/apache2/apache2.conf et ça se passe presque à la fin du fichier.
Si quelqu’un a une idée :115

Suite :
quand je décommente la ligne du chemin qui mène à ma page, j’ai cette ligne qui s’ajoute à l’annonce :

???