
Sou administrador de sistema Linux, farei login em todos os sistemas da minha rede local. Não quero que meu IP apareça através do comando who. Por exemplo, se alguém entrar:
$ who
revela meu IP. Existe alguma maneira de ocultar meu IP do comando who Linux?
[EDITAR por chrips]
Isso é importante para aqueles preocupados com a invasão de seus servidores de utilidades pessoais! Obviamente, você gostaria de ocultar seu IP residencial atual de um invasor, para que ele não encontre um vetor sobre você!
Responder1
Mais simplesmente, você poderia tornar os arquivos de log utmp não legíveis mundialmente. Isto é até mencionado nopágina de manual do utmp:
Ao contrário de vários outros sistemas, onde o log utmp pode ser desabilitado removendo o arquivo,utmp deve sempre existirno Linux. Se você quiser desabilitar who(1), então façanãofaça o mundo utmplegível.
assim:
sudo chmod go-r /var/log/wtmp /var/run/utmp
who # shows nothing, not even an error!
sudo who # still works for root
rudi :0 2017-04-18 19:08 (console)
Portanto, isso desabilitaria who
completamente, não apenas ignoraria os endereços IP.
Outra ideia(talvez um pouco bobo) ocultar apenas os IPs poderia ser deixar seu servidor ssh escutar em outra porta (1234) e apenas no host local. Em seguida, execute um "proxy" (socat, netcat) para encaminhar de public_ip:22 para localhost:1234:
altere a configuração do servidor ssh, /etc/ssh/sshd_config:
Porta 1234
execute um proxy na máquina do servidor ssh:
socat TCP-LISTEN:22, fork TCP:localhost:1234
Agora todos os logs utmp ( who
, last
) mostrarão o mesmo e inútil IP localhost.
Observaçãotalvez seus usuários ainda possam ver as conexões reais via netstat
. Em vez do proxy do espaço do usuário ( socat
), você também pode configurar iptables
regras NAT e MASQUERADING para o tráfego SSH de entrada. Ou você sempre pode usar um "ssh hop" extra para fazer login sempre no mesmo IP. Isso fica como exercício para o leitor. ;)
Responder2
O who
utilitário analisa os dados no /var/run/utmp
banco de dados. Este banco de dados é atualizado login
quando você faz login no sistema (e também por vários outros utilitários, consulte man utmp
), e os dados são registrados de forma persistente /var/log/wtmp
se esse arquivo existir.
Esses registros são úteis para rastrear por que e quando um sistema pode ter travado ou começado a se comportar mal e não devem ser modificados.
Portanto, a resposta é: você não pode modificar o comportamento dos who
programas que gravam em /var/run/utmp
e /var/log/wtmp
, ou modificar você mesmo esses arquivos (binários). E você não deveria, pois isso poderia tornar o sistema 1) inseguro e 2) difícil de diagnosticar em caso de mau funcionamento.