Articles

Jak skutecznie wyczyścić historię bash

Image: Jack Wallen

na komputerach z systemem Linux historia poleceń bash jest zachowywana. Jest to świetne rozwiązanie, gdy musisz powtórzyć polecenie lub nie pamiętasz dokładnie, jak wykonałeś polecenie w poprzedniej sesji. Można to jednak również postrzegać jako problem bezpieczeństwa. Co zrobić, jeśli ktoś uzyska dostęp do twojego komputera, otworzy okno terminala i sprawdzi historię bash, aby zobaczyć, jakie polecenia uruchomiłeś?

Bash ma przydatny sposób na wyczyszczenie historii: wydaj polecenie history-c. jest mały problem z tym podejściem. Pozwól mi wyjaśnić.

Po pierwsze, twoja historia bash jest zachowana w pliku~/.bash_history. Kiedy masz otwarty terminal i wydajesz polecenie, zapisuje to polecenie do pliku historii. Tak więc wydanie history-c wyczyści historię z tego pliku. Problem pojawia się, gdy masz wiele otwartych okien terminala.

powiedzmy, że masz otwarte dwa okna terminala i wystawiasz history-c Od pierwszego i zamykasz to okno. Następnie przechodzisz do drugiego okna terminala i wpisujesz polecenie exit, aby zamknąć to okno. Ponieważ zostało otwarte drugie okno bash, nawet po uruchomieniu polecenia history-c w pierwszym, historia ta zostanie zachowana. Innymi słowy, polecenie history – C działa tylko wtedy, gdy jest wydawane z ostatniego okna terminala.

Jak to obejść? Opróżniasz .bash_history plik albo na podstawie instancji lub za pomocą zadania crontab zrobić to regularnie. Jeśli Bezpieczeństwo jest dla ciebie poważnym problemem, rozważ skonfigurowanie zadania crontab. Oto jak.

zobacz: Linux Foundation uruchamia program badge w celu zwiększenia bezpieczeństwa open source (ZDNet)

Czyszczenie historii bash na bieżąco

zanim pokażę, jak skonfigurować zadanie crontab do tego, wiem, że ~/.plik bash_history można wyczyścić poleceniem:

cat /dev/null>~/.bash_history

, który opróżni zawartość pliku, ale utrzyma plik w miejscu.

powiedzmy, że chcesz wyczyścić .plik bash_history dla użytkownika olivia (który administruje Twoim serwerem Linux) codziennie o 23:00. Możesz utworzyć zadanie cron w ramach konta olivia. W tym celu zaloguj się jako użytkownik, Otwórz okno terminala i wydaj polecenie crontab-e. Po otwarciu edytora crontab wpisz:

00 23 * * * cat/dev/null >~/.bash_history

Zapisz ten plik, a cron zacznie oczyszczać historię Olivii każdego dnia o 23:00.

metoda surefire

jest to metoda surefire usuwania historii bash. Nie zawsze polegaj na komendzie history-c, ponieważ nigdy nie wiesz, kiedy drugi (lub trzeci) terminal jest nadal otwarty, gotowy do zachowania tej historii.

Zobacz również

  • Jak zsynchronizować Google Cloud na Linuksie z Grive2 (TechRepublic)
  • opcje prywatności GNOME zapewniają użytkownikom jeszcze większe bezpieczeństwo pulpitu (TechRepublic)
  • dlaczego Internet rzeczy potrzebuje open source (TechRepublic)
  • Jak zarządzać uprawnieniami aplikacji na telefonie Ubuntu (TechRepublic)
  • jak używać darkstat do monitorowania ruchu sieciowego serwerów Linux (TechRepublic)
  • Power checklist: zarządzanie i rozwiązywanie problemów z kontami użytkowników Linuksa (Tech Pro research)