Linux里面如何查看系统用户登录日志?
1、linux下登录日志记录在:/var/log目录里的 secure文件。
查看ssh用户的登录日志命令:cd /var/log && more secure
上图中可以看到,用户在11:05:57和12:24:33进行了两次登录。
2、使用last命令,可以列出目前与过去登录系统的用户相关信息。这是一个功能很强大的命令。
语法:last [-R] [-num] [ -n num ] [-adiowx] [ -f file ] [ -t YYYYMMDDHHMMSS ] [name...] [tty...]
例子:last -x :显示系统关闭、用户登录和退出的历史
last -i:显示特定ip登录的情况
last -t 20150303120101: 显示20150303120101之前的登录信息
more /var/log/secure
who /var/log/wtmp
干了些什么?
root账户下输入su - username
切换到username下输入
history
能看到这个用户历史命令,默认最近的1000条。学习Linux,《Linux就该这么学》这本书能提供更全面的学习路线。
Linux查看/var/log/wtmp文件查看可疑IP登陆
last -f /var/log/wtmp
该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,
增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,
last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端tty或时间显示相应的记录。
查看/var/log/secure文件寻找可疑IP登陆次数
二、 脚本生成所有登录用户的操作历史
在linux系统的环境下,不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录,可是假如一台服务器多人登陆,一天因为某人误操作了删除了重要的数据。这时候通过查看历史记录(命令:history)是没有什么意义了(因为history只针对登录用户下执行有效,即使root用户也无法得到其它用户histotry历史)。那有没有什么办法实现通过记录登陆后的IP地址和某用户名所操作的历史记录呢?答案:有的。
通过在/etc/profile里面加入以下代码就可以实现:
PS1="`whoami`@`hostname`:"'[$PWD]'
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/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP}-dbasky.$DT"
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null
source /etc/profile 使用脚本生效
退出用户,重新登录
?面脚本在系统的/tmp新建个dbasky目录,记录所有登陆过系统的用户和IP地址(文件名),每当用户登录/退出会创建相应的文件,该文件保存这段用户登录时期内操作历史,可以用这个方法来监测系统的安全性。
root@zsc6:[/tmp/dbasky/root]ls
10.1.80.47 dbasky.2013-10-24_12:53:08
root@zsc6:[/tmp/dbasky/root]cat 10.1.80.47 dbasky.2013-10-24_12:53:08
1. last命令简介
该命令用来列出目前与过去登录系统的用户相关信息。原文描述说明:show listing of last logged in users
2. last命令文件位置
[root@zcwyou ~]# which last
/usr/bin/last
3. last命令原理
执行last指令时,它会读取位于/var/log目录下名称为wtmp的文件,并把该文件记录的登录系统的用户名单全部显示出来。默认是显示wtmp的记录,btmp能显示的更详细,可以显示远程登录,例如ssh登录。《linux 就该这么学》
注:
utmp文件中保存的是当前正在本系统中的用户的信息。
wtmp文件中保存的是登录过本系统的用户的信息。
25个必会的Linux系统查询命令linux系统查询命令
`# 在\/home目录下查找以gif为后缀的文件 find \/home -name *.gif`24. tail:以反方向查看文件内容。使用方式:tail 文件名 `# 查看myfile文件的后十行 tail -10 myfile`25. history:显示当前用户的操作历史记录。使用方式:history `# 显示上50次命令操作 history -50`以上就是25个常用的Lin...
Linux下文件快速查询的方法linux文件查询
首先是基本的文件名搜索方法,这种搜索方法更多是用在精确定位想要的文件,可以使用命令“locate directoryname\/filename”来进行搜索,它会事先检查系统全部文件,然后返回与文件名最接近的结果,例如我需要查询当前目录下名为“a.txt”的文件,可以使用如下命令:locate .\/a.txt 如果搜索要求不太精确,也...
linux怎么查ip
1、打开linux服务器,然后在linux桌面的空白处点击右键,如下图所示。2、在弹出的下拉选项里,直接点击【打开终端】,如下图所示。3、打开linux服务器的命令终端后,在这里就可以使用获取ip地址命令。4、输入查询linux的ip地址的命令:ifconfig -a,然后回车,如下图所示。5、使用查看linux的ip地址命令...
Linux系统操作轻松查询所有信息linux查询系统
首先,我们可以使用一个指令,当系统运行时可以查找所有前台任务和后台任务的信息,从而可以获得更具体的操作指令,这就是“ps –aux”指令,使用”,user,pid,ppid,stat,cmd,%cpu,%mem”参数,可以查看它们的进程状态,CPU和内存占用情况等信息。其次,使用“netstat –a”命令查看系统内在用...
linux怎么查
- 如果你想查找特定端口,如80,可以通过 `netstat -antulp | grep 80` 来筛选。- 对于3306端口,使用 `netstat -an | grep 3306` 可以查看其使用情况。- 如果你想确认MySQL的默认端口3306是否运行,可以执行 `netstat -an | grep 3306` 来判断。通过这些命令,你可以迅速且直观地了解Linux系统中...
linux如何查进程、杀进程
1.查进程ps命令查找与进程相关的PID号:psa显示现行终端机下的所有程序,包括其他用户的程序。ps-A显示所有程序。psc列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。ps-e此参数的效果和指定"A"参数相同。pse列出程序时,显示每个程序所使用的环境变量。psf用ASCII字符显示...
Linux进程查询方法详解linux怎么查询进程
lsof命令(list of open files,打开文件列表)可以根据PID 查询到进程打开的文件以及文件相关信息,例如文件路径、标识号、用户等信息,而这些信息可以帮助查找占用特别高的文件,从而更好地了解系统的运行状态。以上这些Linux 进程查询命令基本上可以满足大多数查询需求。如果要查看更多进程相关信息,可以使用\/...
linux查询命令?
1.find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。2.locate locate命令其实是find-name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库。3.whereis whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m...
linux查询文件的大小
很多朋友都想知道linux如何查询文件的大小?下面就一起来看看吧!linux查询文件的大小 1、打开linux系统,在linux的桌面的空白处右击。2、在弹出的下拉选项里,点击打开终端。3、在终端窗口中输入stat+文件名,接着按回车键就可以来查看文件的大小以及详细信息。
如何在Linux中检查路由表?
方法一:ip route 命令Linux的ip route命令是网络路由管理的得力助手。使用 ip route show 可查看完整路由表,包括目标网络、下一跳点和标记等信息。更具体地,ip route show to <目标网络> 会显示指定网络的路由路径,而 ip route show default 则揭示系统默认的出站路径。方法二:route 命令与...
桂雁欣丰: 那么Linux操作系统里查看所有用户该怎么办呢?用命令.其实用命令就能很轻松的查看到Linux系统有哪些用户. 1、Linux里查看所有用户 (1)在终端里.其实只需要查看 /etc/passwd文件就行了. (2)看第三个参数:500以上的,就是后面建的...
湘桥区15928384906: linux中怎么查看当前登录用户 - ?
桂雁欣丰: last命令可用于显示特定用户登录系统的历史记录.如果没有指定任何参数,则显示所有用户的历史信息.在默认情况下,这些信息(所显示的信息)将来源于/var/log/wtmp文件.该命令的输出结果包含以下几列信息: 用户名称 tty设备号 历史登...
湘桥区15928384906: linux中怎样显示登录的用户 - ?
桂雁欣丰: 当前ssh登陆的用户,命令:who 曾经等录过的用户,命令:last | more 显示自己的用户名:命令:id
湘桥区15928384906: linux中如何查看哪些用户允许登录 - ?
桂雁欣丰: 在 Linux/UNIX 系统中,要想查看允许哪些用户登录系统的话,可以查看 /etc/passwd 文件,该文件中都有对每一个用户所使用的 SHELL 进行设置(如:/bin/csh、/bin/bash等),如果是这些设置的话,那么就说明这些用户是可以登录系统的;如果有 nologin 标志的话,那么该用户就是无法登录进系统的.
湘桥区15928384906: linux查看是用哪个用户登录 - ?
桂雁欣丰: 以下三种方法看哪种适合你,其中who可以显示所有登陆的用户 [root@mpf215 ~]# id uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [root@mpf215 ~]# whoami root [root@mpf215 ~]# who root pts/0 2017-01-09 13:31 (172.28.160.231)
湘桥区15928384906: linux 查看用户是否能登录 - ?
桂雁欣丰: 你好,查看命令如下:使用w命令查看登录用户正在使用的进程信息 w命令用于显示已经登录系统的用户的名称,以及他们正在做的事.该命令所使用的信息来源于/var/run/utmp文件.w命令输出的信息包括:用户名称 用户的机器名称或tty号 远程主机地址 用户登录系统的时间 空闲时间(作用不大) 附加到tty(终端)的进程所用的时间(JCPU时间) 当前进程所用时间(PCPU时间) 用户当前正在使用的命令 w命令还可以使用以下选项-h忽略头文件信息-u显示结果的加载时间-s不显示JCPU, PCPU, 登录时间
湘桥区15928384906: Linux中显示自己登录的用户用那个命令? - ?
桂雁欣丰: login name:登录用户名;terminal line:使用终端设备;login time:登录到系统的时间.下面对who命令的常用参数进行说明.-m 它的效果同who am i显示出自己在系统中的用户名,登录终端,登录时间-q 只显示用户的登录帐号和登录用户的...
湘桥区15928384906: 如何查看linux的被哪些用户登录过 - ?
桂雁欣丰: 最最简单的就是:在 LINUX 状态下输入:last 命令,即可列出曾经登录过系统的用户.
湘桥区15928384906: linux如何查看有多少用户登录 - ?
桂雁欣丰: 用Linux的who命令,可以列出目前Linux系统上所有已经登录的用户.如果是统计已经登录的用户数目,可以用管道符加wc命令,来统计who命令的结果有几行: who | wc -l
湘桥区15928384906: 如何查看linux下曾经有哪些用户登录 - ?
桂雁欣丰: last 命令:可以在命令后 加用户名.查询此用户的历史登录信息 ;执行last命令其实是显示/var/log/目录下的wtmp文件内容.Wtmp文件是以二进制格式进行存储 的, 如果直接使用文本编辑器查看,查看的会是一堆乱码.