ubuntu中配置ssh无密码登入应该怎么操作

我按照书上是这么做的ssh -keygen -t dsa -p '' -f ~/.ssh/id_dsa ,但显示too may arguments和关于ssh 的一些操作说明。原来按书上说已经创建了id-dsa.pub和id_dsa.pub。但是好像我查看的时候没有显示书上所描述的两个文件夹。而且也无法执行下一步操作
ssh与-keygen之间没有空桐轮薯格。
ssh-keygen用来产生密钥对。
命令是:
ssh -keygen -t dsa -f ~/.ssh/id_dsa
回车后会提示你输入口令passphrase, 直接跳过就行了。

完成后,会在~/.ssh/目录下新产生两个文件,而非文件夹。
id-dsa #私钥
id_dsa.pub #后缀public, 公钥

还有,你-p命桐局令可能有点混淆
man ssh-keygen

-P phrase Provide old passphrase. # -P后面跟上的参数是之前设定的旧口令。
-p Change passphrase of private key file. #-p,小写p,不带参数,表示你要修改口令

其实《鸟哥的私房菜》ssh一节讲得很详细,有图有真相,你可以参考一下。

我把我尝试的过程与你分享一下:

#设置使用密钥验证

1.产生本地的公钥,私钥对
2.修改私钥权限为600,只能本人访问。
3.上传公钥到服务器
4.将公钥内容附加到远程主机主目录的/.ssh/authorized_keys文件内。
修改authorized_keys权限为600
删除上传的公钥。

5.在本地的密钥环中导入新建的密钥对。

命局者令如下:
1.
ssh-keygen -t rsa
#中途提示输入passphraze,不要输入,直接enter前进到底。
结果:产生密钥对
Your identification has been saved in /home/Lynn/.ssh/id_rsa.
Your public key has been saved in /home/Lynn/.ssh/id_rsa.pub.

2.
chmod 600 /home/Lynn/.ssh/id_rsa

3.
cd ~/.ssh
sftp Capricorn@192.168.1.100
sftp> put id_rsa.pub
exit

4.
ssh Capricorn@192.168.1.100
cat id_rsa.pub >> ./.ssh/authorized_keys
chmod 600 ./.ssh/authorized_keys
rm id_rsa.pub
exit

5.#客户机导入keygen产生的新私钥
# ssh-add — adds private key identities to the authentication agent

ssh-add

完成。