Comment pouvez-vous enregistrer chaque commande que quelqu'un a saisie dans le shell ?
Je demande à la fois de vous protéger si vous êtes connecté au serveur de quelqu'un d'autre et que quelque chose se brise, ou si quelqu'un d'autre est connecté à votre serveur (intentionnellement ou par malveillance).
Même un novice peut contourner l'historique avec unset history
ou créez un nouveau shell pour masquer leurs traces.
Je suis curieux de savoir comment les administrateurs Linux principaux suivent les commandes saisies / les modifications apportées au système.
Réponse acceptée :
Découvrez auditd. Si vous ajoutez
-a exit,always -F arch=b64 -S execve
-a exit,always -F arch=b32 -S execve
vers /etc/audit/audit.rules
toutes les commandes exécutées seront enregistrées. Voir :http://whmcr.com/2011/10/14/auditd-logging-all-commands/
Envoyez-le ensuite à un serveur syslog.