从 Ubuntu 20.04 粘贴 root 密码通过 SSH 连接到 Alma Linux 9 远程服务器时出现错误

从 Ubuntu 20.04 粘贴 root 密码通过 SSH 连接到 Alma Linux 9 远程服务器时出现错误

总结问题

我遇到了一个奇怪的错误,在从 Ubuntu 20.04 客户端通过 SSH 连接到 AlmaLinux 9.2 远程服务器时将 root 密码粘贴到提示符中。

客户端:Ubuntu 20.04。LTS 远程服务器:AlmaLinux 9.2。

重现步骤:

a) 更改远程服务器 root 密码

b) 重启远程服务器

c) 通过“ssh root@server”从 Ubuntu 客户端连接到远程服务器,并将 root 密码粘贴到提示符中 -> 错误消息“权限被拒绝,请重试”。

d) 手动输入密码,无需粘贴密码->登录成功!

e) 退出主机

f) 通过“ssh root@server”再次连接到同一台主机,并将 root 密码再次粘贴到提示符中 -> 成功登录!

通过手动输入密码登录一次后,我可以重新连接并粘贴密码,直到下次更改密码并重新启动远程服务器。当服务器重新启动时,我必须再次运行从 c) 开始的相同过程。

当我说“粘贴”时,我的意思是使用“ctrl+shift+v”或右键单击 -> 粘贴”粘贴到 Ubuntu 终端中

提供详细信息和任何研究 解决方案

停用“括号粘贴”(谢谢https://github.com/microsoft/terminal/issues/14129):

  1. 如果尚不存在,请创建文件 ~/.inputrc(在客户端 Ubuntu 上),并添加“set enable-bracketed-paste off”
  2. 打开一个新终端
  3. 通过“ssh root@server”连接到服务器
  4. 将 root 密码粘贴到提示符中 -> 登录成功!

但!:即使创建了 ~/.inputrc 文件然后随后将其删除,这仍然有效,直到下次更改密码并重新启动远程服务器。

例子

a) 创建文件 ~/.inputrc(在客户端 Ubuntu 上)并添加“set enable-bracketed-paste off”

b)通过粘贴 root 密码连接到服务器

c) 退出主机

d)删除~/.inputrc 文件

e) 通过粘贴 root 密码连接到服务器仍然有效 - 即使使用新的终端

如果我重新启动远程服务器,我必须重新创建本地 ~/.inputrc 文件,以便能够使用 root 用户通过 SSH 连接并粘贴他的密码。

知道这里发生什么事吗?

相关内容