linux认证:LINUX用户登录后精确命令记录Linux认证考试

文章作者 100test 发表时间 2009:05:22 11:44:04
来源 100Test.Com百考试题网


  主要功能:
  可以记录哪个ip和时间(精确到秒)作了哪些命令
  通过用户登录时候,重新定义HISTFILE
  HISTFILE文件名包含登录用户名,ip,登录时间(精确到秒)等
  这样即使相同的用户从不同ip、在不同的时间登录都会被记录
  可以记录每条命令的开始执行时间
  把下面的代码直接粘贴到/etc/profile后面就可以了
  #history
  export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"
  USER_IP=`who -u am i 2>./dev/null| awk {print $NF}|sed -e s/[()]//g
  HISTDIR=/var/log/.hist
  if [ -z $USER_IP ]
  then
  USER_IP=`hostname
  fi
  if [ ! -d $HISTDIR ]
  then
  mkdir -p $HISTDIR
  chmod 777 $HISTDIR
  fi
  if [ ! -d $HISTDIR/${LOGNAME} ]
  then
  mkdir -p $HISTDIR/${LOGNAME}
  chmod 300 $HISTDIR/${LOGNAME}
  fi
  export HISTSIZE=4096
  DT=`date %Y%m%d_%H%M%S
  export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.hist.$DT"
  chmod 600 $HISTDIR/${LOGNAME}/*.hist* 2>./dev/null
  得到的结果,永久保存,每个用户的命令记录分目录保存
  # ls -l /var/log/.hist/root/
  -rw------- 1 root root 546 2006-05-26 10:00 218.82.245.54.hist.20060526_092458
  -rw------- 1 root root 243 2006-05-28 13:28 218.82.245.54.hist.20060528_114822
  -rw------- 1 root root 10 2006-05-28 12:18 218.82.245.54.hist.20060528_121605
  查看命令记录
  # export HISTFILE=/var/log/.hist/root/222.72.16.204.hist.20060608_152551
  # history
  1 [2006.06.24 13:22:51] vi /etc/profile
  2 [2006.06.24 13:23:25] cd /var/log/.hist
  3 [2006.06.24 13:23:26] ls -al
  4 [2006.06.24 13:23:30] cd sadmin
  5 [2006.06.24 13:23:31] ls -al
  6 [2006.06.24 13:24:22] more 58.35.169.51.hist.20060524_193219
  7 [2006.06.24 13:24:35] 222.72.16.204.hist.20060622_143133
  8 [2006.06.24 13:24:39] more 222.72.16.204.hist.20060622_143133
  9 [2006.06.24 13:24:51] hist -f 222.72.16.204.hist.20060622_143133
  10 [2006.06.24 13:24:59] history -f 222.72.16.204.hist.20060622_143133
  11 [2006.06.24 13:25:12] history 222.72.16.204.hist.20060622_143133
  12 [2006.06.24 13:25:32] man histtory
  13 [2006.06.24 13:25:38] man history
  14 [2006.06.24 13:26:00] hist
  15 [2006.06.24 13:26:04] history
  16 [2006.06.24 13:26:16] ls
  17 [2006.06.24 13:26:39] export 222.72.16.204.hist.20060622_143133
  18 [2006.06.24 13:26:59] export HISTFILE=222.72.16.204.hist.20060608_152551
  19 [2006.06.24 13:27:07] history  主要功能:
  可以记录哪个ip和时间(精确到秒)作了哪些命令
  通过用户登录时候,重新定义HISTFILE
  HISTFILE文件名包含登录用户名,ip,登录时间(精确到秒)等
  这样即使相同的用户从不同ip、在不同的时间登录都会被记录
  可以记录每条命令的开始执行时间
  把下面的代码直接粘贴到/etc/profile后面就可以了
  #history
  export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"
  USER_IP=`who -u am i 2>./dev/null| awk {print $NF}|sed -e s/[()]//g
  HISTDIR=/var/log/.hist
  if [ -z $USER_IP ]
  then
  USER_IP=`hostname
  fi
  if [ ! -d $HISTDIR ]
  then
  mkdir -p $HISTDIR
  chmod 777 $HISTDIR
  fi
  if [ ! -d $HISTDIR/${LOGNAME} ]
  then
  mkdir -p $HISTDIR/${LOGNAME}
  chmod 300 $HISTDIR/${LOGNAME}
  fi
  export HISTSIZE=4096
  DT=`date %Y%m%d_%H%M%S
  export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.hist.$DT"
  chmod 600 $HISTDIR/${LOGNAME}/*.hist* 2>./dev/null
  得到的结果,永久保存,每个用户的命令记录分目录保存
  # ls -l /var/log/.hist/root/
  -rw------- 1 root root 546 2006-05-26 10:00 218.82.245.54.hist.20060526_092458
  -rw------- 1 root root 243 2006-05-28 13:28 218.82.245.54.hist.20060528_114822
  -rw------- 1 root root 10 2006-05-28 12:18 218.82.245.54.hist.20060528_121605
  查看命令记录
  # export HISTFILE=/var/log/.hist/root/222.72.16.204.hist.20060608_152551
  # history
  1 [2006.06.24 13:22:51] vi /etc/profile
  2 [2006.06.24 13:23:25] cd /var/log/.hist
  3 [2006.06.24 13:23:26] ls -al
  4 [2006.06.24 13:23:30] cd sadmin
  5 [2006.06.24 13:23:31] ls -al
  6 [2006.06.24 13:24:22] more 58.35.169.51.hist.20060524_193219
  7 [2006.06.24 13:24:35] 222.72.16.204.hist.20060622_143133
  8 [2006.06.24 13:24:39] more 222.72.16.204.hist.20060622_143133
  9 [2006.06.24 13:24:51] hist -f 222.72.16.204.hist.20060622_143133
  10 [2006.06.24 13:24:59] history -f 222.72.16.204.hist.20060622_143133
  11 [2006.06.24 13:25:12] history 222.72.16.204.hist.20060622_143133
  12 [2006.06.24 13:25:32] man histtory
  13 [2006.06.24 13:25:38] man history
  14 [2006.06.24 13:26:00] hist
  15 [2006.06.24 13:26:04] history
  16 [2006.06.24 13:26:16] ls
  17 [2006.06.24 13:26:39] export 222.72.16.204.hist.20060622_143133
  18 [2006.06.24 13:26:59] export HISTFILE=222.72.16.204.hist.20060608_152551
  19 [2006.06.24 13:27:07] history
  更多优质资料尽在百考试题论坛 百考试题在线题库 linux认证更多详细资料

相关文章


linux认证:Linux系统下显示多核模式方法Linux认证考试
linux认证:LINUX用户登录后精确命令记录Linux认证考试
linux认证:邮件中继在Linux服务器上的应用Linux认证考试
Linux系统通过手机GPRS上网设置简介Linux认证考试
linux认证:Linux中查看文件的最初创建时间Linux认证考试
系统管理:定制Linux控制台分辨率Linux认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛