zoukankan      html  css  js  c++  java
  • [Linux]监控外部用户登录及外部主机连接情况

    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 参考文献

    赞赏-支付宝二维码
    本文作者千千寰宇
    本文链接 https://www.cnblogs.com/johnnyzen
    关于博文:评论和私信会在第一时间回复,或直接私信我。
    版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
    声援博主:若本文对您有帮助,可点击右下角推荐一下。您的鼓励、【赞赏】(左侧赞赏支付码)是博主技术写作的重要动力!
  • 相关阅读:
    浏览器屏蔽百度搜索右侧热搜推荐脚本,收拾流氓头子
    js简单代码实现大banner轮播
    jquery回到顶部代码
    jquery实现隔行换色及移入移出效果
    利用:before和:after给段落添加效果的应用实例
    nginx配置文件应对网站攻击采集垃圾蜘蛛的方法总结
    Cygwin统计日志常用代码,欢迎各位大神补全
    原生js鼠标拖拽div左右滑动
    Day 82 VUE——基础
    Day 81 ES6
  • 原文地址:https://www.cnblogs.com/johnnyzen/p/14345772.html
Copyright © 2011-2022 走看看