作业:通过两台linux主机配置ssh实现互相免密登陆

做题步骤

一.开启两个Linux主机,并且用ssh连接,要能够ping通

我这里是server:192.168.81.129 client:192.168.81.130 举例

操作如下:

二.在客户端上创建一对密钥
复制代码
#创建命令---我这里使用的是非对称密钥:
[root@client ~]# ssh-keygen -t rsa

注意:可以看到这对密钥是放在/root/.ssh/id_rsa.pub文件下的,公钥的名字是id_rsa.pub

2.查看一下密钥对

[root@client ~]# ll .ssh/

第一个是私钥,第二个是公钥

三.把公钥发送给server的.ssh下的一个叫authorized keys目录里

有两种方式:

复制代码
1.使用scp命令 --- 跨主机
​
2.使用ssh-copy id + 接收方IP

1.推荐第二种:

这里的密码默认为server登录时的密码!

2.可以查看server是否接收到了公钥:

(图中第一条就是接收到的公钥)

known_hosts:该文件是存放client发送的公钥内容

另外一种方法scp写一下:

复制代码
[root@client ~]# scp .ssh/id_rsa.pub 192.168.81.129: /root/.ssh/authorized keys

注意:可能scp发送的话,server中没有authorized keys这个目录,我们就需要手动创建一个,用mkdir(这里就不详写了)

四.验证一下client是否可以访问到server
复制代码
[root@client ~]# ssh 192.168.81.129

可以看到不需要任何密码就可以连到server了!!

相关推荐
小Tomkk13 分钟前
AutoLabelImg:高效的数据自动化标注工具和下载
运维·人工智能·自动化
*愿风载尘*1 小时前
SecureCRT连接密钥交换失败
linux·macos
Json____1 小时前
docker搭建部署 onlyoffice 实现前端集成在线解析文档解决方案
运维·docker·容器·在线文档·onlyoffice·文档预览·在线文档解析
basketball6161 小时前
Linux C 进程间高级通信
linux·运维·服务器
是小恐龙啊1 小时前
【测试报告】博客系统(Java+Selenium+Jmeter自动化测试)
运维·服务器
kyle~1 小时前
Windows---动态链接库Dynamic Link Library(.dll)
运维·windows·操作系统·运维开发·开发部署
水痕012 小时前
nginx一个域名下部署多套前端项目
运维·前端·nginx
##echo3 小时前
嵌入式Linux裸机开发笔记9(IMX6ULL)GPIO 中断实验(1)
linux·c语言·笔记·单片机·嵌入式硬件
Reggie_L3 小时前
RabbiteMQ安装-ubuntu
linux·ubuntu·ruby
AIGC_北苏4 小时前
让UV管理一切!!!
linux·人工智能·uv