1 外部用户/外部主机

/var/log

在CentOS系统上,用户登录历史存储在以下这些文件中:

  • /var/log/wtmp 用于存储系统连接历史记录被last工具用来记录最后登录的用户的列表
  • /var/run/utmp用于记录当前打开的会话被who和w工具用来记录当前有谁登录以及他们正在做什么,而uptime用来记录系统启动时间
  • /var/log/btmp记录失败的登录尝试被lastb工具用来记录最后失败的登录尝试的列表

CentOS下查看最后登录的用户信息

[root@hello ~]# tail /var/log/secure
Jan 29 16:17:44 hello sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Jan 29 16:17:44 hello sudo: pam_unix(sudo:session): session closed for user root
Jan 29 16:17:44 hello su: pam_unix(su-l:session): session closed for user root
Jan 29 16:18:44 hello su: pam_unix(su-l:session): session opened for user root by (uid=0)
Jan 29 16:18:44 hello sudo: root : TTY=unknown ; PWD=/root ; USER=root ; COMMAND=/sbin/service elasticsearch status
Jan 29 16:18:44 hello sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Jan 29 16:18:44 hello sudo: pam_unix(sudo:session): session closed for user root
Jan 29 16:18:44 hello su: pam_unix(su-l:session): session closed for user root
Jan 29 16:19:24 hello su: pam_unix(su-l:session): session opened for user ambari-qa by (uid=0)
Jan 29 16:19:33 hello su: pam_unix(su-l:session): session closed for user ambari-qa [root@sdc01 ~]# tail /var/log/messages
Jan 29 16:19:24 hellosu: (to ambari-qa) root on none
Jan 29 16:19:24 hello systemd: Created slice User Slice of ambari-qa.
Jan 29 16:19:24 hello systemd: Started Session c94084 of user ambari-qa.
Jan 29 16:19:33 hello systemd: Removed slice User Slice of ambari-qa.
Jan 29 16:19:45 hello su: (to root) root on none
Jan 29 16:19:45 hello systemd: Started Session c94085 of user root.
Jan 29 16:19:56 hello su: (to ambari-qa) root on none
Jan 29 16:19:56 hello systemd: Created slice User Slice of ambari-qa.
Jan 29 16:19:56 hello systemd: Started Session c94086 of user ambari-qa.
Jan 29 16:20:02 hello systemd: Removed slice User Slice of ambari-qa.

lastlog

查看root和admin在最近20天内是否有登录

[root@hello ~]# lastlog -t 20|egrep "root|admin"
root Fri Jan 29 16:21:46 +0800 2021

查看最近20天内登录的用户,除root和admin之外

[root@hello ~]# lastlog -t 20|egrep -v "root|admin"
Username Port From Latest
ambari-qa Fri Jan 29 16:22:24 +0800 2021
hdfs Fri Jan 29 14:47:55 +0800 2021
hive Fri Jan 29 14:48:05 +0800 2021

who

查询utmp文件并报告当前登录的每个用户

Who的缺省输出包括用户名、终端类型、登录日期及远程主机。

首先简单介绍一下Centos中记录登陆信息的日志文件有关当前登录用户的信息记录在文件utmp中;登录进入和退出纪录在文件wtmp中;最后一次登录文件可以用lastlog命令察看。

数据交换、关机和重起也记录在wtmp文件中。所有的纪录都包含时间戳。

每次有一个用户登录时,login程序在文件lastlog中察看用户的UID。如果找到了,则把用户上次登录、退出时间和主机名写到标准输出中,然后login程序在lastlog中纪录新的登录时间。

在新的lastlog纪录写入后,utmp文件打开并插入用户的utmp纪录。该纪录一直用到用户登录退出时删除。utmp文件被各种命令文件使用,包括who、w、users和finger。

下一步,login程序打开文件wtmp附加用户的utmp纪录。当用户登录退出时,具有更新时间戳的同一utmp纪录附加到文件中。wtmp文件被程序last和ac使用。

wtmp和utmp文件都是二进制文件,用户需要使用who、w、users、last和ac来使用这两个文件包含的信息。

如果指明了wtmp文件名,则who命令查询以前所有的登陆纪录。使用命令who /var/log/wtmp查看所有登陆记录

[root@hello ~]# who /var/log/wtmp
root pts/0 2021-01-05 14:40 (10.xx.yy.zz)
root pts/2 2021-01-05 15:16 (10.xx.yy.zz)
root pts/3 2021-01-05 16:25 (10.xx.yy.zz)
root pts/4 2021-01-05 16:30 (10.xx.yy.zz)
root pts/5 2021-01-05 17:27 (10.xx.yy.zz)
root pts/6 2021-01-05 17:27 (10.xx.yy.zz)
root pts/0 2021-01-05 20:09 (10.xx.yy.zz)

last

命令详解
  功能说明:列出目前与过去登入系统的用户相关信息。
  语  法:last [-adRx][-f <记录文件>][-n <显示列数>][帐号名称...][终端机编号...]
  补充说明:单独执行last指令,它会读取位于/var/log目录下,名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
  参  数:
  -a  把从何处登入系统的主机名称或IP地址,显示在最后一行。
  -d  将IP地址转换成主机名称。
  -f <记录文件>  指定记录文件。
  -n <显示列数>或-<显示列数>  设置列出名单的显示列数。
  -R  不显示登入系统的主机名称或IP地址。
  -x  显示系统关机,重新开机,以及执行等级的改变等信息。

查看自从文件第1次创建以来登录过的用户

last:last命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户

[root@sdc01 ~]# last
root pts/2 10.xx.yy.vv Fri Jan 29 15:25 still logged in
root pts/0 10.xx.yy.vv Fri Jan 29 14:44 still logged in
root pts/4 10.xx.yy.vv Fri Jan 29 11:27 - 11:30 (00:02)
root pts/3 10.xx.yy.vv Fri Jan 29 11:13 still logged in
root pts/2 10.xx.yy.vv Fri Jan 29 11:03 - 11:58 (00:55)
root pts/0 10.xx.yy.vv Fri Jan 29 09:25 - 11:41 (02:16)
root pts/2 10.xx.yy.vv Thu Jan 28 17:17 - 20:06 (02:49)
root pts/0 10.xx.yy.vv Thu Jan 28 16:51 - 20:06 (03:15)
root pts/0 10.xx.yy.vv Wed Jan 27 19:54 - 19:56 (00:02)

lsof

查看系统中最近的端口连接记录

可用于检查是否被别人攻击,扫描公网地址

# lsof -Pnl +M -i4 | grep "154"
[root@hello ~]# lsof -Pnl +M -i4 | grep "154"
sshd 30963 0 3u IPv4 65160732 0t0 TCP 10.xx.yy.jj:22->10.xx.yy.ii:53374 (ESTABLISHED)
java 104937 1007 518u IPv4 361154709 0t0 TCP 10.xx.yy.jj:8020->10.xx.yy.ii:33020 (ESTABLISHED)
java 104937 1007 544u IPv4 361154787 0t0 TCP 10.xx.yy.jj:50070->10.xx.yy.kk:42802 (ESTABLISHED)

X 参考文献

[Linux]监控外部用户登录及外部主机连接情况的更多相关文章

  1. linux查看ssh用户登录日志与操作日志

    linux查看ssh用户登录日志与操作日志 2013-11-01转载   ssh用户登录日志 linux下登录日志在下面的目录里:  代码如下 复制代码 cd /var/log 查看ssh用户的登录日 ...

  2. Linux如何设置用户登录超时(闲置时间)vi /etc/profile ... export TMOUT=900

    Linux如何设置用户登录超时(闲置时间) 转载莫负寒夏ai 最后发布于2019-08-08 15:04:22 阅读数 1897  收藏 展开 1. 针对所有用户 # vi /etc/profile ...

  3. [转帖]Linux监测某一时刻对外的IP连接情况

    Linux监测某一时刻对外的IP连接情况 https://blog.csdn.net/twt326/article/details/81454171 公司机器有病毒 需要分析一下. 之前有需要,在CS ...

  4. linux中ftp用户登录密码忘记了怎么修改

    先来熟悉一下 vsftp 命令: 启动vsftp用命令: 1.service vsftpd start 重启vsftp用: www.111cn.net1.service vsftpd restart ...

  5. Ubuntu Linux启用root用户登录

    Ubuntu Linux有一个与众不同的特点,那就是初次使用时,你无法作为root来登录系统,为什么会这样?这就要从系统的安装说起.对于其他Linux系统来 说,一般在安装过程就设定root密码,这样 ...

  6. Linux 记录所有用户登录和操作的详细日志

    1.起因 最近Linux服务器上一些文件呗篡改,想追查已经查不到记录了,所以得想个办法记录下所有用户的操作记录. 一般大家通常会采用history来记录,但是history有个缺陷就是默认是1000行 ...

  7. Linux 禁止root 用户登录启用sudo

    1.添加sudo用户执行visudo命令,找到: 复制代码 代码如下: root ALL=(ALL) ALL 在下面增加:(注意,qianyunlai 是Linux新增的一个普通用户),没有的话可创建 ...

  8. linux 以root用户登录ftp

    ftp默认禁止以root用户登录. 可以修改 /etc/ftpusers 文件,把root注释掉,即可以root用户登录ftp

  9. linux基础之用户登录信息查看命令

    用户登录信息查看命令 1.who命令 同一个账号通过不同终端登录也属于不同的登录信息,这里不同的终端包含虚拟终端和模拟终端,因为一个用户通过一个终端登录属于一个session 基本介绍 打印当前系统上 ...

  10. linux系统root用户登录提示“鉴定故障”的解决办法

    同事第一次创建虚拟机,遇到此问题,此前我未曾遇到,搜索到的解决办法记录在此,以防之后忘记. 一.重启系统解决(搜索到的该解决办法较多):https://www.cnblogs.com/lippor/p ...

随机推荐

  1. 上分之路 VP Codeforces Round #744 (Div. 3) ABDE

    VP情况 4 / 8 AC: A,B,D,E1 60 minutes WA: C 4 127   +00:02 +00:28 -7 +00:58 +00:39       手速还在线 D pair排个 ...

  2. 图像处理|Matlab

    图像处理 | Matlab 参考博文: 图像处理-平滑滤波 图像去噪-加性噪声(高斯/椒盐)

  3. ajax的简单应用

    jsp文件: <%@ page import="java.text.SimpleDateFormat" %><%@ page import="java. ...

  4. 十大经典排序之归并排序(C++实现)

    归并排序 思路:(分而治之的思想) 1.申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列: 2.设定两个指针,最初位置分别为两个已经排序序列的起始位置: 3.比较两个指针所指向的元 ...

  5. 龙中华著《Spring Boot实战派》读书笔记之入门篇

    第一章 进入Spring Boot的世界 理念:默认大于配置.有很多集成好的方案,开箱即用.针对痛点:环境配置耗时. 1.1 Spring Boot 的特色: 使用简单 注解方式实现类的定义和功能开发 ...

  6. 2vue

    事件 v-on:click="handle" @click="handle" handle创建在methods里 <!DOCTYPE html> & ...

  7. animation 和 transition 的区别

    Transition 提供了从一种状态过渡到另一种状态的改变. Animation 则可以从不同关键帧(@keyframes)上设置多个过渡点. Transition 关注的是元素指定css属性的变化 ...

  8. 10、jmeter的 Http的请求默认值

    在我们测试过程当中,有很多HTTP协议的请求 这些请求 有很多比如说网址(url)都是相同的 端口也是相同的,路径可能也是相同的 这个时候就需要用到请求默认值,后续直接用就可以  不需要再去配置 后续 ...

  9. ASP.NET利用JQuery实现AJAX(前台脚本代码)调用后台静态方法

    前台页面的script代码 PS: 如果不需要参数的话,就把data那一行删除 $(function () { //AJAX同步后台 var orderid = parseInt($(this).pa ...

  10. 为什么对1e9 + 7取模

    在刷题的时候,很多题目答案都要求结果对1e9 + 7取模 刚开始我非常不理解,为什么要取模,取模难道结果不会变吗? 答案是结果会变,但因为原本需要得出的答案可能超出int64的范围,比如他叫你计算50 ...