Я уверен, что это совершенно неправильно, так как id_rsa * файлы .ssh являются государственными / частными ключевыми файлами этой машины, и не определяет, какие открытый ключ разрешено подключение. Они будут использоваться только если вы ssh'd от этой машины где-то в другом месте. Кроме того, не должно быть никакой необходимости создавать ключи вообще на хост-машине.
Неа. Они преобразованный открытый / закрытый ключ пара с компьютера Windows. Он не запускать SSH-кейген, поэтому он не имеет открытые / закрытые пары ключей для системы Ubuntu.
Скорее всего, вы хотите добавить свой открытый ключ, созданный с помощью шпаклевки на клиентской машине в файл authorized_keys в ~ / .ssh каталога на хост-компьютере. Если этот файл не существует создать его, а затем запустить "CHMOD 600 authorized_keys", В зависимости от формата шпатлевка используется, возможно, придется преобразовать его в формат OpenSSH первым. Там должен быть один ключ в каждой строке в файле authorized_keys, например, он должен выглядеть примерно так:
SSH-RSA AAA [множество символов] == л @ Foo
Поэтому в основном: добавить файл .pub созданный на клиентской машине, чтобы authorized_keys файл на хост-машине
Да, это то, что я сказал ему делать. Проблема заключается в том, что он имеет комбинированный ключ, созданный с помощью шпаклевки.
Шпатлевка под Windows, просто генерирует .PPK,.
Вы можете прочитать здесь: http://www.chiark.greenend.org.uk/~sgtatham/putty/faq.html#faq-ssh2-keyfmt
Инструкции позволяют считать, что .PPK, и преобразовать его в действительный открытый / закрытый ключ пары OpenSSH (id_rsa.pub и id_rsa).
Вы правы, однако, есть шаг отсутствует:
кошка ~ / .ssh / id_rsa.pub >> ~ / .ssh / authorized_keys
Это ставит открытый ключ в файл authorized_keys как / секретный ключ пары открытого что позволило подключить к учетной записи. На самом деле, после того, как вы сделаете этот шаг вы можете удалить id_rsa и id_rsa.pub, если вы хотите, потому что они для системы Windows.