One minute
How to log all bash commands by all user on Linux [id]
Melakukan Logging command pada user linux merupakan salah satu fitur yang diperlukan oleh system administrator, maka dari itu, berikut salah satu cara untuk melakukan pencatatan semua command yang di jalan kan oleh user/
-
Untuk BASH shell, edit pada system-wide runtime BASH config
sudo vim /etc/bash.bashrc
-
Tambahkan perintah ini dibaigan paling bawah
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" )"'
-
Edit file
/etc/rsyslog.d/bash.conf
sudo -e /etc/rsyslog.d/bash.conf
tambahkan kode berikut:
local6.* /var/log/commands.log
-
Edit file
/etc/logrotate.d/syslog
sudo -e /etc/logrotate.d/syslog
dan tambahkan kode berikut:
/var/log/commands.log
-
Restart
rsyslog
servicesudo service rsyslog restart
Hasilnya akan nampak seperti ini:
Sep 15 03:32:52 DB-server ihsan: ihsan [64949]: df -h [0]
Sep 15 03:33:04 DB-server ihsan: ihsan [64949]: ls [0]
Sep 15 03:33:08 DB-server ihsan: ihsan [64949]: ls -al [0]
Sep 15 03:33:28 DB-server ihsan: ihsan [64949]: df -h [0]
Sep 15 03:33:48 DB-server ihsan: ihsan [64949]: cd /tmp/data/ [0]
Sep 15 03:33:51 DB-server ihsan: ihsan [64949]: ls -al [0]
Sep 15 03:33:55 DB-server ihsan: ihsan [64949]: cd .. [0]
Comments