Selon strace finger
, sur mon système, il obtient la liste des utilisateurs actuels de
open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4
et des détails sur chacun en stat
ing le pty
stat("/dev//pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
lorsqu'il est exécuté sans arguments. Lorsque vous l'exécutez avec @localhost
, il essaie d'utiliser le fingerd
démon, et comme ce n'est plus 1993, cela ne fonctionne pas - d'où le connection refused
.
Modifier lorsqu'il est exécuté avec un argument qui est un user
, plutôt que @remote-system
, il obtient les informations du champ GECOS dans /etc/passwd
et le répertoire (pour les fichiers comme ~/.plan
). Il n'a pas de privilège, donc les utilisateurs auront besoin de répertoires personnels et de fichiers de plan que vous pouvez lire afin d'afficher, par exemple, le fichier de plan. Ici (également depuis strace
), vous voyez à la fois essayer et échouer, d'ouvrir certains de ces fichiers dans le répertoire d'un autre utilisateur, qui est le mode 750 (et je ne fais pas partie de son groupe):
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
, je ne l'ai utilisé qu'en conjonction avecfingerd
et donc, les deuxfinger
etfingerd
ne sont même plus installés sur mes systèmes.