Comment désactiver l'historique des commandes de shell bash sur Linux

Comment désactiver l'historique des commandes de shell bash sur Linux

Les commandes l'histoire sont une grande caractéristique de la coquille de bash. Cependant, il y a des moments où il est préférable de le désactiver. Un bon exemple lorsque vous pouvez préférer que l'historique des commandes de Shell Bash soit désactivé est accessible au serveur de production à partir du réseau externe où l'attaquant potentiel peut accéder à votre serveur et relire votre fichier d'historique pour rechercher des commandes utiles, des services utiliser ou insérer accidentellement des mots de passe. Ci-dessous, vous pouvez trouver un tas de commandes pour vous aider à désactiver l'historique d'être stocké ou comment supprimer toutes les commandes actuellement stockées.

Où sont stockés les commandes de l'histoire

Toutes les commandes de votre entrée sur le shell sont stockées dans votre répertoire local dans un fichier appelé .bash_history. Il s'agit d'un fichier d'historique par défaut défini par Histfile variable:

# echo $ histfile / root /.bash_history 

Vous pouvez utiliser un chat ou histoire Commande pour lire toutes les commandes d'historique que vous avez entrées précédemment:

$ cat ~ /.BASH_HISTORY OU $ HISTORY 

Désactiver l'historique pour un shell actuel

Lorsque vous vous connectez à votre boîte Linux, vous pouvez désactiver une commande ALL à stocker dans un fichier d'historique.bash_history En exécutant une commande suivante:

$ set + o History 

Ce que la commande ci-dessus fera, c'est qu'elle empêchera votre shell de stocker toutes les commandes entrées lors de votre session de shell actuelle dans le .bash_history déposer. Vous ne pourrez pas non plus révoquer l'une de vos commandes précédemment entrées.



Historique des commandes propres

Exécutez la commande Linux suivante pour nettoyer à la fois le fichier historique et toutes les commandes de fichier historique actuellement:

$ HISTORY -C 

Après avoir exécuté la commande ci-dessus, vous ne pourrez plus accéder à l'historique pour les commandes d'historique enregistrées et non sauvées.

Désactiver en permanence l'histoire de bash

Toutes les commandes ci-dessus désactiveront votre historique de commande pour un shell actuel uniquement. Pour désactiver définitivement l'historique des commandes de shell Exécutez la commande Linux suivante:

echo 'set + o History' >> ~ /.bashrc 

La prochaine fois que vous vous connectez, votre shell ne stockera aucune commande dans un fichier d'historique .bash_history. Pour appliquer ces paramètres immédiatement pour votre session de shell actuelle .bashrc déposer:

$ . ~ /.bashrc 

Exécutez la commande ci-dessous si vous devez désactiver un système d'historique de commande large:

# echo 'set + o History' >> / etc / profil 

Nettoyez un fichier d'historique sur un hôte de supprimer

Dans le cas où vous avez travaillé sur votre serveur distant pendant que l'historique des commandes est allumé, vous pouvez simplement le supprimer en utilisant ssh commande:

$ ssh user @ linuxserver "> ~ /.bash_history " 

La commande ci-dessus blanchira le fichier d'historique sur un hôte de suppression sans ajouter de commandes supplémentaires.

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Commandes Linux: les 20 meilleures commandes les plus importantes que vous devez…
  • Comment gérer l'histoire de bash
  • Commandes Linux de base
  • Masterring Bash Script Loops
  • Choses à faire après l'installation d'Ubuntu 22.04 Jammy Jellyfish…
  • Enregistrez vos mots de passe sur la ligne de commande avec Gopass (avec…
  • Comment utiliser ADB Android Debug Bridge pour gérer votre Android…