Я пытаюсь сохранить (добавить) ключ publi c к файлу (~ / .ssh / authorized_keys) для закрытого ключа (private-key.pem), который фактически хранится в s3, все с использованием bash script.
Получение ключа publi c с использованием файла:
ssh-keygen -y -f /path/to/private-key.pem
Вывод:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
Затем вручную добавьте содержимое в файл dest, это нормально, но я хочу сделать это с помощью команды, извлекая файл, сохраненный в s3 (publi c url), и добавляя вывод содержимого в файл (~ / .ssh / authorized_keys).
Я попробовал это:
ssh-keygen -y -f /dev/stdin <<< `curl https://bucket.s3.amazonaws.com/private-key.pem` >> ~/.ssh/authorized_keys
Вывод:
Load key "/dev/stdin": invalid format
И это:
curl https://bucket.s3.amazonaws.com/private-key.pem | ssh-keygen -y -f /dev/stdin >> ~/.ssh/authorized_keys
Вывод:
Permissions 0660 for '/dev/stdin' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/dev/stdin": bad permissions