У меня просто был очень страшный момент, который заставил меня задуматься о безопасности моего личного ключа SSH.
Вот что произошло:
- Зашел на мой сервер, используя мой SSH-ключ.
- Дайте мой открытый ключ в
.ssh/authorized_keys
моему другу. - Он поместил это в свой
authorized_keys
для новой учетной записи, которую он сделал для входа в систему. - Зашел с моего сервера на свой сервер, используя мой SSH-ключ.
Теперь то, что не имеет смысла здесь, заключается в том, как мне удалось использовать мой SSH-ключ для входа на его сервер с моего сервера . У моего сервера нет моего личного ключа. Как я смог войти в систему? Может ли мой личный ключ быть где-то на моем сервере, хотя я никогда не размещал его там?
Содержимое authorized_keys
на обоих серверах:
ssh-rsa AAAAB3NzaC1yc2EAAAAD[more characters]FdQCw== [email protected]
Дополнительная информация:
[email protected]:~$ ssh [email protected]
[email protected]'s password:
Login Success. [More default login info]
[email protected]:~$
Мой сервер работает на нестандартном SSH-порту.
[email protected]:~$ ssh -p [port number] [email protected]
Login Success. [More default login info]
[email protected]:~$ ls .ssh
authorized_keys known_hosts
[email protected]:~$ ssh -p [port number] [email protected]
[email protected]'s password:
Login Success. [More default login info]
[email protected]:~$
Обратите внимание, что SSHing в два раза локально не запускается автоматически.
Итак, очевидно, что мой ключ отправляется? Вот что говорит моя конфигурация:
[email protected]:~$ cd /etc/ssh/; grep -iR "forward"
sshd_config:X11Forwarding yes
ssh_config:# ForwardAgent no
ssh_config:# ForwardX11 no
ssh_config:# ForwardX11Trusted yes
[email protected]:/etc/ssh$
Я вижу два разных «форварда», которые могли бы быть. Однако, похоже, он предполагает, что он не перенаправляет аутентификацию.