一,原理
说明:
A为linux服务器a
B为linux服务器b
每台linux都有ssh的服务端和客户端,linux下的ssh命令就是一个客户端
我们常用ssh协议来进行登陆或者是文件的拷贝,都需要密码
A要免密登陆B:
1,需要在a中执行ssh-keygen生成自己的公钥和私钥,生成的文件在.ssh文件中。
2,需要吧a中的公钥copy到b中的中,b进行授权(把公钥中的信息拷贝到“authorized_keys”文件中) 这里只需要一个命令ssh-copy-id 命令
eg:
[eddy@eddy01 .ssh]$ ssh-keygen Generating public/private rsa key pair.Enter file in which to save the key (/home/eddy/.ssh/id_rsa): Enter passphrase (empty for no passphrase): //直接回车Enter same passphrase again: //直接回车Your identification has been saved in /home/eddy/.ssh/id_rsa.Your public key has been saved in /home/eddy/.ssh/id_rsa.pub.The key fingerprint is:58:e5:f9:58:27:b5:4e:dc:32:ce:6c:eb:56:ac:89:9b eddy@eddy01The key's randomart image is:+--[ RSA 2048]----+| . . || o . o o || . o o B .|| o + O o || . S . . *. || . .o|| ..+ || .o+ || Eo. |+-----------------+[eddy@eddy01 .ssh]$ ssh-copy-id eddy02 eddy@eddy02's password: Now try logging into the machine, with "ssh 'eddy02'", and check in: .ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.[eddy@eddy01 .ssh]$ ssh eddy02Last login: Tue Mar 7 12:25:23 2017 from 192.168.145.1[eddy@eddy02 ~]$