CentOS SSH无法登录

简介: CentOS SSH无法登录

简单记录,自用CentOS7.4虚拟机与ALiYunVPS,在配置ssh登录身份验证时碰到的问题。


阿里云VPS:因为在重置磁盘时选择了密钥对的身份验证方式,因此VPS中的CentOS7.4中的 /etc/ssh/sshd_config 文件中,在初始化时就被添加了一行禁止密码登录的配置:

1 PasswordAuthentication no

使用vim编辑配置文件将其改为:

1 PasswordAuthentication ``yes

即可使用密码进行ssh登录了。


在查找相关资料的过程中,无意看了一些如何配置启用密钥对进行SSH登录的方法,几乎全部都是说修改 /etc/ssh/sshd_config 文件,找到其中这几行配置注释,并指定需要的值:

1234567 #允许root认证登录``PermitRootLogin ``yes``#允许密钥认证``RSAAuthentication ``yes``PubkeyAuthentication ``yes``#默认公钥存放的位置``AuthorizedKeysFile  .``ssh``/authorized_keys

于是就顺便打开这个配置文件看了看,却发现没有找到 RSAAuthentication 这行注释或者配置项,但是在同目录下 ssh_config 文件中找到了这行配置,对此感到非常的不解,开始认为VPS使用的系统镜像是被修改过的删除了该行,于是使用本地安装了CentOS官方镜像的虚拟机查看该文件,也没有这一行配置。

带着疑惑使用某不存在的搜索引擎组合关键字 CentOS7 CentOS7.4 RSAAuthentication 查找了一番才找到了解释。


首先是:

为什么在 CentOS7.4 的配置文件中没有 RSAAuthentication 这一行?

CentOS7.4相对于之前版本,做了一些与sshd相关的安全更新来加强sshd的安全性。其中之一就是弃用RSAAuthentication支持。从CentOS7.3升级上来的用户会在升级时被告知这一变化。

作为从CentOS7.4直接开始使用,也没有阅读过发行说明的我,自然是不清楚这一改动。

看到这里又产生了新的问题:

什么是弃用 RSAAuthentication 支持,明明还可以使用密钥对进行ssh登录,是默认开启不允许关闭的意思吗?

要回答这个问题,首先要了解ssh通讯协议,目前SSH的通讯协议分为第一代和第二代,不用多说第二代有更多功能、选项、和更高的安全性,它是在2006 正式由IETF发表,至今已有十年。由于两代SSH协定并不兼容,我们只能二选其一,CentOS 7的SSH预设使用第二代协定,所以无需做任何设定。

在同时支持这两个协议的系统中,可以通过  /etc/ssh/sshd_config 配置文件中的

1 Protocol 2

来制定使用哪一个版本。

RSAAuthentication (rsa认证)是只支持第1代ssh通讯协议使用的配置项,在CentOS7.4中被废除了,而且前面提到过CentOS7开始预设使用第二代通讯协议,在CentOS7.4中没有找到指定协议版本的配置行,个人猜测是CentOS7.4全面抛弃第1代协议。

image.png

第2代ssh通讯协议的密钥验证选项是

1 #PubkeyAuthentication yes

这个选项默认是注释掉的,并且是默认开启的,因此我们在使用第二代ssh通讯协议时不需要再去纠结 RSAAuthentication 选项了,在CentOS7.4中其强行添加 RSAAuthentication 配置会触发系统对它的废除提示。

1 reprocess config line 38: Deprecated option RSAAuthentication

看到这里所有的疑惑就都解开了,将这个小坑记录下来希望后来的同学能少走弯路。


参考资料(第二条资料内容有很多值得学习):

CentOS7.4弃用RSAAuthentication支持 : ashub.cn/articles/21

Linux系统下如何配置SSH_Centos7 ssh连接配置 CentOS7下安全配置 : www.linuxdown.net/install/con…

Linux-ssh的rsa认证登录配置 : www.cnblogs.com/wulaoer/p/5…

Linux ssh服务开启秘钥和密码认证 : www.cnblogs.com/xiaochina/p…


目录
相关文章
|
4月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
218 14
|
7月前
|
网络协议 Linux 网络安全
微软工程师偷偷在用!这款SSH工具让Windows操控CentOS比Mac还优雅!
远程登录Linux服务器是管理和维护服务器的重要手段,尤其在远程办公、云服务管理等场景中不可或缺。通过工具如XShell,用户可以方便地进行远程管理。SSH协议确保了数据传输的安全性,命令行界面提高了操作效率。配置XShell连接CentOS时,需确保Linux系统开启sshd服务和22端口,并正确设置主机地址、用户名和密码。此外,调整字体和配色方案可优化使用体验,解决中文显示问题。
327 21
微软工程师偷偷在用!这款SSH工具让Windows操控CentOS比Mac还优雅!
|
6月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
228 10
|
7月前
|
安全 Linux 网络安全
CentOS 8下SSH连接超时与“无法加载主机密钥”错误的排查与修复
在CentOS 8系统中,宝塔面板提示“出错了,面板运行时发生错误”,导致插件无法正常显示。同时,SSH连接超时,修复面板功能失效。通过VNC连接排查,发现SSH服务安装和配置问题频发,最终通过重装SSH、调整权限并重新生成主机密钥文件解决问题,成功恢复SSH连接。
438 16
|
7月前
|
安全 网络安全 数据安全/隐私保护
Debian 12系统中允许Root远程SSH登录解决方法!
在 Debian 12 系统中开启 SSH 远程 Root 登录需修改 SSH 配置文件 (`sshd_config`),将 `PermitRootLogin` 设置为 `yes` 并确保密码认证启用。完成后重启 SSH 服务并验证连接。若防火墙启用,需放行端口 22。注意,直接开放 Root 登录可能带来安全风险,建议使用普通用户登录后切换至 Root。
608 1
|
JavaScript 应用服务中间件 Linux
【应用服务 App Service】解决无法从Azure门户SSH登录问题
【应用服务 App Service】解决无法从Azure门户SSH登录问题
184 0
|
10月前
|
监控 Ubuntu 安全
debian或Ubuntu中开启ssh允许root远程ssh登录的方法
在Debian或Ubuntu系统中启用root用户的SSH远程登录需要编辑SSH配置文件、设置root密码并重启SSH服务。虽然这可以在某些情况下提供便利,但必须注意安全性,通过使用强密码、限制IP访问、使用SSH密钥认证等方法来保护服务器的安全。
4056 5
|
10月前
|
安全 网络安全
gbase8a centos8(kylinv10)加载报登录 ftp失败报错530 Login incorrect 排查过程及解决办法
centos8(kylinv10)加载报登录 ftp失败报错530 Login incorrect 排查过程及解决办法
|
11月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
872 2
|
机器学习/深度学习 存储 Linux
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
182 4