Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Make by tools (01.00.01) - action=clean_corrupted_html
Panel
titleSommaire

Table of Contents
stylenone

Contexte

Les tentatives d'intrusion pour corruption ou vol de données ne doivent pas être sous-estimées dans le cadre de votre supervision de vos postes et serveurs Linux. Ce check a donc été conçu pour vous permettre de garder le maximum de vigilance sur les échecs de connexion sur votre parc.

Le check Connections Connection Failed by SSH va vérifier vos logs dans un laps de temps donné ( 24h par défaut, modifiable dans les données ) et vous donner le nombre total de tentatives de connexions échouées, et un tableau comportant une ligne par , trio IP-Host-Interface ( dans le cas d'une connexion réseau ) et ou couple Host-Interface ( dans le cas d'une connexion locale sans adresse IP ).

  • Vous obtiendrez alors le nombre de tentatives au cas pas par cas, la date de la première et de la dernière tentative, et les informations précédemment énoncées.
    • Le tableau est classé par le nombre total de tentatives de connexion pour le trio IP-Host-Interface ou Host-Interface.
  • Deux seuils configurables permettent de déterminer quand le check passe en ATTENTION, puis en CRITIQUE.

Note
iconfalse

Le check ne supporte pas certaines distributions, où la commande 'lastb' n'est plus disponible :

  • >= Debian 12
  • >= Ubuntu 22
  • >= FreeBSD 13
  • >= OpenSuse 13


Un status INCONNU sera renvoyé si le check ne peut pas s'exécuter.

Panel


Image Added

Panel

Image Added

Panel

Image Removed


Paramétrage

Le check utilise la ligne de commande suivante :

Code Block
languagetextbash
themeEmacs
$SHINKEN$LINUXBYSSH_LINUXBYSSHSHINKEN_PLUGINSDIR$/check_linux_health_by_ssh_rust --check check_connection_failed
    -H "$HOSTADDRESS$"
    -u "$_HOSTSSH_USER$"
    -p "$_HOSTSSH_PORT$"
    -i "$_HOSTSSH_KEY$"
    -P "$_HOSTSSH_KEY_PASSPHRASE$"
    -w "$_HOSTCONNECTION_WARNING$"
    -c "$_HOSTCONNECTION_CRITICAL$"
    -l "$_HOSTCONNECTION_INTERFACE$"
    -t "$_HOSTCONNECTION_TIME_LIMIT$"

Données utilisées provenant du modèle

Données communes pour les checks des modèles

Authentification

Excerpt Include
NEW_PAGE - 005.0 - SEF-10821 - Modèle linux_-by_sshNEW_PAGE - 005.0 - SEF-10821 - Modèle linux_by_ssh-SSH
Modèle linux-by-SSH
nopaneltrue

Données spécifiques pour ce check

DonnéeModifiable surUnitéValeur par défautDescription
No Format
CONNECTION_WARNING

l'Hôte

( Onglet Données )

--

5

Définit le nombre de connexions échouées à partir duquel le check passe en CRITIQUE ATTENTION.

No Format
CONNECTION_CRITICAL

l'Hôte

( Onglet Données )

--

10

Définit le nombre de connexions échouées à partir duquel le check passe en ATTENTION CRITIQUE.

No Format
CONNECTION_TIME_LIMIT

l'Hôte

( Onglet Données )

heures

24

Les X dernières heures de logs lus , pour identifier les connexions échouées.

No Format
CONNECTION_INTERFACE

l'Hôte

( Onglet Données )


ssh,tty

Interface Filtres des interfaces de connexion à prendre en compte dans le check, séparées par des virgules.Interfaces supportés : pts,tty,ssh,all.
Les interfaces prises en compte doivent commencer par au moins un des filtres de cette liste.

Exemples :

  • 'ssh' prendra en compte 'ssh:notty'
  • 'tty' ne prendra pas en compte 'ssh:notty'
  • 'tty' prendra en compte 'tty/0'


La valeur ALL peut être utilisé afin de prendre en compte toutes les interfaces.

Données utilisées provenant du check

Pas de données spécifiques pour ce check

Résultat

Exemple

Panel


Image Added

Panel

Image RemovedImage Added




Interprétation des données

Statut

  • Il peut prendre 4 valeurs  OK / CRITIQUE / ATTENTION / INCONNU .

    • Le statut va dépendre du retour de sonde et de la configuration spécifique du check pour les données suivantes :

      • CONNECTION_WARNING
      • CONNECTION_CRITICAL
    • Voici un tableau récapitulatif du statut attendu suivant le retour de sonde :

Info

Affichage des Seuils


Le texte de la colonne  "Affichage des seuils" montre les DONNÉES utilisées et leur valeur définie sur l'équipement supervisé.

Panel

 Image RemovedImage Added

Situation

Statut

Exemple

  • Les
charges dépassent la valeur de
  • nombre de tentatives de connections échouésest supérieur ou égal à CONNECTION_CRITICAL.

CRITIQUE

Image Removed
Panel

Image Added

  • Les
charges dépassent la valeur de
  • nombre de tentatives de connections échouésest supérieur ou égal à CONNECTION_WARNING.

ATTENTION

Image Removed
Panel

Image Added


Métriques

Définition

Nom de la métriqueUnitéDescription
connection_failedNombres de connexion échouées

Pré-requis pour certains checks

Seuil d'avertissementSeuil critique
total--Nombre de connexions échouées

CONNECTION_WARNING

CONNECTION_CRITICAL

Exemple

Panel

Image Added

Les Erreurs

Erreurs spécifiques à ce check

Excerpt
Section

MONITORED HOST - BAD STATE – The command 'lastb' was not found.

Section

Le check va exécuter à distance la commande 'lastb' mais qui n'est pas disponible sur votre machine.

Panel

Image Added

Les commandes 'lastb' et 'last' permettent de récupérer les dernières connexions réussies et échouées à une machine.
Ces commandes sont fournies par le paquet 'util-linux', installé par défaut sur la plupart des distributions Linux.
Cependant, sur certaines distributions récentes, 'lastb' n'est plus distribué et 'last' a été remplacé par une implémentation d'un nouveau paquet : 'wtmpdb'.
Alors le check ne supporte pas la supervision des hôtes aillants les distributions suivantes :

  • >= Debian 12
  • >= Ubuntu 22
  • >= FreeBSD 13
  • >= OpenSuse 13
Section

MONITORED HOST - BAD STATE – Permission denied

Section

L'utilisateur de supervision n'a pas accès aux fichiers de logs btmp ( /var/log/btmp )

Panel

Image Added


Les commandes suivantes permettront

Certains checks requièrent un accès spécifique à des fichiers. Pour se faire une commande est à votre disposition.

Cette commande permettra

au groupe de l'utilisateur choisi pour votre supervision Shinken d'avoir un accès ( en lecture seule ) au fichier /var/log/btmp

( pour le check Connections Failed SSH ) et au fichier /etc/ssh/sshd_config ( pour le check Security SSH ), fichiers

, fichier comportant vos logs de connexions échouées

et votre configuration SSH

.

Sans cet accès

les sondes ne fonctionneront

, la sonde ne fonctionnera pas et vous

renverront le statut "Unknown".

Fonctionnement

La commande modifie le fichier /usr/lib/tmpfiles.d/var.conf qui est chargé de rétablir les droits au redémarrage de la machine. Ce fichier n'est pas disponible sur toutes les distributions Linux, vous pourrez alors avoir une erreur, "no such file or directory", cela n'affecte en rien l'application de la commande.

Ensuite le fichier /etc/logrotate.conf sera modifié de la même façon pour qu'à la rotation des logs (tous les mois par défaut) les droits ne soient pas rétablis.

Pour finir nous changeons donc les droits des fichiers /var/log/btmp et /etc/ssh/sshd_config pour permettre au groupe utilisé pour la supervision ( et donc son utilisateur ) de les lire.

Exécution de la commande

renverra le statut INCONNU.

Info
titleRemarque

Cette série de commandes ne peut être effectuée qu'en ayant les droits root.

Donc en étant connecté au compte root ou en ayant fait la commande "su" au préalable.

Pour donner un accès en lecture seule au fichier /var/log/btmp et au fichier /etc/ssh/sshd_config au groupe shinken, exécutez : 


Commandes à exécuter :

Code Block
languagebash
titleUtilisation
sed -i -e "s/btmp 0600/btmp 0640/g" /usr/lib/tmpfiles.d/var.conf
chmod 640 /var/log/btmp
sed
usermod -aG utmp user-service-shinken

1. La commande sed -i

-e

"s/

create

btmp 0600/

create

btmp 0640/g"

/etc/logrotate.conf chmod 640

/usr/lib/tmpfiles.d/var.conf modifie les droits par défaut du fichier /var/log/

btmp /etc/ssh/sshd_config chown root:shinken /etc/ssh/sshd_config usermod -aG utmp shinken

btmp dans le fichier de configuration des fichiers temporaires.

  • Cette modification garantit que, même après un redémarrage, les permissions de btmp resteront correctes (lecture pour le groupe).
  • Note : Si le fichier /usr/lib/tmpfiles.d/var.conf n'existe pas sur votre système, une erreur "no such file or directory" peut apparaître.  Cela n'affecte en rien l'application de la commande.

2.  La commande chmod 640 /var/log/btmp applique immédiatement les droits nécessaires sur le fichier.

  • Les utilisateurs du groupe pourront lire les journaux des tentatives de connexion échouées.

3. La commande usermod -aG utmp user-service-shinken ajoute l'utilisateur user-service-shinken au groupe utmp, qui a la responsabilité des logs système.

  • Cela permet à l'utilisateur de supervision de lire le fichier /var/log/btmp.
Excerpt Include
Erreurs du pack linux-by-SSH
Erreurs du pack linux-by-SSH
nopaneltrue