我正在尝试设置从ServerA到ServerB的ssh连接,没有密码,ssh连接一直询问我私钥的密码。
这是我的配置:
服务器A
/home/user/.ssh
文件夹有一个CHMOD:rwx------
,由用户拥有:user
文件/home/user/.ssh/id_rsa.pub
和/home/user/.ssh/id_rsa
有一个CHMOD:-rw-------
并且由用户欠款:user
服务器B
我在ServerB上创建了一个用户serverA。
文件夹/home/serverA/.ssh
有一个CHMOD:drwx------
,由serverA拥有:serverA
文件/home/serverA/.ssh/authorized_keys
包含ServerA上用户的公钥,并且具有CHMOD:-rw-r-----
在文件/etc/ssh/sshd_config
中,我添加了以下行:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
然而,当我在ServerA上时,我尝试输入: ssh ServerA @ ServerB,它要求我输入私钥的密码。当我给它时,我得到了连接。
您是否知道如何避免每次都输入ServerA的密码?
答案 0 :(得分:1)
运行ssh-keygen时,您必须为证书提供密码短语。要不必输入密码短语,只需在该问题上按Enter键即可设置为空密码短语。
答案 1 :(得分:0)
您可以使用ssh-agent
,它会在指定时间内“记住”您的密码。简而言之:
eval `ssh-agent` # start ssh-agent
ssh-add /path/to/your.key # remeber the key
ssh ServerA@ServerB # will not ask for a passphrase
有关详细信息,请查看有关ssh-agent
或其手册页的更多问题。