私たちの企業ネットワーク内で、クライアントマシンからfinger
(引数なし)を実行すると、名前などのユーザーのリストが表示されます。しかし、私が実行するとfinger @localhost
「接続が拒否されました」と表示されます。では、デフォルトでfingerはどこに接続するのでしょうか?
strace finger
によると、私のシステムでは現在のユーザーのリストを
open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4
stat
ing theptyによるそれぞれの詳細
stat("/dev//pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
引数なしで実行した場合。 @localhost
で実行すると、fingerd
デーモンを使用しようとしますが、1993年ではなくなったため、実行されていません。したがって、connection refused
です。
Edit@remote-system
ではなくuser
の引数を指定して実行すると、-から情報が取得されます。 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)