Ubuntu 查看用户历史记录


1. 查看用户命令行历史记录

1. 查看当前登录账号所属用户的历史命令行记录

打开命令行,输入

history

就会看到当前登录账号所属用户的历史记录

2. 查看系统所有用户的历史命令行记录

一般情况下,在ubuntu系统中,系统会自动把用户命令行动作记录到当前用户目录下的 .bash_history 文件中,可以通过在系统中搜索 .bash_history 的方式查看系统所有用户的命令行历史记录。具体步骤如下:

  1. 检查系统是否有locate工具

    locate --version

    如果没有,可以根据系统提示安装:

    sudo apt install mlocate

    之后重复执行 locate --version指令,检查是否安装成功。

  2. 更新locate索引

    执行指令更新locate指令的索引

    sudo updatedb
  3. 在系统中查找所有的命令行历史记录文件 .bash_history

    locate .bash_history
  4. 查看命令行历史记录文件

    按照3中查出来的所有记录,可查看指定用户的命令行历史记录。

    比如,查看用户 brian 的命令行历史记录:

    cat /home/brian/.bash_history

2. 查看ssh远程登录记录

1. 查看成功登录日志
sudo last -x

执行结果如下

tms@tms-Precision-Tower-3620:~$ sudo last -x
tms pts/23 192.168.1.1 Wed Aug 31 15:54 still logged in
runlevel (to lvl 5) 4.15.0-142-gener Mon Aug 29 11:40 still running
tms tty7 :0 Mon Aug 29 11:40 gone - no logout
reboot system boot 4.15.0-142-gener Mon Aug 29 11:39 still running
runlevel (to lvl 5) 4.15.0-142-gener Mon Aug 29 10:26 - 11:40 (01:13)
tms tty7 :0 Mon Aug 29 10:26 - crash (01:13)
reboot system boot 4.15.0-142-gener Mon Aug 29 10:26 still running
runlevel (to lvl 5) 4.15.0-142-gener Mon Aug 29 10:03 - 10:26 (00:23)
tms tty7 :0 Mon Aug 29 10:02 - crash (00:23)
reboot system boot 4.15.0-142-gener Mon Aug 29 10:02 still running
runlevel (to lvl 5) 4.15.0-142-gener Fri Aug 26 18:06 - 10:03 (2+15:56)
tms tty7 :0 Fri Aug 26 18:06 - crash (2+15:56)
reboot system boot 4.15.0-142-gener Fri Aug 26 18:05 still running
runlevel (to lvl 5) 4.15.0-142-gener Fri Aug 26 14:40 - 18:06 (03:26)
tms tty7 :0 Fri Aug 26 14:40 - crash (03:25)
reboot system boot 4.15.0-142-gener Fri Aug 26 14:39 still running
tms tty7 :0 Mon Aug 15 14:41 - crash (10+23:58)
runlevel (to lvl 5) 4.15.0-142-gener Mon Aug 15 13:51 - 14:40 (11+00:49)
reboot system boot 4.15.0-142-gener Mon Aug 15 13:50 still running wtmp begins Mon Aug 1 10:28:16 2022

其中:

  • 第一列信息:登录用户名。启动或者重启操作在这里会记录成 reboot,运行级别变化会记录为 runlevel,相当于把 reboot 和 runlevel 记录成系统指令。除去这两个字段都是实际用户名;

    PS: runlevel运行级别

    *0: 关机级别
    *1: 单用户运行级别,运行rc.sysinit和rc1.d目录下的脚本
    *2: 多用户,但系统不会启动NFS,字符模式,在有些linux系统中,级别2为默认模式,具有网络功能,如ubuntu.debian
    *3: 多用户,字符模式,系统启动具有网络功能,redhat常用运行级别
    *4: 用户自定义级别
    *5: 图形界面模式,redhat常用运行级别
    *6: 重启级别
    *S: 单用户运行级别,只运行rc.sysinit文件第二列信息:终端位置。

    pts/0 (伪终端或虚拟终端) 意味着从诸如SSH或telnet的远程连接的用户。

    tty (teletypewriter) 意味着直接连接到计算机或者本地连接的用户,也就是本地登录调出的终端界面,其中tty[1-6]指 ctrl+alt+F1~ctrl+alt+F6调出的界面;tty7指桌面图形界面(可以使用ctrl+alt+F7切换回来);

    如果是启动或者重启操作,这里会显示成system boot

  • 第三列信息:登录地ip 或者 内核。如果看见 :0.0 或者什么都没有,这意味着用户通过本地终端连接。显示内核版本的信息,应该是属于系统的操作,如开机,关机,重启等操作;

  • 第四列信息:开始登录时间。

  • 第五列信息:结束登录是时间。still logged in 表示还未退出,down表示直到正常关机,crash 表示直到强制关机;

  • 第六列信息(括号中的信息):表示整个登录过程持续的时间。格式为 小时:分钟

2. 查看登录失败日志
sudo lastb -x

执行结果如下:

tms@tms-Precision-Tower-3620:~$ sudo lastb -x
tms ssh:notty 192.168.1.1 Wed Aug 31 15:37 - 15:37 (00:00)
tms ssh:notty 192.168.1.2 Tue Aug 16 14:08 - 14:08 (00:00) btmp begins Tue Aug 16 14:08:40 2022

每列代表数据参考1查看成功登录日志

3. 查看最后一次登录日志
sudo lastlog

运行结果如下:

用户名           端口     来自             最后登陆时间
root **从未登录过**
daemon **从未登录过**
bin **从未登录过**
sys **从未登录过**
sync **从未登录过**
games **从未登录过**
man **从未登录过**
lp **从未登录过**
mail **从未登录过**
news **从未登录过**
uucp **从未登录过**
proxy **从未登录过**
www-data **从未登录过**
backup **从未登录过**
list **从未登录过**
irc **从未登录过**
gnats **从未登录过**
nobody **从未登录过**
systemd-timesync **从未登录过**
systemd-network **从未登录过**
systemd-resolve **从未登录过**
systemd-bus-proxy **从未登录过**
syslog **从未登录过**
_apt **从未登录过**
messagebus **从未登录过**
uuidd **从未登录过**
lightdm **从未登录过**
whoopsie **从未登录过**
avahi-autoipd **从未登录过**
avahi **从未登录过**
colord **从未登录过**
speech-dispatcher **从未登录过**
hplip **从未登录过**
kernoops **从未登录过**
pulse **从未登录过**
rtkit **从未登录过**
saned **从未登录过**
usbmux **从未登录过**
ntp **从未登录过**
sshd **从未登录过**
statd **从未登录过**
guest-0b7lra **从未登录过**
guest-70tclo **从未登录过**

可以看到,用户名为tms的用户,在2022年8月31日 16:50:42远程登录了服务器。

4. 查看当前登录的用户
sudo who

返回信息:

tms@tms-Precision-Tower-3620:~$ sudo who
tms tty7 2022-08-29 11:40 (:0)
tms pts/0 2022-08-31 16:50 (192.168.1.1)
tms pts/19 2022-08-31 15:01 (192.168.1.1)
tms pts/20 2022-08-31 15:15 (192.168.1.1)
tms pts/21 2022-08-31 15:27 (192.168.1.1)
tms pts/22 2022-08-31 15:37 (192.168.1.1)
tms pts/23 2022-08-31 15:54 (192.168.1.1)

3. 查看火狐浏览器使用记录

1. 从火狐浏览器导出使用记录

安装工具 sqlite3

# 查看是否已安装工具sqlite3
sqlite3 --version
# 返回
# 3.11.0 2016-02-15 17:29:24 3d862f207e3adc00f78066799ac5a8c282430a5f
# 如果没安装,执行
sudo apt install sqlite3

安装完毕,执行指令:

sqlite3 ~/.mozilla/firefox/*default/places.sqlite "SELECT datetime(moz_historyvisits.visit_date/1000000,'unixepoch'), moz_places.url FROM moz_places, moz_historyvisits WHERE moz_places.id = moz_historyvisits.place_id"|sort

系统打印信息如下:

2022-08-31 05:15:08|https://www.mozilla.org/privacy/firefox/
2022-08-31 05:15:10|https://www.mozilla.org/en-US/privacy/firefox/
2022-08-31 10:31:26|http://www.baidu.com/
2022-08-31 10:31:28|https://www.baidu.com/

参考

[1]. ubuntu服务器安全与防护-查看和隐藏登录信息

Ubuntu 查看用户历史记录的更多相关文章

  1. ubuntu查看系统资源占用(内存,cpu和进程)

    ubuntu查看系统资源占用(内存,cpu和进程) 1  top 查看ubuntu的资源占用的命令为$: top    说明:top命令就可以查看内存,cpu和进程了,很方便 top: 主要参数 d: ...

  2. Linux查看用户和组命令

    在Linux系统里,我们会经常用Linux查看用户的命令,在这里我们一些命令进行了总结,总共有7个,并做了详细的解释,以便让大家更深入的理解,接下来让我们一起来看看这些命令和具体应用. 一.Linux ...

  3. Ubuntu操作用户账户

    Git Gerrit $是普通管员,#是系统管理员,在Ubuntu下,root用户默认是没有密码的,因此也就无法使用(据说是为了安全).想用root的话,得给root用户设置一个密码: sudo pa ...

  4. linux查看用户登录时间以及命令历史

    1.查看当前登录用户信息 who命令: who缺省输出包括用户名.终端类型.登陆日期以及远程主机. who /var/log/wtmp 可以查看自从wtmp文件创建以来的每一次登陆情况 (1)-b:查 ...

  5. ref:linux查看用户登录时间以及命令历史

    ref:https://blog.csdn.net/csdn924618338/article/details/73555725/ 1.查看当前登录用户信息 who命令: who缺省输出包括用户名.终 ...

  6. linux 用户管理(3)----查看用户登录时间以及命令历史

    1.查看当前登录用户信息 who命令: who缺省输出包括用户名.终端类型.登陆日期以及远程主机. who /var/log/wtmp 可以查看自从wtmp文件创建以来的每一次登陆情况 (1)-b:查 ...

  7. ubuntu查看mysql版本的几种方法

    ubuntu查看mysql版本的几种方法 mysql 1:在终端下:mysql -V(大写) //代码 $ mysql -V mysql Ver 14.14 Distrib 5.5.46, for d ...

  8. linux(ubuntu) 查看系统设备信息

    ubuntu查看版本命令 方法一: 在终端中执行下列指令: cat /etc/issue 方法二: 使用 lsb_release 命令也可以查看 Ubuntu 的版本号,与方法一相比,内容更为详细. ...

  9. ubuntu查看系统资源占用(内存,cpu和进程)

    http://blog.csdn.net/vivian187/article/details/51476043 http://bluexp29.blog.163.com/blog/static/338 ...

  10. Linux组管理、用户管理、查看用户信息、usermod、which、切换用户、修改文件具体权限

    组管理 提示:创建组/删除组的终端命令都需要通过sudo执行 序号 命令 作用 01 groupadd组名 添加组 02 groupdel组名 删除组 03 cat/etc/group 确认组信息 0 ...

随机推荐

  1. Ubuntu20.04桌面版图文安装(超详细)

    参考文档: https://baijiahao.baidu.com/s?id=1670100505795119581&wfr=spider&for=pc https://mirrors ...

  2. Jetbrains系列产品最新激活方法[持续更新]

    Jetbrains系列产品最新激活方法[持续更新] 2021.3.4系列激活 方法一: 2021.3.4参考文章: https://www.exception.site/essay/how-to-fr ...

  3. GDB 中内存打印命令

    GDB 中使用 "x" 命令来打印内存的值,格式为 "x/nfu addr".含义为以 f 格式打印从 addr 开始的 n 个长度单元为 u 的内存值.参数具 ...

  4. ansible(5)--ansible的script模块

    1. script模块 作用:在远程主机运行本地的脚本: 调用格式: -m script -a "/PATH/TO/SCRIPT_FILE": 参数: creates:如果其后跟的 ...

  5. 圣诞快乐 - Splashtop 2020 年回顾及未来展望

    ​ 我们很高兴 Splashtop 的远程访问解决方案能够在这个充满挑战的时期为全球的组织和教育机构提供帮助. 实际上,2020 年 Splashtop 的每日使用量增加了400%!不仅如此,我们还增 ...

  6. ETSI GS MEC 015,MEP 带宽管理 API

    目录 文章目录 目录 版本 ETSI MEC 对 MEP 带宽管理功能的定义 功能理解 Bandwidth Management Service BWMS UML ME APP registers t ...

  7. SaltStack 常用的一些命令

    以下是 SaltStack 常用的一些命令: 查看帮助信息:salt --help检查Salt支持的操作系统:salt '*' test.ping查看Minion的版本号:salt '*' test. ...

  8. 继承与ER图

    会员是用户吗? 实体与集合 er图叫实体联系图.什么是实体?是现实中存在的事物个体,用户背后是实际存在的单个人. 对象->实体 类->实体的集合 er图描述的是实体间的联系 会员是真实存在 ...

  9. 简单 python 爬虫(爬取小说网)

    #https://blog.csdn.net/Isana_Yashiro/article/details/84582946 import requestsfrom bs4 import Beautif ...

  10. KPM算法求字符串的最小周期证明

    先给出公式 ans = n - LPS[n-1] 其中ans为最小周期,n为给出的由假设的周期字符串中提取出的子串长度,LPS为前缀函数,n-1为字符串最后的位置下标 证明如下 证明ans = n - ...