SSH公钥无密码认证


SSH公钥无密码认证
 
1)在master主机上生成密码对
 
1
ssh-keygen –t rsa –P ''
确认一路回车,命令默认会在用户主目录下生成.ssh目录,你们有两 密钥对文件:id_rsa和id_rsa.pub
 
1
[master@hadoop ~]$ ll .ssh/
2
-rw-------. 1 master master 1675 Jun  3 00:28 id_rsa
3
-rw-r--r--. 1 master master  402 Jun  3 00:28 id_rsa.pub
接着在master节点上做如下配置,把id_rsa.pub追加到授权的key里面去。 
 
1
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
本以为这么就可以搞定了的,发现输入命令ssh localhost还是要密码。
捣鼓了半天,终于还是被我找到了原因
 
找到服务器修改SSH配置文件"/etc/ssh/sshd_config",修改如下内容(去掉前面的注释)
 
1
RSAAuthentication yes # 启用 RSA 认证
2
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
3
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)
设置完之后记得 重启SSH服务 
 
1
service sshd restart
重新验证ssh localhost,无密码登陆成功
配置远程登陆其他机器也是同一个原理,只需把本机生成的id_rsa.pub上传到其他服务器做同样操作即可。
 

相关内容

    暂无相关文章