提示“No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic)”错误的问题原因和解决方案

本文介绍使用第三方SSH客户端远程连接Linux实例时,提示“No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic)”错误的问题原因和解决方案。

问题现象

当您使用第三方SSH客户端远程连接Linux系统的ECS实例时,输入了正确的账号和密码,但是还是出现类似以下错误信息。

Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
sshd[10826]: Connection closed by XX.XX.XX.XX
No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic)

putty fatal error

问题原因

使用密码或密钥登录都可能出现该问题,具体说明如下:

  • 使用密码登录出现该问题:可能是ECS实例内禁止用户使用密码方式连接,您可以将PasswordAuthentication参数值修改为yes以解决此问题。具体操作,请参见方案一:允许使用密码方式登录

  • 使用密钥登录出现该问题:可能是ECS实例内禁止了密钥登录或SSH密钥对的公钥未加入对应用户.ssh/authorized_keys中,您可以检查/etc/ssh/sshd_config文件或重新上传公钥到authorized_keys文件中以解决此问题。具体操作,请参见方案二:复制公钥到authorized_keys文件

方案一:允许使用密码方式登录

  1. 以VNC方式登录ECS实例。

    具体操作,请参见通过密码认证登录Linux实例

  2. 查看/etc/ssh/sshd_config的参数PasswordAuthentication配置是否有误。

    sudo cat /etc/ssh/sshd_config

    如下图所示,PasswordAuthentication参数设置为no,表示禁止以密码方式登录,需要修改为yes

    image

  3. PasswordAuthentication no修改为PasswordAuthentication yes

    1. 打开SSH配置文件。

      sudo vim /etc/ssh/sshd_config
    2. PasswordAuthentication no修改为PasswordAuthentication yes

      image

    3. 按Esc键,输入:wq保存修改。

  4. 执行如下命令,重启SSH服务。

    sudo systemctl restart sshd.service
  5. 重新远程连接Linux实例,如果可以正常连接,说明问题已解决。

方案二:复制公钥到authorized_keys文件

  1. 以VNC方式登录ECS实例。

    具体操作,请参见通过密码认证登录Linux实例

  2. 查看/etc/ssh/sshd_config的参数PubkeyAuthentication配置是否有误。

    sudo cat /etc/ssh/sshd_config
    • PubkeyAuthentication参数为yes时,说明可能是SSH密钥对的公钥未加入对应用户.ssh/authorized_keys中,请执行步骤4

    • PubkeyAuthentication参数为no,表示禁止以密钥方式登录,需要修改为yes。请执行步骤3

      image

  3. PubkeyAuthentication no修改为PubkeyAuthentication yes

    1. 打开SSH配置文件。

      sudo vim /etc/ssh/sshd_config
    2. PubkeyAuthentication no修改为PubkeyAuthentication yes

      image

    3. 按Esc键,输入:wq保存修改。

    4. 执行如下命令,重启SSH服务。

      sudo systemctl restart sshd.service
  4. 复制公钥到authorized_keys文件。

    1. 执行如下命令,打开authorized_keys文件。

      sudo vim /home/user/.ssh/authorized_keys
      说明

      /home/user请替换成实际的用户。

    2. i键进入编辑模式。

    3. 将本地保存的公钥粘贴到authorized_keys文件中。

    4. Esc键,输入:wq退出编辑模式。

  5. 重新远程连接Linux实例,如果可以正常连接,说明问题已解决。

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/4182.html

(0)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2024年9月27日 下午10:48
下一篇 2024年9月28日 上午10:36

相关推荐

  • 腾讯云跨账号内网互通创建对等连接通信

    VPC 跨地域通信以及跨账号通信都是对等连接的高级功能,本文将通过示例,为您介绍如何实现跨账号通信。 示例说明 网段1:广州的 VPC1 中子网 A 192.168.1.0/24。 网段2:北京的 VPC2 中子网 B 10.0.1.0/24。 通过跨账号创建对等连接,实现网段1和网段2互通,需要三个步骤,具体操作请参见下文。 步骤 1:创建对等连接 登录 …

    2022年3月4日
    3.8K00
  • 学派吧-Linux/centos系统下通过Xshell实现当前会话分享给其他用户的详解教程-linux教程

    使用 Xshell 连接云服务器 ECS Linux 系统服务器后,若希望将当前会话分享给其他用户。则可以使用 xhsell 的导入/导出功能,将会话从一台计算机上导入/导出到另一台计算机。配置概述如下: 导出会话 1. 点击 File/文件 > Export/导出,开启导出对话框。 2. 指定保存路径/文件名,保存文件。 3. 将相关文件拷贝到需要导…

    服务器运维 2018年12月12日
    2.4K00
  • 如何在Linux上编译和运行C和C++程序教程-学派吧

    C是一种用于开发系统软件的强大编程语言。本篇文章将介绍关于通过命令行在Linux系统中运行C和C ++程序。在本篇文章中,我们使用GCC(GNU Compiler Collection)的’gcc’和’g ++’命令来编译C / C ++程序。 gcc是GCC中的GNU C编译器。 g ++是GCC中的GNU …

    2019年3月13日
    2.7K00
  • linux/centos中chmod命令怎么用?(详解)

    在linux中chmod命令允许用户更改文件和文件夹的访问权限;与其他命令一样,chmod命令可以通过命令行或脚本文件执行来执行。 chmod命令语法 这是使用chmod命令时的正确语法: chmod [options] mode [,mode] file1 [file2 …] 以下是chmod使用的一些常用选项: ● -f, – silen…

    服务器运维 2019年5月7日
    7.1K10
  • bash scp:未找到命令的解决教程分享

    scp命令用于通过ssh在两台服务器之间传输文件。大多数scp用户在系统中已经可以使用scp命令,但它仍然显示“bash:scp:command not found”。因此注意,scp命令必须在本地和远程系统上都可用才可以避免这个问题。 安装SCP命令包 scp命令来自Red Hat系统上的openssh-clients软件包,openssh-client软…

    2019年3月23日
    6.8K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----