tech-tips/Связь, сети и удалёнка/SSH/Как исправить ошибку SSH no matching host key type found. Their offer ssh-rsa.md

27 lines
2.2 KiB
Markdown
Raw Normal View History

---
source: https://axenov.dev/как-исправить-ошибку-ssh-no-matching-host-key-type-found-their-offer-ssh-rsa/
---
Эта ошибка возникает при подключении к серверу, который принимает для аутентификации RSA-ключи, но используемый тобой ключ сгенерирован алгоритмом, отличным от #RSA.
Всё очень просто: достаточно в локальном файле `~/.ssh/config` указать следующее:
```
Host *
# здесь могут быть и другие настройки, но важно добавить только эти:
PubkeyAcceptedAlgorithms +ssh-rsa
HostkeyAlgorithms +ssh-rsa
```
Перезагружать ничего не надо. Можно сохранять файл и сразу стучаться на сервер и скорее всего он тебя пустит, если ранее ты к нему уже подключался и остальные настройки корректны.
Если у тебя нет RSA-ключа, то, помимо указанного выше, также необходимо его сгенерировать следующей командой:
```shell
ssh-keygen -t rsa -b 4096
```
Программа будет просить у тебя дополнительные данные и парольную фразу. Они опциональны, всё можно протыкать **Enter** на каждый вопрос и оставить всё по дефолту (но это твоя совесть и ответственность).
После генерации ключа тебе необходимо его прописать на удалённой машине, к которой ты собрался подключаться. Для этого нужно скопировать содержимое файла `~/.ssh/id_rsa.pub` (по умолчанию) в файл `~/.ssh/authorized_keys` удалённой машины или использовать веб-интерфейс того сервиса, который позволяет тебе подключаться по #SSH (например, #GitHub).