有没有办法知道如何获取连接到我的系统的用户的用户名?所以,我有一个设置了 wep 密钥的 WiFi 路由器,我和朋友正在做一些测试。
考虑到我的朋友已经加密了密钥并使用了我的网络,是否可以使用他的 IP 和 MAC 地址来检测他的用户名?他也使用 Ubuntu。
多谢!!!
答案1
涉及两种不同级别的身份验证/连接。
- 对用户进行身份验证以便连接和访问您的本地网络。
- 对主机上的用户进行身份验证以访问特定服务。
进一步来说:
第一级:
用户根据您无线路由器所选的安全协议(WEP、WPA、WPA2 等)提供密码,以便成为您本地网络的成员并访问各种服务(例如,Ubuntu 机器上的文件服务、shell 访问或直接出站 Internet 访问)。
此类信息将直接从您的无线路由器提供(可能是通过基于网络的管理页面)。
第二级:
用户已连接到本地网络(因此第一级身份验证已完成),具有本地 IP 地址并可以访问网络的各个主机。当用户通过 telnet 或 SSH 连接到您的 Ubuntu 计算机时,使用命令 、w
或who
将显示相关条目users
。
一个可能很重要的细节:
上面的命令显示当前已登录系统上的用户;即通过命令行(shell 访问)或 GUI(X 会话)远程或本地连接到系统的用户。连接到特定服务(如 FTP)的用户将不可见。由特定应用程序/守护程序来记录/显示访问相关服务的用户。
答案2
我不确定我是否正确理解了你的问题,但是如果你想知道通过网络 ssh 或直接在它前面登录到你的机器的用户名,你可以w
在终端中运行以下命令:
egil@mutter:~$ w
10:51:12 up 104 days, 20:27, 2 users, load average: 0.16, 0.14, 0.09
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
egil pts/0 foo.example.com. 10:51 0.00s 0.35s 0.00s w
答案3
使用命令users
。它将输出当前连接到系统的所有用户:
foo@example:~$ users
foo
答案4
您有who
显示“谁已连接”的命令(w
它的缩写版本为 small kid),还有users
显示“用户已连接”的命令。