ssh密钥在查看后需要密码

我正在运行一个小型机器,在将其存储到github之前,我将代码存储在此机器上。 这也是唯一的端口22转发在家里的机器,所以我不得不从这台机器,由于github使用ssh,因为它推动协议拉推。 我今天试图推一下,我一直在拒绝(Publickey)错误的权限,所以我比阅读本页所以我创build了一个sshconfiguration文件在~tc/.ssh/config与以下内容:

 Host github.com User git Hostname github.com PreferredAuthentications publickey IdentityFile /home/tc/.ssh/id_dsa.pub 

试图重新生成我的dsa密钥对后,我还有问题吗?

基本上,我看到的是,我运行后重新生成我的DSA密钥对

ssh-keygen -t dsa

然后我确认覆盖,点击三次使用:默认位置/home/tc/.ssh/id_dsa (和id_dsa.pub在同一个目录下),并且没有密码。 我比尝试SSH的GitHub使用ssh [email protected]testing连接,并得到错误:

Permission denied (publickey).

所以我想这是因为我没有添加我的新生成的公钥github。 所以,我抓住公钥,并将输出复制到github上的设置,现在我每次尝试ssh到github它要求我一个密码短语,即使我从来没有指定一个,它没有问我之前查看文件。 而且,对于用户tc,权限在rw中似乎很好。

 IdentityFile /home/tc/.ssh/id_dsa.pub 

这应该指向你的私钥 ,而不是你的公钥。 公钥位于您要连接的服务器上。