linux ssh远程免登陆

一、原理

  ssh密钥分为两个部分,一个是公钥,一个是密钥,公钥是放在需要连接的机器上的,密钥是自己机器使用的。

  比如:192.168.1.1 需要无需密码登录  192.168.1.2 那么,公钥就需要放在192.168.1.2的机器中,私钥就放在192.168.1.1的机器上自己保存。

二、备份:

操作之前先将/root/.ssh/下的known_hosts备份成known_hosts.bak

三、生成Key值文件:

1.首先登入一台linux服务器,此台做为母机(即登入其他linux系统用这台做为入口)

2.执行一行命令生成key文件:ssh-keygen -t rsa

3.连续按enter回车键

图解:

四、查看公钥key文件

注释:①id_rsa是私钥 ②id_rsa.pub是公钥

1.在母机上,进入/roo/.ssh目录,找到id_rsa.pub该文件,这个文件就是刚才执行ssh-keygen所生成的公钥key文件

五、远程拷贝到需要免登录的机器

5.1、用scp拷贝公钥

1.用scp命令,将母机产生的key拷一份到远程的linux服务器上,并命名成authorized_keys

2.scp ~/.ssh/id_rsa.pub  root@远程机器IP:/root/.ssh/authorized_keys

3.如果非root用户,则:scp ~/.ssh/id_rsa.pub  用户名@远程机器IP:/home/用户名/.ssh/authorized_keys

3.这一步的操作需要手动输入密码。

5.2、用ssh-copy-id来拷贝私钥

注:-p52113是需要连接的机器的端口号改变了,如果是原来的默认端口22,就不用添加-p52113

五、登录验证

1.表示登录成功

posted @ 2016-11-25 11:46  帅丶高高  阅读(417)  评论(0编辑  收藏  举报