Вопрос: Какое значение имеет пользователь / хост в конце открытого ключа SSH?


Я не могу понять, почему файл открытого ключа SSH, созданный ssh-keygen иметь пользователя и хост в конце его.

Пример: id_rsa.pub

ssh-rsa ... rest of file ... /CA9gyE8HRhNMG6ZDwyhPBbDfX root@mydomain

Обратите внимание на root@mydomain в конце файла.

Если я могу использовать открытый ключ в любом месте с любым пользователем для аутентификации с помощью моего закрытого ключа, какое значение имеет корневой @ mydomain в процессе аутентификации?

Или это просто владелец места, чтобы понять, кто его выпустил?


55
2017-12-16 21:04


Источник


Я видел некоторые переусердствующие веб-формы, для которых поле комментариев содержит символ @, но для этого нет никаких технических причин. - chicks


Ответы:


Это поле является комментарием и может быть изменено или проигнорировано по желанию. Он установлен в user@host по умолчанию ssh-keygen,


81
2017-12-16 21:17



Кратко и точно. Возможность изменить комментарий по своему усмотрению решила загадку для меня. Я думал, что это имеет какую-то роль в процессе аутентификации ssh. - Basil A
@BasilA У меня есть некоторые ключи, где я полностью удалил его. - Michael Hampton♦
При настройке входа в SSH-ключ для экземпляра Google Cloud Compute, GCC использует это поле комментариев для идентификации имени пользователя в экземпляре, с которым должен быть связан ключ. - hBy2Py


Это кратко поясняется на странице руководства для sshd(8) в разделе об авторизованных ключах:

Открытый ключ протокола 2 состоит из: опции, KeyType, base64-кодированный ключ, comment,

В openssh контекст авторизованных ключей, есть только смысл комментария. Но есть реализация SSH, которая дает значения этой части, так как, например, реализация SSH в модемах LANCOM использует этот комментарий как имя пользователя, для которого ключ действителен.


42
2017-12-16 22:53



+1 для цитирования человека - mgarciaisaia


Как указывали другие, это комментарий, позволяющий вы определить, какой ключ является.

При просмотре одного ключа, например id_rsa.pub это не имеет большого значения, но при просмотре потенциально длинного списка ключей, например, того, что у вас есть в authorized_keys файл, очень полезно иметь возможность легко идентифицировать, какой ключ есть.

Также, ssh-keygenпо умолчанию user@hostname, который для типичных случаев использования является четким идентификатором ключа, которым он является (user@domain не может быть).


17
2017-12-17 07:25





Очень, очень просто: Я и вы - люди, использующие машину. Итак, посмотрев на этот пример, вы опубликовали:

ssh-rsa [piles of gobbledygook]…CA9gyE8HRhNMG6ZDwyhPBbDfX root@mydomain

Машина может прочитать это:

ssh-rsa [piles of gobbledygook]…CA9gyE8HRhNMG6ZDwyhPBbDfX

Человек может прочитать этот комментарий:

root@mydomain

Люди склонны забывать, что даже если бы смотреть сложные на компьютерных системах, они могли бы быть тонны сложнее, если код был разработан только для машинного потребления. Я имею в виду взгляд на скрытый код вредоносного кода. После того, как вы декодируете его и отформатируете, он доступен для чтения. Но кто-то должен был уйти с дороги, чтобы людям было трудно читать.

По умолчанию все типы файлов кодирования и конфигурации в компьютерной системе являются структурой для потребления человеком, потому что ... Мы люди, использующие машины и машины, не нуждаются в таких вещах, как:

  • Комментарии.
  • Углубления.
  • Переменные и функции, написанные на понятном для человека языке.

Таким образом, комментарий предназначен для вас и меня и никого другого. Скорее всего, это будет работать без комментариев. Но один раз что-то не работает в 3 часа ночи, и вы охотитесь за правильным открытым ключом, вы собираетесь пожелать / мечтать / молиться, чтобы комментарий был там.


5
2017-12-17 07:13



«машинам не нужны такие вещи, как ... Отступы» кашель питон кашель - Michael Kjörling
@ MichaelKjörling «... если только они не заботятся о них». :-) - hBy2Py