J'ai un système de production où plusieurs personnes différentes sont autorisées à se connecter à un seul compte - le compte est pour l'application et non pour la personne car nous n'avons pas de comptes personnels sur les serveurs de production.
À des fins d'audit, je veux pouvoir dire qui s'est connecté à quel moment, et comme nous utilisons des clés SSH pour se connecter, il semble logique de suivre cela (car il n'y a pas d'autre identifiant à suivre).
Lorsque SSH authentifie un utilisateur, il enregistre le nom d'utilisateur dans le journal de sécurité du système, mais il ne consigne pas laquelle des clés publiques autorisées a été utilisée lors de la connexion. Est-il possible que OpenSSH signale également quelle clé publique a été utilisée, ou peut-être juste le commentaire associé à cette clé?
Le système d'exploitation utilisé est CentOS 5.6, mais j'aimerais également savoir si c'est possible sur d'autres systèmes d'exploitation.
la source
authorized_keys
fichier, j'ai donc fait ce petit script pour imprimer les empreintes digitales des clés autorisées:(p="$(mktemp)";cat ~/.ssh/authorized_keys|while IFS="$(printf "\n")" read key; do echo $key > $p; ssh-keygen -lf $p; done; rm -f $p)
Si vos gens utilisent ssh-agent, vous pouvez mettre ceci dans votre .bashrc:
la source
Essayez de jouer avec le
LogLevel
paramètre danssshd_config
. Pour plus de détails, reportez-vous àman sshd_config
la source
Un joli billet de blog répond à votre question: http://www.screenage.de/blog/2012/02/10/how-to-log-history-and-logins-from-multiple-ssh-keys-under-one- compte-utilisateur-avec-marionnette /
la source