linux主机的免密登录

实现linux主机之间的相互免密登录

在进行远程登录的时,服务器和主机间进行认证阶段分为:

基于口令认证(不安全,易被抓包拦截获取)

客户机连接服务器时,服务器将自己的公钥返回给客户机

客户机会将服务器的加密的公钥追加到/root/.ssh/known_hosts文件中

客户机输入账号密码登录

当第二次去连接时,客户机会先检查/root/.ssh/known_hosts文件查找服务器记录,若有则直接输入账号密码登录

基于公钥认证(相对口令认证更为安全)

客户机将自己的公钥添加在服务器的/root/.ssh/authorized_keys中

客户机连接服务器时,会在/root/.ssh/authorized_keys中匹配到客户机的公钥pubKey,并生成随机数R,用客户机的公钥对该R进行加密,然后将加密信息发送给客户机

客户机用自己的私钥解密得到随机数R,然后对随机数R和本次会话的SessionKey(会话密钥)利用MD5算法得到Digest1,发送给服务器端。

服务器也对R和SessionKey(会话密钥)用同样的算法生成Digest2

服务器端会最后比较Digest1和Digest2是否相同,完成认证过程

本次利用两台linux主机进行操作:

root@oula1服务端 和 root@oula2客户端

服务端配置

复制代码
#确认ssh服务程序是否安装
[root@oula1 ~]# rpm -qa | grep ssh
openssh-server-9.3p1-2.oe2309.x86_64
openssh-clients-9.3p1-2.oe2309.x86_64

 
#查看ssh服务在后台是否运行
[root@oula1 ~]# ps -aux | grep ssh
root         832  0.0  0.5  15776  8448 ?        Ss   16:13   0:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root        1581  0.0  0.6  18140  9856 ?        Ss   16:15   0:00 sshd: root [priv]
root        1585  0.0  0.4  18400  6384 ?        S    16:15   0:00 sshd: root@pts/0
root        1658  0.0  0.1  22380  2176 pts/0    S+   16:19   0:00 grep --color=auto ssh

 
#关闭防火墙
1、[root@oula1 ~]# systemctl disable firewalld
2、[root@oula1 ~]# setenforce 0
 
 
#修改ssh服务相关配置
[root@oula1 ~]# vim /etc/ssh/sshd_config
[root@oula1 ~]# systemctl restart sshd

客户端配置

复制代码
#创建密钥对
[root@oula1 ~]# ssh-keygen -t rsa
ssh-keygen 生成、管理和转换认证密钥 -t制定类型 RSA算法
(一路敲回车)
 
[root@oula1 ~]# ll /root/.ssh/
总计 8
-rw-------. 1 root root 2590  1月14日 16:25 id_rsa
-rw-r--r--. 1 root root  564  1月14日 16:25 id_rsa.pub

 
#复制该公钥文件到服务端的该目录下
[root@oula1 ~]# ssh-copy-id root@192.168.75.131(服务端的ip地址)

免密登录配置成功

复制代码
[root@oula1 ~]# ssh root@192.168.75.131
相关推荐
用户8055336980319 分钟前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户0340952979135 分钟前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF1 小时前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者2 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo2 天前
Linux系统中网线与USB网络共享冲突
linux
荣--2 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森2 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Sokach10153 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
SelectDB4 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维