Bonjour à tous,
Cela fait un moment que mes bécanes tournent.
J'aimerais avoir des stats sur la fréquence des tentatives d'intrusions.
S'ils sont élevés, alors je prendrais des mesures.
J'ai étudié plusieurs solutions mais sans faire de linux régulièrement, je galère un peu.
Mais l'idée réside dans les deux commandes ci-dessous.
L'une donne le nombre de tentatives lié à une IP.
L'autre donne le nombre de tentative lié à une plage horaire.
Vous auriez une idée pour combiner ces deux besoins ?
Merci beaucoup.
Nombre de tentatives lié à une IP.
grep "authentication failure" auth.log | grep -Po "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | sort | un
4 1.11.62.189
2 1.202.82.212
2 1.28.86.66
Nombre de tentative lié à une plage horaire.
grep 'authentication failure' auth.log | cut -d ':' -f1 | uniq -c
40 2023-09-24T00
14 2023-09-24T02
14 2023-09-24T05
Exemple de cas du auth.log :
2023-09-25T14:50:13.318740+02:00 myhost sshd[460029]: Failed password for invalid user root from 75.130.20.100 port 40358 ssh2
2023-09-25T14:50:23.683302+02:00 myhost sshd[460029]: Failed password for invalid user root from 75.130.20.100 port 40358 ssh2
2023-09-25T14:51:15.438862+02:00 myhost sshd[460029]: Failed password for invalid user root from 75.130.20.100 port 40358 ssh2
2023-09-24T00:00:46.649222+02:00 myhost auth: pam_unix(dovecot:auth): check pass; user unknown
2023-09-24T00:00:46.649418+02:00 myhost auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=mailer-daemon@domain.org rhost=219.128.15.190
2023-09-24T00:00:48.942857+02:00 myhost auth: pam_unix(dovecot:auth): check pass; user unknown
2023-09-24T00:00:48.943008+02:00 myhost auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=mailer-daemon@domain.org rhost=219.128.15.190
2023-09-24T00:01:01.150765+02:00 myhost auth: pam_unix(dovecot:auth): check pass; user unknown
2023-09-24T00:01:01.150917+02:00 myhost auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=mailer-daemon@domain.org rhost=182.225.134.13
2023-09-24T00:01:02.837273+02:00 myhost auth: pam_unix(dovecot:auth): check pass; user unknown
2023-09-24T00:01:02.837429+02:00 myhost auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=mailer-daemon@domain.org rhost=182.225.134.13
2023-09-24T00:01:10.964225+02:00 myhost auth: pam_unix(dovecot:auth): check pass; user unknown
# Je ne sais pas si j'ai bien saisi ...
Posté par legranblon (site web personnel) . Évalué à 2.
Un truc comme ça ?
grep "authentication failure" auth.log | sed -e "s/=/ /g" -e "s/:/ /g" | awk -F ' ' '{print $NF" "$1}' | sort | uniq -c
# fail2ban
Posté par NeoX . Évalué à 6.
ca fait surtout le boulot d'ajouter un filtre sur l'IP qui fait plus de X tentatives en echec sur un service
mais si ca se trouve ca va logger aussi le nombre de tentative
# logwatch
Posté par Nanawel (site web personnel, Mastodon) . Évalué à 3.
En complément, tu as un utilitaire très pratique qui surveille plein de choses et notamment les tentatives d'accès non autorisées à SSH, Postfix, etc. puis t'en fait un rapport par mail chaque jour (ou autre fréquence, c'est sûrement configurable).
C'est logwatch.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.