PuTTY Фатальная ошибка: Нет доступных поддерживаемых методов аутентификации

Вопрос или проблема

Я пытаюсь установить SSH-соединение с Linux-сервером моего веб-хостинг-провайдера. Я получаю следующую ошибку при использовании PuTTY Release 0.74 Build платформа: 64-битная версия Windows x86: “Нет доступных методов аутентификации (сервер отправил: publickey, gssapi-keyex, gssapi-with-mic)”

  1. Вот что я сделал:
  2. Сгенерировал пару public_key – private_key
  3. Передал public_key провайдеру
  4. Вставил IP-адрес сервера и порт в “Сессия”
  5. Вставил путь к моему локально сохраненному private_key в “Подключение -> SSH -> Аутентификация”
  6. Сохранил всю конфигурацию

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

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

Я обновил PuTTY до самой последней версии, и затем вход в систему сработал. Так что, если у вас возникли проблемы, попробуйте установить последнюю версию по адресу https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Вам нужно скопировать открытый ключ в ~/.ssh/authorized_keys или убедиться, что ваш облачный провайдер это сделает. Я задокументировал это с помощью скриншотов для Google Cloud здесь: https://www.bingehacking.net/2022/01/putty-no-supported-authentication.html

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

Проверьте настройку аутентификации с помощью открытого ключа: Убедитесь, что открытый ключ, соответствующий закрытому ключу, который вы используете для аутентификации, присутствует в файле ~/.ssh/authorized_keys на сервере CentOS. Если открытого ключа нет, вам нужно будет добавить его вручную.

Проверьте разрешения файлов: На сервере CentOS проверьте разрешения для директории ~/.ssh и файла ~/.ssh/authorized_keys. Директория .ssh должна иметь разрешения 700 (drwx——), а файл authorized_keys должен иметь разрешения 600 (-rw——-). Если разрешения неправильные, вы можете исправить их с помощью команд chmod 700 ~/.ssh и chmod 600 ~/.ssh/authorized_keys.

Перезапустите службу SSH: В некоторых случаях перезапуск службы SSH на сервере CentOS может помочь решить проблему. Вы можете сделать это с помощью команды sudo systemctl restart sshd.

Проверьте настройки сервера SSH: Проверьте файл конфигурации сервера SSH (/etc/ssh/sshd_config) на сервере CentOS. Убедитесь, что параметр PasswordAuthentication установлен на yes, чтобы разрешить аутентификацию по паролю. Если вы внесете какие-либо изменения в файл конфигурации, не забудьте перезапустить службу SSH, используя sudo systemctl restart sshd.

Используйте правильный метод аутентификации: Если вы используете открытые ключи для аутентификации, убедитесь, что вы выбрали правильный вариант в PuTTY для указания соответствующего закрытого ключа. Также проверьте, что закрытый ключ имеет соответствующий формат (обычно формат PEM).

Надеюсь, эти решения помогут решить проблему с аутентификацией на CentOS через PuTTY.

Ответ или решение

Ошибка PuTTY Fatal Error: No supported authentication methods available

Ошибка "No supported authentication methods available (server sent: publickey, gssapi-keyex, gssapi-with-mic)" представляет собой распространённую проблему при попытке установить SSH-соединение с сервером Linux с использованием клиента PuTTY. В данной статье мы рассмотрим основные причины, вызывающие эту ошибку, и предложим комплексное решение.

Причины ошибки

  1. Неправильная установка ключа:

    • Убедитесь, что ваша публичная часть ключа была правильно установлена на сервере в файле ~/.ssh/authorized_keys. Если ключ отсутствует, вы не сможете подключиться.
  2. Неправильные разрешения файлов:

    • На сервере необходимо, чтобы директория ~/.ssh имела разрешения 700 (drwx——), а файл authorized_keys — 600 (-rw——-). Неправильные разрешения могут предотвратить возможность аутентификации по ключам.
  3. Настройки SSH на сервере:

    • Проверьте файл конфигурации SSH /etc/ssh/sshd_config. Убедитесь, что опция PasswordAuthentication установлена в yes, если вы хотите разрешить аутентификацию по паролю. Если вы используете только аутентификацию по ключам, убедитесь, что отключили другие методы.
  4. Неподходящий формат ключа:

    • Проверьте, в каком формате сохранен ваш приватный ключ на локальной машине. PuTTY требует формат PPK. При необходимости конвертируйте ключ с помощью PuTTYgen.
  5. Обновление PuTTY:

    • Если вы используете устаревшую версию PuTTY, это может вызвать проблемы. Убедитесь, что вы используете последнюю версию клиента PuTTY, загруженную с официального сайта.

Шаги для исправления ошибки

  1. Проверка и установка публичного ключа:

    • Скопируйте вашу публичную часть ключа в файл ~/.ssh/authorized_keys на сервере. Это можно сделать с помощью ssh-copy-id или вручную.
    cat id_rsa.pub | ssh user@yourserver "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
  2. Проверка прав доступа:

    • Убедитесь, что права доступа на директорию ~/.ssh и файл ~/.ssh/authorized_keys установлены правильно:
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  3. Редактирование конфигурации SSH:

    • Откройте файл /etc/ssh/sshd_config и убедитесь, что нужные параметры установлены правильно.
    sudo nano /etc/ssh/sshd_config
    # Измените или добавьте следующие строки
    PasswordAuthentication yes
    PubkeyAuthentication yes

    После внесения изменений не забудьте перезапустить SSH-сервис:

    sudo systemctl restart sshd
  4. Конвертация ключа, если необходимо:

    • Если ваш приватный ключ не в формате PPK, вы можете использовать PuTTYgen для конвертации:
    1. Откройте PuTTYgen.
    2. Выберите "Load" и загрузите ваш приватный ключ.
    3. Нажмите "Save private key", чтобы сохранить его в формате PPK.
  5. Обновление PuTTY:

    • Убедитесь, что у вас установлена последняя версия PuTTY. Если нет, обновите клиент и попробуйте снова.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...