Linux配置实现免密钥登录过程解析

1.ssh命令

在linux中,可以通过ssh命令来登录另一台服务器。打开两台linux虚拟机,一台Linux01的ip为192.168.226.128,另一台linux02为192.168.226.129,

开机后在linux01终端输入: ssh 192.168.226.129 ,然后会提示输入linux02的登录密码,输入后就可以在linux01上登录linux02了,可以进行命令操作,ssh命令的两种方式

ssh ip地址(默认是root用户) 以root用户的身份登录

ssh 用户名@ip地址      以指定用户身份登录

2.免密钥登录解决的问题

现在要想在linux01上登录linux02系统,需要在ssh ip地址后再手动输入密码后才能进入linux02服务器,但是配置免密钥登录后,直接输入ssh命令就可以登录,不在需要手动输入密码。免密钥登录解决了集群之间相互访问受密码的限制。什么是集群?

集群就是很多的服务器干一件事(服务器与服务器之间处于联通状态并且可以传递数据)

3.配置免密钥登录:

只要是在集群中的服务器,都需要配置免密钥,并不是只配置一台,其他机器就可以使用了

3.1在服务器linux01上生成私钥和公钥 ssh-keygen -t rsa ,然后点击四次回车,不要输入任何密码,否则免密钥失败,看到如下信息配置成功

      +--[ RSA 2048]----+
          |     .o.  |
          |      .E.  |
          |      .. . |
          |     o  .  |
          |    S o .. |
          |     o oooo |
          |    . o.+=. |
          |     .B... |
          |     .+.=+. |
          +-----------------+

3.2在自己的电脑上复制一份公钥同时在其他的服务器上也生成一份, ssh-copy-id 192.168.226.128 , ssh-copy-id 192.168.226.129

此过程需要手动输入一次密码,这样就在linux01服务器上和linux02服务器上都放置了一份公钥,通过公钥来实现免密钥登录,看到如下信息配置成功:

  Now try logging into the machine, with “ssh ‘192.168.23.144’”, and check in:
.ssh/authorized_keys
  to make sure we haven’t added extra keys that you weren’t

3.3在linux01的hosts中配置hostname映射: vim /etc/hosts

3.4,重复上面的步骤配置linux02,如果有多台服务器,就在复制公钥时在每一台服务器上都复制一份,ip映射也要配置每一台主机的映射,最后测试输入ssh ip地址可以直接登录不需要输密码

文件传输: scp -r 要复制的文件/文件夹 目标ip地址或hostname:目标文件夹路径

如要将linux01上的apps文件夹发送到linux02的home中: scp -r /home/apps 192.168.226.129:/home/ 或 scp -r /home/apps linux02:/home/

就可以传输文件了

本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!


数据运维技术 » Linux配置实现免密钥登录过程解析