当前位置: 首页 > news >正文

Linux SSH免密登录实验:基于Xshell的公钥认证机制

一、实验目的

掌握通过Xshell图形化工具配置SSH密钥认证的方法,实现Windows客户端对Linux服务器的免密码安全登录,理解公钥加密在远程连接中的应用原理。

二、实验原理

SSH密钥认证基于非对称加密技术,通过生成一对密钥(公钥和私钥)实现身份验证:

  • 公钥:部署在Linux服务器的~/.ssh/authorized_keys文件中,用于加密挑战信息。
  • 私钥:保存在Windows客户端,用于解密服务器发送的挑战,证明身份合法性。
    登录时,服务器用公钥加密随机数据,客户端用私钥解密后返回,验证通过则无需输入密码

三、实验步骤

3.1 搭建及准备实验环境

3.11 搭建实验环境

此实验以Open Euler为例,具体虚拟机配置过程(RHEL与Open Euler类似)可参考过往文章:https://blog.csdn.net/2502_90206768/article/details/159048098?spm=1011.2124.3001.6209

搭建完成后切记要进行以下操作:

1、修改主机名

2、关闭防火墙

3、关闭SE Linux

#关闭防火墙 [root@localhost ~]# systemctl disable --now firewalld Removed "/etc/systemd/system/multi-user.target.wants/firewalld.service". Removed "/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service". #SELinux——关闭 [root@localhost ~]# vim /etc/selinux/config SELINUX=disabled #查看防火墙状态 [root@localhost ~]# systemctl status firewalld #修改主机名字 [root@localhost ~]# hostnamectl set-hostname nanwang [root@localhost ~]# bash

3.12 准备实验环境

检查/root/.ssh/authorized_keys是否存在。若不存在,需手动创建目录和文件

[root@kai ~]# cd /root [root@kai ~]# ls -a . .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .lesshst .tcshrc .viminfo [root@kai ~]# mkdir /root/.ssh [root@kai ~]# touch /root/.ssh/authorized_keys

3.2 生成密钥对(Windows客户端)

  1. 打开Xshell,点击菜单栏工具→用户密钥管理者。
  2. 点击生成,选择密钥类型(推荐RSA,长度2048位),设置密钥名称(如my_ssh_key),无需设置密码(若需更高安全可设置密码短语)。
  3. 生成完成后,在密钥管理器中选中该密钥,点击属性,复制公钥内容(以ssh-rsa开头的字符串)。
[root@kai ~]# vim /root/.ssh/authorized_keys #将拷贝的公钥粘贴 [root@kai ~]# systemctl restart sshd #重启服务

3.3 配置Xshell会话使用密钥登录

  1. 在Xshell中打开目标会话的属性(或新建会话)。
  2. 进入连接→用户身份验证,设置:
    方法:选择Public Key
    用户名:输入Linux服务器的登录用户名(如root或普通用户)。
    用户密钥:选择之前生成的密钥(如my_ssh_key)。
  3. 点击确定保存配置,重新连接会话。

四、实验结果

  • 成功通过Xshell使用密钥对登录Linux服务器,无需输入用户密码
  • 检查服务器端~/.ssh/authorized_keys文件,确认公钥已正确添加。
  • 客户端Xshell会话属性中,用户身份验证方法显示为Public Key,且密钥名称匹配。

七、实验总结

通过本次实验,掌握了SSH密钥认证的核心流程:本地生成密钥对→公钥部署到服务器→客户端配置私钥验证。相比密码登录,密钥认证具有以下优势:

  • 安全性更高:避免密码被暴力破解或嗅探。
  • 自动化友好:适合脚本批量管理服务器,无需人工输入密码。
  • 便捷性:一次配置后,后续登录无需记忆复杂密码。

注:实验中需注意权限设置的严格性(如.ssh目录和authorized_keys文件的权限),否则可能导致认证失败。此外,私钥文件需妥善保管,避免泄露导致安全风险。

http://www.jsqmd.com/news/696329/

相关文章:

  • 2026年热门的自动化控制柜厂家哪家好?自动化控制柜/充气柜/光伏并网柜厂家推荐 - 栗子测评
  • 别再折腾MCP2515了!手把手教你用ESP32内置TWAI外设实现CAN通信(附完整代码与500K波特率避坑指南)
  • SpringBoot+Vue炼油厂盲板管理系统源码+论文
  • STM32F407驱动RDA5820N模块:从数据手册到可用的C语言库(I2C通信详解)
  • LoRA微调Stable Diffusion:高效定制AI图像生成
  • 不只是压缩:当模型蒸馏开始复制人格
  • 2026年知名的超低温蝶阀/空分蝶阀公司选择指南 - 品牌宣传支持者
  • 量子KIC模型与量子电池:理论与精确对角化技术
  • Django ORM 中的 Many-to-Many 关系处理
  • 终极指南:如何在iOS设备上快速安装TrollStore的完整解决方案
  • 洛谷题解:P16273 [蓝桥杯 2026 省 Java B 组] 回程
  • STM32F103/CH32F103定时器单脉冲模式在可控硅过零触发中的实战应用
  • GPT-5.5 战略转移:OpenAI 不再做聊天机器人了
  • 计算机网络复习(第三章):数据链路层
  • Windows 10/11 右键菜单找回经典CMD:修改注册表一键恢复“在此处打开命令窗口”
  • Phi-mini-MoE-instruct镜像优势:预装transformers+gradio+supervisor,免apt-get折腾
  • 罗技鼠标宏压枪:告别手抖,让PUBG射击更稳定的终极指南
  • chatgptimage2.0手机版app下载安装教程gptimage2.0手机版下载安装教程安卓版app鸿蒙版苹果版IOS电脑版安装包下载地址
  • 新药研发避坑指南:如何用ADMET预测工具(如ADMETlab 2.0)提前筛掉“问题分子”?
  • C语言01
  • 若依RuoYi-Vue项目接入第三方系统?手把手教你实现SSO单点登录(附完整代码)
  • 算法训练营第十二天 | 多数元素
  • Hutool JWT 教程
  • Python数据类型转换实现方法
  • 2026边墙风机行业深度选型对比|英飞风机、格林瀚克、依必安派特三家核心全解析
  • Cesium-Wind:3步构建专业级3D风场可视化系统
  • 机器学习模型评估的统计学方法与置信区间计算
  • AUTOSAR vs OSEK:从DBC文件里的网络管理属性,看懂两种NM协议的区别与配置
  • QtScrcpy:三分钟实现安卓设备在电脑上的零延迟投屏
  • 基于Reflexion框架的AI智能体反思机制:从错误中学习的自主调试实践