hello,
je pense que pam_tty_audit répondra à ce que tu recherches.
ou encore sudoreplay (si le sudo est "imposable").
ou utiliser la variable PROMPT_COMMAND pour rediriger la dernière entrée
de l'historique vers *syslog* (si le shell est "imposable").
ou une combinaison de tout ça.
Cordialement,
Fred
Le 2016-09-07 14:27, Alarig Le Lay a écrit :
Bonjour,
Je suis dans un cas où l’intégralité de la session SSH à une machine
doit être loggué. On se connecte en SSH à cette machine en en utilisant
une autre comme proxy :
$ cat ~/.ssh/config
VerifyHostKeyDNS=yes
Host 10.0.0.19
IdentityFile ~/.ssh/id_rsa2
Host 10.0.0.13
ProxyCommand ssh bastion-user@10.0.0.19 -W %h:%p
(je sais bien que l’on peut facilement le contourner en se connectant
directement, mais c’est un labo simple pour le moment, ce sera
différent en
prod)
J’aimerais donc, sur 10.0.0.19 lancer une commande type script qui
enregistre toutes les commandes tapées et les sorties de ces commandes.
Dans le cas d’une connexion directe, je pourrais utiliser
/etc/ssh/sshrc, mais ce fichier n’est pas lu dans le cas d’un simple
forwarding.
Le shell de l’utilisateur qui sert de rebond n’est pas utilisé non
plus,
même avec un nologin je peux me connecter à la machine finale.
Je me pose deux questions (et demie) :
* Quel est l’équivalent de /etc/ssh/sshrc dans le cas de -W ?
* Est-ce que je vais réellement voir ce qui passe ? Le trafic
est relayé par cette machine, mais la session est initiée par
une autre machine.
* Si je ne peux pas voir le trafic, comment puis-je
enregistre la session sur la machine finale sans que
l’utilisateur puisse effacer le fichier qui sera
écrit ? Faire un shell custom et l’utiliser avec
ForceCommand est envisageable, mais c’est la question
des droits UNIX sur le fichier de log qui me pose plus
problème.
Merci pour vos réponses,
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/