如何知道在 SLES 11 中从哪个 IP 地址执行命令

如何知道在 SLES 11 中从哪个 IP 地址执行命令

我是 SLES 新手,我需要知道哪个 IP 地址执行了命令。我已经搜索过我所遇到的一切但我没有/var/log/auth.log/var/log/secure。我不知道是否必须仅使用 SSH。我确实知道如何查看用户 ( .bash_history) 的历史记录,但它不保存 IP 地址,只保存命令。

无论如何,在 SLES 中可以执行此操作吗? 11 特别是即使使用 SSH。

答案1

IP 地址不执行命令。命令始终由本地运行的程序执行。通常,有关谁运行命令的相关取证信息是运行该程序的用户。

可以将命令追溯到侦听网络输入的服务器,例如,发现某个命令是从 SSH 服务器进程创建的会话中启动的,然后查找该服务器进程正在侦听的远程计算机。如果命令是在终端执行的,那么可以通过检查该命令在哪个终端执行并运行来获取该信息who查看哪个用户正在执行此命令以及他们从哪里登录。之后,可以通过以下方式访问时间、用户终端和 IP 地址之间的关联last

默认情况下不记录单个命令。如果你想这样做,你必须进行设置。一种简单、低开销的方法是流程会计:安装acct,确保服务已启用,然后记录每个单独的命令(但不记录其参数)。运行 lastcomm查看关联命令、时间和终端的日志。然后,您可以将信息与 报告的 IP 地址交叉last

答案2

将此代码添加到/etc/profile

mkdir /var/log/history;chmod 777 /var/log/history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
export HISTFILE=/var/log/history/$(whoami)-$USER_IP-history

您还可以将历史文件名添加到使用日期中。

相关内容