我已经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 命令中添加(表示详细),然后查看它在抱怨什么。