默认情况下,手指连接到哪里?


9

在我们的公司网络中,当我finger从客户端计算机运行(无自变量)时,会显示一个包含名称等的用户列表。但是当我运行时,finger @localhost我得到“连接被拒绝”。那么默认情况下手指连接到哪里?

Answers:


13

根据strace finger,在我的系统上,它从中获取当前用户的列表。

open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4

并通过关于每一个细节stat荷兰国际集团的PTY

stat("/dev//pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0

不带参数运行时。当您使用with运行它时@localhost,它将尝试使用该fingerd守护进程,并且由于不再是1993年,因此该守护进程没有在运行-因此connection refused

编辑时与作为一个参数运行user,而不是@remote-system,它就会从信息GECOS字段/etc/passwd和主目录(例如文件~/.plan)。它没有特权,因此用户将需要主目录和可以阅读的计划文件才能显示,例如计划文件。在这里(同样来自strace),您会看到尝试在另一个用户目录(模式750)下打开其中的某些文件都失败了,但也失败了:

lstat("/home/cby/.pgpkey", 0x7fff52fcec60) = -1 EACCES (Permission denied)
lstat("/home/cby/.project", 0x7fff52fcec60) = -1 EACCES (Permission denied)
lstat("/home/cby/.plan", 0x7fff52fcec60) = -1 EACCES (Permission denied)

我甚至不知道,你可以使用它作为替代品who,我只曾与用它配合fingerd,因此,无论是fingerfingerd甚至没有在我的系统上安装了。
斯文

1
感谢您将1988年更改为1993年,让我觉得自己不那么老了;-)但是我不明白的是,如果没有连接,它将在哪里获得未登录人员的数据(finger offlineusername)?虽然我没有在帖子中问这个。我应该编辑问题还是发布新问题?
保罗

@Sven不用担心,我猜是这样!我将其放回我管理的所有系统上,因为我发现输出比的人性化得多who。但是我不运行(或安装)fingerd;那太奇怪了。
MadHatter

@Paul不用担心-我觉得'93更加诚实,因为那是我停止fingerd在连接互联网的系统上运行的时间。我已经根据您的补充问题更新了答案。我认为,对这么小的附加观点发表评论是可以的,而不是提出一个全新的问题。顺便说一下,我注意到您是SF新手(欢迎光临!);如果您还没有的话,请抽出一点时间来参加我们的帮助之旅,并了解接受问题的答案(以及其他事项)。
MadHatter

糟糕,现在已修复。
Paul
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.