Je pense que l'écran est ce que vous recherchez, mais si vous ne voulez pas rester assis à regarder et que vous voulez "filmer" la session d'un utilisateur, vous pouvez regarder sudo shell.
Si vous configurez l'utilisateur avec cela comme shell, vous pouvez avoir un enregistrement complet de tout ce qui s'est passé, et vous pouvez le "rejouer" et le regarder quand / si vous en avez besoin.
Le seul inconvénient possible est que les journaux peuvent devenir très volumineux, par exemple s'ils exécutent une commande comme find /
, vous aurez également tout cela enregistré - vous devrez donc probablement choisir les comptes pour lesquels l'activer plutôt que de le faire. globalement.
Quant à permettre l'accès des fournisseurs à la connexion, c'est probablement parfait, car vous avez une piste d'audit complète de tout ce qu'ils ont fait, tout (même le retour en arrière) est enregistré et stocké pour être relu.
log_output
est votre option d'enregistrement pour les sudoers et sudoreplay(8)
est votre lecteur.
Selon la sudoers
page de manuel:
log_output: S'il est défini, sudo exécutera la commande dans un pseudo tty et enregistrera toutes les sorties envoyées à l'écran, similaire à la commande script (1). Si la sortie standard ou l'erreur standard n'est pas connectée au tty de l'utilisateur, en raison de la redirection d'E / S ou parce que la commande fait partie d'un pipeline, cette sortie est également capturée et stockée dans des fichiers journaux distincts.
Dans le fichier sudoers, vous mettriez quelque chose comme ceci:
User_Alias SHELL_ACCOUNTS = root,jack
Defaults: SHELL_ACCOUNTS log_output
Ou pour la journalisation basée sur les groupes
Defaults:%shellusers log_output
Voir http://www.gratisoft.us/sudo/sudoers.man.html pour plus de détails.