无密码 SSH 本地端口转发

无密码 SSH 本地端口转发

我已经SSH Local Port forwarding使用以下命令成功设置

 ssh rex@server-001 -L 0.0.0.0:4122:node-x3:22

现在我尝试进行无密码访问。为此,我使用以下命令

 ssh -i /home/rex/.ssh/id_rsa rex@server-001 -L 0.0.0.0:4122:node-x3:22 

但它要求输入密码。如何使端口转发无密码工作。

答案1

您需要在目标主机上授权密钥。您可以手动执行此操作(通过将密钥的公共部分放入$HOME/.ssh/authorized_keys)或使用ssh-copy-id辅助程序。

ssh-copy-id -i $HOME/.ssh/id_rsa.pub rex@server-001

如果您手动执行此操作,则需要检查.ssh目录和authorized_keys文件的权限 - 有关更多详细信息,请参阅手册页,但一般规则应该是:

drwx------ .ssh
-rw------- .ssh/authorized_keys

如果这不起作用,请-v在用于登录的 ssh 命令中添加(表示详细),然后查看它在抱怨什么。

相关内容