'última' alternativa mostrando logins apenas para o usuário atual

2

Estou ciente de que posso usar last $USER , mas isso não funcionará corretamente ou com segurança em máquinas com muitos usuários - nenhum usuário deve saber o IP de outro usuário ou quando ele efetuou login. Existe uma solução conhecida para isso? problema, ou devo atte

    
por Mateusz Micał 23.09.2015 / 10:40

2 respostas

1

No FreeBSD, os arquivos dos quais você deve estar ciente são:

/var/log/utx.log
/var/log/utx.lastlogin

utmp foi substituído por utmpx em 9.0

Um método comum, porém brutal, é vincular o arquivo a / dev / null. Todos os dados gravados no arquivo seriam anulados.

ln -sf /dev/null /var/log/utx.log

Ou você pode remover o acesso ao banco de dados para o comando lastlog :

chmod o-r /var/log/utx.lastlog

Os itens acima têm a vantagem de você como root ainda ter acesso ao banco de dados - mas não aos usuários. Essa seria a minha escolha preferida.

Mas se você quiser que os usuários tenham acesso parcial, será difícil. Você pode criar um script de wrapper substituindo last e lastlogin , que exibem apenas as informações desejadas. Mas os dados ainda são gravados em um arquivo legível para o mundo, para que os usuários possam ver o arquivo.

Por último, você também pode escolher quais ttys deseja ativar o registro para usar ac . Você poderia escolher não registrar todos os pts , que geralmente são suas sessões ssh.

Mas, novamente, se você estiver preocupado com a segurança, provavelmente desejará manter o registro em log, mas simplesmente removerá o acesso de arquivo legível ao mundo para os arquivos do banco de dados.

    
por 25.09.2015 / 15:24
0

Se os usuários fizerem login via ssh , como eu diria, uma maneira de conseguir isso pode ser criar sshd da origem, fornecendo os --disable-utmp --disable-utmpx --disable-wtmp --disable-wtmpx flags para configure . Eu não tentei isso, apenas uma sugestão.

    
por 23.09.2015 / 21:59