debian

Debian SecureCRT如何进行命令历史记录

小樊
38
2025-04-15 22:52:20
栏目: 智能运维

在Debian系统中,SecureCRT本身并不直接管理命令历史记录,但你可以通过配置SSH服务器来记录命令历史。以下是通过rsyslog在Debian系统上记录SSH命令历史的方法:

操作目的

将主机的SSH命令记录通过rsyslog转存到日志服务器中。

操作步骤

  1. 备份配置文件
  1. 修改 /etc/profile
export HISTTIMEFORMAT=",%Y-%m-%d %H:%M:%S,`who am i 2>/dev/null| \
awk '{print $NF}'|sed -e 's/[()]//g'`,"
export PROMPT_COMMAND='\
if [ -z "$OLD_PWD" ];then
    export OLD_PWD=$PWD;
fi;
if [ !-z "$LAST_CMD" ] && [ "$(history 1)" != "$LAST_CMD" ];then
    logger -t shell_cmd -p local4.info "{HOSTIP=$HOSTIP \
    USER=`whoami`,PWD=$OLD_PWD,HISTORY=$(history 1)}";
fi ;
export LAST_CMD="$(history 1)";
export OLD_PWD=$PWD;'
export HOSTIP="$(/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk \
'{print $2}'|tr -d "addr:"|sort|head -n 1)";

第一条配置的作用是格式化history命令的执行文本格式。格式化后history命令执行结果如下图所示,第三条命令是获取主机ip,以便将ip写入脚本中。第二条配置的左右则是如果检测到有命令执行,则将命令记录到rsyslog服务的 local4.info日志中。

  1. 修改 /etc/rsyslog.conf
local4.info @133.***.28:514

该配置的主要作用为将 local4.info 中的日志通过udp的方式将主机发送到我们的日志中转机器上以便采集。

  1. 应用配置

回退方案

以上步骤可以帮助你在Debian系统上通过rsyslog记录SSH命令历史,从而方便后续的审计和追踪。

0
看了该问题的人还看了