Наш сервис Oracle переносит серверы в Oracle Cloud. Нам нужно сменить хост для доступа SFTP. «Аутентификация через ваше имя входа SCP и ключи SSH2 остается прежней, если ваш текущий ключ SSH2 — это ключ OpenSSH».
Мы можем подключиться к новому хосту, хотя миграция не произошла. Я хочу подтвердить, что моя пара ключей имеет формат OpenSSH. Есть ли способ сделать это?
решение1
Предположим, что вопрос касается файла закрытого ключа: Если вы можетеиспользуй этос OpenSSH ssh
и sftp
клиентами, то это «ключ OpenSSH» — сервер не может заметить разницу.
Формат имеет значение только тогда, когдаустановкаоткрытый ключ на сервере (т. е. при добавлении его в OpenSSH authorized_keys
или что-то подобное), но из процитированного сообщения следует, что это уже было сделано ранее (т. е. существующие ключи были перенесены), так что, вероятно, это не проблема.
Между ключевыми словами нет особой стандартизации.файлформаты, используемые для SSH2; однако все они отличаются только своей «упаковкой» — фактические данные, хранящиеся в них, одинаковы, поэтому один и тот же ключ можно свободно конвертировать, например, между форматами OpenSSH и PuTTY, а также PKCS#8 и SSH.COM.
В частности, сервер не имеет возможности узнать, есть ли у вас "ключ OpenSSH" на вашей стороне. Что отправляется по сети клиентами SSHявляетсявсегда отправляется в стандартном формате (и отправляется только открытый ключ); SSH-клиент загружает любой используемый им формат файла ключа и автоматически создает правильный сетевой формат для отправки на сервер во время аутентификации.
Большинство форматов ключей, используемых программным обеспечением SSH, являются текстовыми, поэтому их можно открыть с помощью Блокнота:
- Одна длинная строка, которая начинается с
ssh-XXX AAAAxxxxx...
открытого ключа OpenSSH. - Начинается с
-----BEGIN OPENSSH PRIVATE KEY-----
– закрытого ключа OpenSSH (часто называемого «новым форматом» или «форматом OpenSSH»). - Начинается с
-----BEGIN PRIVATE KEY-----
– закрытого ключа PKCS#8, созданного старыми версиями OpenSSH (часто называемого «форматом PEM» или «форматом OpenSSL»). - Начинается с
-----BEGIN ENCRYPTED PRIVATE KEY-----
– также PKCS#8, но с парольной фразой. - Начинается с
-----BEGIN RSA PRIVATE KEY-----
– закрытого ключа PKCS#1, похожего на PKCS#8, но более старого. (Опять же часто называемого «форматом PEM» и происходящего от OpenSSL.) - Начинается с
PuTTY-User-Key-File-2
– закрытого ключа PuTTY. - Начинается с
---- END SSH2 PUBLIC KEY ----
открытого ключа SSH.COM. (Это коммерческий клиент-серверный продукт SSHv2, который любит называться «тем самым» SSH.) - Начинается с
---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
– закрытого ключа SSH.COM.
Почти всегда для преобразования ключа из одного формата в другой можно использовать некоторую комбинацию команд puttygen
или .ssh-keygen