SSH Permission Denied (publickey)

В UEFI загрузчик обычно идентифицируется по уникальному UUID системного раздела EFI и пути к файлу загрузчика, которые хранятся в переменных загрузки UEFI в системной NVRAM. В отличие от старой загрузки в стиле MBR -, просто указать диск для загрузки не обязательно достаточно.

Некоторые производители систем разработали прошивку UEFI со встроенным -предположением, что ОС будет Windows, и добавили «полезную» функцию, которая сбрасывает переменные загрузки UEFI на точные значения, используемые Windows.

Начните с загрузки системы в режиме восстановления в режиме UEFI . Затем запустите efibootmgr -vкак root. Это покажет вам текущее состояние переменных загрузки UEFI. Вы также можете использовать команду blkid, чтобы получить список UUID файловой системы и разделов каждого диска, который есть в системе. UUID раздела (, указанный в выводе blkidкакPARTUUID=)системного раздела EFI, должен соответствовать UUID, указанному в переменных загрузки, перечисленных командой efibootmgr -v. При необходимости вы можете использовать другие опции с efibootmgr, чтобы исправить содержимое переменных загрузки. Подробности см. в man efibootmgr.

(Обратите внимание, :прошивка UEFI использует UUID раздела , в то время как загрузчик GRUB может использовать UUID файловой системы . В blkidпервый указан как PARTUUID=, а второй — как UUID=. Не путайте два.)

Если вы обнаружите, что переменные загрузки UEFI не указывают на загрузчик Fedora и любые внесенные вами изменения не сохранятся после перезагрузки, то, скорее всего, у вас есть какая-то разновидность ошибки прошивки UEFI, о которой я упоминал ранее. Родерик В. Смит называет это загрузочным переворотом :. См. по этой ссылке список некоторых известных вариаций и обходных путей для них.

По сути, одним из возможных обходных путей является установка (копии )загрузчика либо на стандартный съемный -диск -, путь загрузки в системном разделе EFI (\EFI\boot\boot.efi, где обычно x64или, возможно, ia32на типичном оборудовании ПК.Другой способ — поместить загрузчик Linux UEFI по тому же пути, который обычно использует Windows(\EFI\Microsoft\Boot\bootmgfw.efi).

1
14.02.2020, 16:51
1 ответ

У вас там два сообщения.

Первый сообщает вам, что вы еще не знаете отпечаток открытого ключа машины, к которой вы подключаетесь. Прежде чем принять его, проверьте правильность отпечатка пальца, перейдя по отдельному защищенному каналу (, это нормально, если кто-то другой увидит его, но он не должен иметь возможность заменить его своим собственным ).

Вторая часть root@<host>: Permission denied (publickey).немного двусмысленна. Но вот что нужно проверить:

sshd(сервер )обычно настроен на блокировку входа в систему root. Вам нужно добавить нового пользователя с правами sudo. Или менее хорошее решение состоит в том, чтобы изменить конфигурацию ssh, чтобы разрешить вход в систему root.

Затем убедитесь, что вы:

  • Поместите свой открытый ключ в ~root/.ssh/authorized_keys?
  • Установите разрешение таким образом, чтобы никакие другие группы или другие лица не могли читать или писать в ~root/.sshили файлы в нем, но root мог, по крайней мере, читать.
  • Добавьте свой ключ к вашему агенту(ssh-add).

Если это не работает, включите подробный режим -v, -vvили -vvv, начните с единицы и увеличивайте по мере необходимости.

Если это не сработает, посмотрите журналы на удаленном конце.

1
28.04.2021, 23:23

Теги

Похожие вопросы