Создайте вторичный ssh-ключ без пароля для настройки ssh-туннеля.
-
03-07-2019 - |
Вопрос
Мне нужно создать скрипт, который автоматически настраивает SSH-туннель.Я думаю, что выделенный ssh-ключ без пароля — хорошее начало, но я не смог найти, возможно ли это и как это сделать.Этот ключ должен иметь ограниченные привилегии (только настроить туннель), но мне нужен еще один закрытый ключ (с паролем) для себя.
Спасибо !
Решение
Хорошо, я нашел ответ. Р>
Во-первых, 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
Я надеюсь, что в этом нет проблем с безопасностью. Если это плохо, пожалуйста, дайте мне знать!
Другие советы
Попробуйте
ssh-keygen
команда.
У меня была похожая ситуация, когда мне приходилось автоматически синхронизировать содержимое сервера без необходимости вводить пароль в моем скрипте robocopy. Р>
Эта ссылка мне помогла.