怎么查看从哪个ip登陆linux做了哪些操作
发布网友
发布时间:2022-04-23 12:00
我来回答
共3个回答
热心网友
时间:2022-04-13 20:44
需要在Linux系统下设置通过登陆IP地址来记录所有用户登录所操作的历史操作,具体操作就是在/etc/profile配置文件的末尾加入以下脚本代码来实现:
[root@server ~]# cat >>/etc/profile<< EOF
>
> history
>
> USER=`whoami`
>
> USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
>
> if [ "$USER_IP" = "" ]; then
> USER_IP=`hostname`
> fi
>
> if [ ! -d /tmp/history ]; then
> mkdir /tmp/history
> chmod 777 /tmp/history
> fi
>
> if [ ! -d /tmp/history/${LOGNAME} ]; then
> mkdir /tmp/history/${LOGNAME}
> chmod 300 /tmp/history/${LOGNAME}
> fi
>
> export HISTSIZE=4096
>
> DT=`date +"%Y-%m-%d_%H:%M:%S"`
>
> export HISTFILE="/tmp/history/${LOGNAME}/${USER}@${USER_IP}_history.$DT"
>
> chmod 600 /tmp/history/${LOGNAME}/*history* 2>/dev/null
>
> EOF
[root@server ~]# source /etc/profile
[root@server ~]# logout
# 此时需要退出系统再重新登录,在/tmp/history/目录下才有记录
通过上面的脚本代码在系统的/tmp下就新建了个history目录(这个目录可以自定义),在目录中记录了所有的登陆过系统的用户和IP地址,然后进入/tmp/history目录查看历史记录:
[root@server ~]# cd /tmp
[root@server tmp]# ll
总计 24
drwx------ 2 root root 4096 2012-10-11 gconfd-root
drwxrwxrwx 3 root root 4096 2012-10-11 history
drwx------ 2 root root 4096 08-11 01:11 keyring-Ki8IOJ
srwxr-xr-x 1 root root 0 2012-10-11 mapping-root
srw------- 1 root root 0 2012-10-11 scim-panel-socket:0-root
drwx------ 2 root root 4096 2012-10-11 ssh-jPPigl3182
drwx------ 2 root root 4096 10-10 21:16 ssh-KDmPtr3350
[root@server tmp]# cd history/
[root@server history]# ll
总计 4
d-wx------ 2 root root 4096 10-10 21:16 root
[root@server history]# cd root/
[root@server root]# ll
总计 4
-rw------- 1 root root 37 10-10 21:16 root@192.168.1.96_history.2012-10-10_21:16:42
#此时就在记录中可以查看到用户名和IP地址,对Linux系统操作的命令和时间。
热心网友
时间:2022-04-13 22:02
last 可以看登陆的信息 做了哪些可以看他当时使用哪个用户登陆了 然后进入那个用户下 history
热心网友
时间:2022-04-13 23:37
who <-- 看到user 从哪IP上线
ps aux <-- 看user 执行哪些processes.