感谢支持
我们一直在努力

Linux远程登录ssh免密码

(一)问题:


假如我们现在有两台机器:ServerA和ServerB,现在想要让ServerA不用输入密码就能够进行访问。


(二)方法和原理:


我们使用ssh-keygen在ServerA上生成private和public密钥,将生成的public密钥拷贝到远程机器ServerB上后,就可以使用ssh命令无需密码登录到另外一台机器ServerB上。


在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加密算法【默认是DSR算法】,该工具做linux系统的远程管理是非常安全的。


(三)实验步骤:


1.登录ServerA


2.ssh-keygen -t  rsa,将会生成公钥和私钥文件id_rsa和id_rsa.pub【如果一直回车下去,最后这两个文件应该在/home/$USER/.ssh下面】


3.将 .pub 文件复制到ServerB机器的 .ssh 目录下,并保存为authorized_keys


可以使用:


ssh-cop-id命令会将指定的公钥文件复制到远程计算机


[Oracle@ www.linuxidc.com ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub oracle@192.168.55.232
28
oracle@192.168.55.232’s password: 
Now try logging into the machine, with “ssh ‘oracle@192.168.55.232′”, and check in:


  .ssh/authorized_keys


to make sure we haven’t added extra keys that you weren’t expecting.


[oracle@ www.linuxidc.com ~]$ ssh oracle@192.168.55.232
oracle@192.168.55.232’s password: 
Last login: Thu Nov 24 16:05:32 2011 from 192.168.55.229
[oracle@ www.linuxidc.com ~]$ 


4.大功告成,从A机器登录B机器的目标账户,不再需要密码了


5.设置文件和目录权限【这一步可以省略,但是为了安全起见,加上也是有必要的~】


设置authorized_keys权限


chmod 600 authorized_keys 


设置.ssh目录权限


chmod 700 -R .ssh


6.要保证.ssh和authorized_keys都只有用户自己有写权限。否则验证无效。(今天就是遇到这个问题,找了好久问题所在),其实仔细想想,这样做是为了不会出现系统漏洞。


报错:


The authenticity of host ‘192.168.20.59 (192.168.20.59)’ can’t be established.  
RSA key fingerprint is 6a:37:c0:e1:09:a4:29:8d:68:d0:ca:21:20:94:be:18.  
Are you sure you want to continue connecting (yes/no)? yes  
Warning: Permanently added ‘192.168.20.59’ (RSA) to the list of known hosts.  
root@192.168.20.59’s password:   
Permission denied, please try again.  
root@192.168.20.59’s password:   
Permission denied, please try again.  
root@192.168.20.59’s password:   
Permission denied (publickey,gssapi-with-mic,password).  


ps:


如果我们添加公钥后,还是无法访问,也可能是ServerA主机上面的一个文件known_hosts中已经存在ServerB的ip信息,删除重新访问即可。


另外,如果以上方法尝试过后还是不行,可能是因为登录失败次数过多被锁定,这个时候我们就需要去看看我们的系统日志了/var/log/messages,将之前的锁定信息日志删除就可以了。

赞(0) 打赏
转载请注明出处:服务器评测 » Linux远程登录ssh免密码
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏