
Dentro da nossa rede corporativa, quando executo finger
(sem argumentos) a partir de uma máquina cliente, é apresentada uma lista de usuários com nomes e similares. Mas quando executo finger @localhost
recebo "Conexão recusada". Então, onde o dedo se conecta por padrão?
Responder1
De acordo com strace finger
, no meu sistema ele obtém a lista dos usuários atuais de
open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4
e detalhes sobre cada um entrando stat
em contato com o pty
stat("/dev//pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
quando executado sem argumentos. Quando você o executa @localhost
, ele tenta usar o fingerd
daemon e, como não estamos mais em 1993, ele não está sendo executado - daí o connection refused
.
Editarquando executado com um argumento que é a user
, em vez de @remote-system
, ele obtém as informações doCampo GECOSin /etc/passwd
e o diretório inicial (para arquivos como ~/.plan
). Ele não tem privilégios, então os usuários precisarão de diretórios pessoais e arquivos de plano que você possa ler para exibir, por exemplo, o arquivo de plano. Aqui (também de strace
) você vê tentando, e falhando, abrir alguns desses arquivos no diretório de outro usuário, que é o modo 750 (e eu não estou no grupo dela):
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)