我如何以编程方式检测 Linux 机器是否由使用串行控制台登录的用户控制?我将通过 BASH 进行检查。
问问题
857 次
5 回答
2
该who
命令将为您提供登录用户的列表以及他们从何处登录。
例如:
~$ who
john pts/1 2009-07-29 10:06 (ourcompanyvpnserver.org)
mary tty7 2009-07-29 10:11 (:0)
frank pts/2 2009-07-27 12:10 (att.net)
jim pts/4 2009-07-28 14:51 (comcast.net)
who 的输出表明用户“如何”登录。用户 mary 的控制台已连接到tty7
tty 表明 mary 是通过串行控制台物理登录的。所以玛丽有能力通过串口控制台控制电脑。
为了确定她在做什么,您需要查看 her.bash_history 文件。通常这是在 /home/mary/.bash_history 下。
如果您想长期记录通过串行控制台(即连接到该机器的键盘)传入的所有命令,我会修改 linux 串行驱动程序以记录所有输入和输出。我不知道那会有多难。
于 2009-07-29T16:02:58.680 回答
0
尝试解析手指。您通常可以获取 IP/DNS 地址。从来没有见过串行连接,所以我不能说它是否显示串行连接。
于 2009-07-29T15:20:45.050 回答
0
您可以从命令行使用who 。
于 2009-07-29T15:21:11.790 回答
0
如果您想在本地计算机中检查它...
$ who >> log.txt
并检查该文件中是否有任何额外的行,或者任何你想要的。
于 2009-07-29T15:21:59.043 回答
0
如果您打算通过串行接口检查您的脚本是否在终端上运行,您只需执行 tty 并检查设备名称。
于 2009-07-29T18:05:30.500 回答