一、相关说明
现有在同一个网段的两台电脑master和slaver.
需求:想在master上通过ssh命令无密码访问slaver。
二、在master下生成密钥
在shell里键入:
ssh-keygen -t rsa
然后一直按Enter键,什么都不输入,保持默认,直至这样:
默认在 /root/.ssh目录下生成两个文件:
id_rsa :私钥
id_rsa.pub :公钥
将id_rsa.pub文件导入到认证文件,即authorized_keys。如果没有这个authorized_keys文件,则在这个目录下新建这个文件。cat /root/.ssh/id_dsa.pub >> /root/.ssh/authorized_keys
三、对authorized_keys文件进行授权
chmod 600 /root/.ssh/authorized_keys
四、编辑sshd_config文件
<pre name="code" class="plain">vi /etc/ssh/sshd_config
注意:ssh而不是.ssh
然后找到将下面内容前的的”#“去掉:
五、重启sshd服务
service sshd restart
验证一下无密码登陆master本身:
ssh localhost
六、配置master无密钥登陆slaver
将密钥拷贝到slaver机器上的/root/.ssh目录下:scp /root/.ssh/id_rsa.pub root@slaver_ip:/root/.ssh/
注意:root为用户名,slaver_ip换成实际IP地址。
另外:这里强烈建议使用ssh-copy-id 命令,这个命令方便很多,不需要自己手动将密钥添加到authorized_keys文件。
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
然后在slaver机器上重复三四五步骤。
这样master无密码登陆slaver就完成了,第一次可能需要输入密码,但是第二次之后就不会需要输入密码了。
如果需要salver无密码访问master,实现方法是一样的,重复上面的过程即可。