【Linux系列】known_hosts详解

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

known_hosts 文件的作用:

  1. 身份验证:首次连接到 SSH 服务器时,客户端会获取并记录服务器的公钥。之后每次连接,客户端都会比对已知的公钥与服务器提供的公钥,以确认服务器的真实性。
  2. 防止中间人攻击 :如果公钥发生变化,SSH 客户端会警告用户可能存在安全风险,要求用户确认是否继续连接。

常见问题及解决方法:

  1. 主机密钥变更警告:如果服务器更换了密钥或用户重装了系统,可能会出现警告。解决方法包括:

    • 使用ssh-keygen -R [hostname_or_IP]命令删除旧的密钥记录。
    • 使用ssh-keyscan -H [hostname_or_IP] >> ~/.ssh/known_hosts命令更新 known_hosts 文件,添加新的公钥。
    • 直接删除known_hosts文件,但这样会移除所有 SSH 连接的历史记录,不推荐使用。
  2. 编辑 known_hosts 文件 :如果需要删除特定的公钥条目,可以直接编辑known_hosts文件,找到对应的公钥并删除。

  3. 自动化脚本中的密钥检查 :在自动化脚本中,可能需要禁用密钥检查以避免交互式输入,可以通过设置StrictHostKeyChecking no实现,但这可能会降低安全性。

  4. 保护 known_hosts 文件 :由于known_hosts文件的重要性,应当确保其不被未授权访问或篡改,通常该文件的权限设置为600,即只有所有者可以读写。

  5. 使用 HashKnownHosts 选项 :为了提高安全性,可以启用HashKnownHosts选项,这样存储在known_hosts中的公钥将以散列形式存储,保护服务器的隐私。

  6. SSH 配置文件中的相关设置 :在ssh_config文件中,可以设置UserKnownHostsFile指定known_hosts文件的位置,如果出现配置错误,如使用错误的选项名,会导致连接问题。

手动修改

apl 复制代码
# 清空缓存,删除相关的ip
vim  ~/.ssh/known_hosts

通过合理使用和管理known_hosts文件,用户可以提高 SSH 连接的安全性,有效预防潜在的网络攻击。

觉得有用的话点个赞 👍🏻 呗。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

相关推荐
无敌小茶6 分钟前
Linux学习笔记之环境变量
linux·笔记
Harbor Lau19 分钟前
Linux常用中间件命令大全
linux·运维·中间件
漫谈网络37 分钟前
基于 Netmiko 的网络设备自动化操作
运维·自动化·netdevops·netmiko
꧁坚持很酷꧂1 小时前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
凉、介1 小时前
PCI 总线学习笔记(五)
android·linux·笔记·学习·pcie·pci
电鱼智能的电小鱼2 小时前
EFISH-SBC-RK3588无人机地面基准站项目
linux·网络·嵌入式硬件·机器人·无人机·边缘计算
电鱼智能的电小鱼2 小时前
基于 EFISH-SBC-RK3588 的无人机环境感知与数据采集方案
linux·网络·嵌入式硬件·数码相机·无人机·边缘计算
小诸葛的博客3 小时前
详解Linux中的定时任务管理工具crond
linux·运维·chrome
一默19913 小时前
CentOS 7.9升级OpenSSH到9.9p2
linux·运维·centos
keep intensify3 小时前
Linux常用指令
linux·服务器·php