Добавление открытого ключа в файл known_hosts


11

Я загрузил открытый ключ ECDSA ( ssh_host_ecdsa_key.pub) с другого компьютера. Я хочу добавить ключ в мой локальный known_hostsфайл перед подключением к нему через SSH. Как я могу сделать это вручную (не сравнивая MD5 хэши на экране)?

Я использую Ubuntu 15.04 на моей локальной машине.

Ответы:


10

Страница руководства для sshd(8)описания формата known_hostsфайла:

Каждая строка в этих файлах содержит следующие поля: маркеры (необязательно), имена хостов, биты, экспонента, модуль, комментарий. Поля разделены пробелами.

Если ваш открытый ключ для вашего хоста выглядит так:

ssh-rsa AAAA1234.....=

Просто поместите эту строку в ваш ~/.ssh/known_hostsфайл:

your.host.name,0.0.0.0 ssh-rsa AAAA1234.....=

где вы будете обменивать имя хоста и IP для вашего хоста.

Теперь все зависит от того, включена ли у вас sshопция HashKnownHosts. Если нет, то вы сделали. В противном случае (например, в текущих выпусках Ubuntu) вам нужно будет хэшировать этот файл, используя ssh-keygen -H -f ~/.ssh/known_hosts.


Каково значение знака равенства в конце ssh-rsa AAAA1234.....=? Я открыл свой открытый ключ , и он не заканчивается с знаком равенства, а не выглядит формат , как: ssh-rsa AAAA1234.... user@hostname. Как мне вставить это в мой known_hostsфайл?
Уилер

1
@wheeler Вставьте его в известные хосты как есть. Знак равенства - это просто дополнение кодировки base64.
Jakuje
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.