SSH 无密码认证(RSA/DSA认证)

今天配置hadoop过程中发现,ssh localhost 配置RSA认证(要求无密码),不然要输入三次密码启动服务。

但是郁闷的是我执行了下面的命令却无效

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/youruser/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/youruser/.ssh/id_rsa.
Your public key has been saved in /home/youruser/.ssh/id_rsa.pub.
The key fingerprint is:
11:11:35:75:40:c5:nh:2d:7u:96:c3:rr:81:86:67:53 youruser@yourhost

 然后我ssh localhost 却要求输入密码

没办法,我找另外个机器 配置ssh认证,记得以前是配置过的,怎么会失效呢?结果也没成功,最后无奈之下:删除了机器上所有的认证文件:

rm ~/.ssh/*

 重新配置,就好了,哎,又是一次教训,上次配置时候没有做笔记,这次就记下。

当然重新温习了一下:RSA/DSA认证,还是有好处的,记忆中模糊了。

下面有三篇好文章,记得看一下哦,人家讲解的通俗易懂,考虑的又比较全面:

http://www.ibm.com/developerworks/cn/linux/security/openssh/part1/index.html

http://www.ibm.com/developerworks/cn/linux/security/openssh/part2/index.html

http://www.ibm.com/developerworks/cn/linux/security/openssh/part3/index.html

再一个就是网上有些资料,有误导作用,千万小心了,举例:

修改 /etc/ssh/sshd_conf 文件

PasswordAuthentication yes->no

如果你的服务器不在本地,千万不能这样做,万一当前的ssh链接中断,那你得麻烦机房的人给你修改配置了。小心起见,我在本地机器上试验了,RAS认证没弄好,密码验证又禁止了,你哭吧。呵呵

相关推荐