尝试从远程服务器 A 到远程服务器 B 时权限被拒绝

尝试从远程服务器 A 到远程服务器 B 时权限被拒绝

我正在尝试将文件从远程服务器复制到另一个远程服务器。我已通过服务器 A 生成了公钥,ssh-keygen -t rsa并将公钥的内容复制到.ssh/authorized_keys服务器 B 中的文件中。

然而,当我尝试通过 ssh 连接到服务器 B 来测试连接时,出现权限被拒绝错误。我缺少什么吗?

答案1

我可以通过IdentityFile ~/.ssh/identity向配置文件添加标志来修复它。正如@Kamil提到的,这是因为不在本地默认检查加载私钥~/.ssh/identity的路径中。ssh显式添加IdentityFile允许 ssh 检查私钥的指定路径。

答案2

#ssh-keygen

(进入)

(进入)

(进入)

#ssh-copy-id -i /root/.ssh/id_rsa.pub[电子邮件受保护](IP服务器B)

用于测试:ssh[电子邮件受保护](IP服务器B)


注意 如果服务器 B 有非默认 ssh 端口 - 将其放入命令中或更改 ssh 文件

/etc/ssh/ssh_config

在第 41 行

端口22

更改

端口 X(portssh 服务器 B)

答案3

SSH 协议版本 1 的默认值是~/.ssh/identity(现在大部分未使用)。对于 SSH 版本 2,~/.ssh/id_rsa是所有者私钥文件的典型路径或符号链接。这就是为什么id_rsa.pub中提到ssh 复制 ID上面的例子,因为ssh 密钥生成器默认建议~/.ssh/id_rsa使用私钥和~/.ssh/id_rsa.pub公钥。

相关内容