[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Alternatief voor bash_history ?



Hi,

Paul van der Vlis (paul@vandervlis.nl on 2018-03-19 11:57 +0100):
> 
> Het zou behulpzaam zijn, als ik had kunnen nagaan wat ik om 21:15 voor
> commando had gegeven. Om het voor een volgende keer te voorkomen.
> 
> bash_history is een goede zaak, maar eigenlijk zou ik het loggen van
> commando's graag wat beter geregeld hebben. Zoals een timestamp voor
> elk commando. En dat het direct wordt weggeschreven, ook vanuit
> meerdere terminals tegelijk.

Zoals al aangegeven, heb je hiervoor geen alternatief nodig -- beide
zijn mogelijk met bash zelf. Timestamps kun je activeren met de shell
variable HISTTIMEFORMAT (bijvoorbeeld
https://unix.stackexchange.com/questions/174900/histtimeformat-syntax)
en direct wegschrijven van history kun je doen met PROMPT_COMMAND
(bijvoorbeeld
https://unix.stackexchange.com/questions/1288/preserve-bash-history-in-multiple-terminal-windows).
De officiele documentatie is hier:
https://www.gnu.org/software/bash/manual/html_node/Bash-History-Facilities.html,
maar SE is vaak nuttiger.

Ik heb nog wel een alternatief dat werkt ongeacht welke shell je
gebruikt: je kunt NOEXEC:ALL toevoegen aan sudoers, zodat een root
shell niets meer kan, en alle admins worden gedwongen om sudo te
gebruiken voor ieder commando. Het voordeel daarvan is dat je sudo
logging (syslog) kan gebruiken als audit log; het nadeel is dat je
vervolgens wel EXEC:-uitzonderingen moet maken voor alle commando's die
legitiem andere programma's uitvoeren, en dat zijn er helaas best wel
veel.


Groet,
Arno


Reply to: