====== Historial con fecha en Bash ======
La salida del comando "//history//" con la fecha (día y hora) de cada orden ejecutada puede resultar muy útil en determinados escenarios. Para ellos creamos un fichero en el directorio "///etc/profile.d//" si queremos que esta característica sea aplicada de forma global, en caso contrario, valdría con editar el fichero "//~/.bash_profile//" de cada usuario. También aumentaremos el tamaño del historial a 10 Gb.
Fichero: ///etc/profile.d/history.sh//
#####################################
export HISTTIMEFORMAT="%d/%m/%y %T "
export HISTSIZE="10000"
export HISTFILESIZE="10000"
#####################################
Ejemplo de salida del comando history.
01/23/07 12:45:59 chkconfig -help
01/23/07 12:46:28 cat /etc/inittab
====== Historial de Bash registrando la IP del cliente SSH ======
Se pueden guardar las IPs de sesiones de IPs dentro del mismo dichero .bash_history en forma de comentario o bien en otro fichero a parte (recomendado).
Editar el fichero bash.bashrc (en el home o globalmente en /etc)
PROMPT_COMMAND='ssh_ip=`echo $SSH_CLIENT|awk "{print \\\$1}"`; echo "[$PPID] [$ssh_ip]`history 1`" >>~/.bash_history_sec'
Dicho código se ejecutará siempre al terminar de ejecutar un comando en la terminal, escribiendo en el home del usuario un fichero ".bash_history_sec". Se agrega para el ejemplo dado el PPID.
[3990] [] 504 22/05/13 18:00:14 telnet www.dominio.com 1138
[3990] [] 505 12/06/13 18:00:16 ssh -p 1138 usuario@www.dominio.com
[3813] [10.0.202.4] 510 22/07/13 18:00:21 cat /home/cacas/fichero
[3811] [111.65.202.11] 511 23/07/13 18:00:48 cat .bash_history_sec
[3813] [10.0.202.4] 511 13/08/13 18:00:48 top
[3813] [10.0.202.4] 512 29/08/13 18:03:45 cat /etc/bash.bashrc
NOTA: Lógicamente esto no ofrece ninguna seguridad frente a intrusiones ya que eliminar o falsear el fichero del $HOME es algo trivial (Ver enlaces de interés).
==== Enlaces de interés ====
* https://www.busindre.com/historial_en_bash_sin_perder_comandos (Para .bash_history_sec no sería necesario)
* http://www.softpanorama.org/Scripting/Shellorama/bash_command_history_reuse.shtml
* https://www.busindre.com/espiar_monitorizar_registrar_sesiones_bash
* https://www.busindre.com/espiar_monitorizar_registrar_sesiones_ssh