Acabei de passar por um momento muito assustador, que me obrigou a pensar sobre a segurança da minha chave SSH privada.
Veja o que aconteceu:
- Conectado ao meu servidor usando minha chave SSH.
- Deu a entrada da minha chave pública em
.ssh/authorized_keys
ao meu amigo.
- Ele colocou isso no seu
authorized_keys
para uma nova conta que ele fez para eu fazer o login.
- Conectado do meu servidor ao servidor usando minha chave SSH.
Agora, o que não faz sentido aqui é como eu consegui usar minha chave SSH para acessar seu servidor do meu servidor . Meu servidor não tem minha chave privada. Como consegui fazer o login? Minha chave privada poderia estar em algum lugar no meu servidor, mesmo que eu nunca tenha colocado lá?
Conteúdo de authorized_keys
nos dois servidores:
ssh-rsa AAAAB3NzaC1yc2EAAAAD[more characters]FdQCw== robo@robo-ubuntu
Algumas informações adicionais:
robo@other-server:~$ ssh robo@localhost
robo@localhost's password:
Login Success. [More default login info]
robo@other-server:~$
Meu servidor é executado em uma porta SSH não padrão.
robo@my-server:~$ ssh -p [port number] robo@localhost
Login Success. [More default login info]
robo@my-server:~$ ls .ssh
authorized_keys known_hosts
robo@my-server:~$ ssh -p [port number] robo@localhost
robo@localhost's password:
Login Success. [More default login info]
robo@my-server:~$
Observe como o SSHing duas vezes para o host local não faz login automaticamente.
Então, aparentemente, minha chave está sendo encaminhada? Aqui está o que minha configuração parece dizer sobre isso:
robo@my-server:~$ cd /etc/ssh/; grep -iR "forward"
sshd_config:X11Forwarding yes
ssh_config:# ForwardAgent no
ssh_config:# ForwardX11 no
ssh_config:# ForwardX11Trusted yes
robo@roboserver:/etc/ssh$
Eu vejo dois "Forward" diferentes que poderiam ser. No entanto, parece sugerir que não está encaminhando a autenticação.