Хорошо, я нашел ответ.
Сначала ssh-keygen -f theNewPrivateKey
, в противном случае он будет перезаписывать старый закрытый ключ.
Во-вторых, ssh -i theNewPrivateKey me@mycomputer
опция -i
изменяет закрытый ключ, используемый для аутентификации.
Теперь я могу попробовать свой сценарий.
Редактировать: как мой новый ключ имеет ограниченные привилегии:
При копировании открытого ключа в файл $ HOME / .ssh / authorized_keys2 целевого компьютера я добавил следующее:
command="sleep 99999999999" ssh-dss AAAAB3NzaC1kc3MA...
(+ the rest of the key)
Тогда единственная разрешенная команда - это ждать вечно.
Поскольку целью создания этого ключа было создание обратного туннеля ssh, это должно быть хорошо.
Затем я создаю туннель:
ssh -T -R 7878:localhost:22 -i .ssh/mynewkey me@myhomecomputer
Наконец-то я могу войти с домашнего компьютера:
ssh myworklogin@localhost -p7878
Я надеюсь, что это не имеет проблем с безопасностью. Если это плохо, пожалуйста, дайте мне знать!