Linux - SSH免密登录详细步骤

Linux - SSH免密登录详细步骤

  • 为什么要免密登录?
  • 免密登录方案
  • 添加信任来进行免密登录方法实现

一、为什么需要免密登录

再开发中,我们往往需要进行远程登录服务器进行操作,而每一台服务器都需要设置账号和密码,每一次远程登录的时候我们都需要进行输入密码才能进行操作,但是密码多了之后为了安全我们维护起来会很麻烦,所以设置免密登录之后我们会更方便进行对服务器的管理

二、免密登录的方案

方案一:就是讲账号、密码、IP书写在.sh文件的脚本中。直接运行服务器相关的脚本就行。
方案二:就是设置免密登录(本文讲解的方法)
方案三:其他。。。

三、添加信任来实现免密登录

  • 准备阶段

1、需要准备两个Linux环境
2、知道其账号密码

  • 步骤一 :在 “/etc/hostname” 中更改当前环境的名称,每一个都要改(原因是避免重复,影响最后的结果)
	执行   vi /etc/hostname   
	进入界面添加(名称) 例:
	xx
  • 步骤二 :在 “/etc/hosts” 中添加服务器信息(原因是避免每次登录的时候都要输入ip)
	执行   vi /etc/hosts   
	进入hosts的界面添加(ip 名称) 例:
	192.168.121.001 master
    192.168.121.002 slave1
    192.168.121.003 slave1
  • 步骤三: 在master生成公钥(有后缀的)和私钥
	执行:ssh-keygen -t rsa
	如果没生成过,一路按 `Enter` 就好了,

生成成功的界面:
在这里插入图片描述
步骤四:查看生成好的密钥,将id_rsa.pub 添加到 authorized_keys中
查看密钥: ls .ssh
在这里插入图片描述

	将id_rsa.pub添加到authorized_keys中,先进入 .ssh目录
	cat id_rsa.pub >> authorized_keys
  • 步骤五:每一个环境都需要像上面这样做

  • 步骤六:将每一个环境的id_rsa.pub都copy到master中(名字要不一样)

	例:我这儿是将slave1 上面的移动到master上面 在slave1上面执行命令
	scp /root/.ssh/id_rsa.pub master:/root/.ssh/id_rsa.pub.slave1
	期间会输入master的密码
  • 步骤七: 完成上述操作之后回到master上面,将其余环境的id_rsa.pub.x 文件全部追加到authorized_keys中
	例:我这里是将slave1传过来的 id_rsa.pub.slave1追加authorized_keys上
	cat id_rsa.pub.slave1 >> authorized_keys
  • 步骤八:将master中生成的authorized_keys文件拷贝到每一个子环境下
	例:我这儿是将master 上面的移动到slave1上面
	scp authorized_keys slave1:/root/.ssh/authorized_keys
  • 步骤九:给每一个环境的私钥添加权限
	chmod 600 authorized_keys

这样就可以免密访问了
在这里插入图片描述

如果需要退出,直接输入 “exit” 就退出了

发布了15 篇原创文章 · 获赞 5 · 访问量 5410

猜你喜欢

转载自blog.csdn.net/weixin_43718192/article/details/98082575