zoukankan      html  css  js  c++  java
  • known_hosts有什么用?

    一、问题描述

    当我连接我的服务器的时候,返回信息如下

    二、问题分析

    返回的信息是什么意思?

    IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
    
    可能是有人做了不好的事
    
    Someone could be eavesdropping on you right now (man-in-the-middle attack)!
    
    有人可能监听你,对你进行了中间人攻击
    
    It is also possible that a host key has just been changed.
    
    也有可能host key刚刚改变了。
    
    The fingerprint for the ECDSA key sent by the remote host is
    SHA256:XXXXX
    
    远程主机发送过来的ECDSA key 指纹是xxxxx
    
    Please contact your system administrator.
    Add correct host key in /Users/fangzhijie/.ssh/known_hosts to get rid of this message.
    
    添加正确的host key到这个文件中来避免这条信息。
    
    Offending ECDSA key in /Users/fangzhijie/.ssh/known_hosts:8
    ECDSA host key for bei1 has changed and you have requested strict checking.
    Host key verification failed.
    
    

    这里的原因是,我把原先的腾讯云服务器重装系统,是属于host key改变的情况。所以根据提示,将正确的host key添加到指定的文件中。

    三、问题解决

    于是找到known_hosts这个文件,将远程主机发来的指纹(下面被红笔覆盖的),

    替换到bei1对应指纹。重新连接,发现问题解决。

    四、问题再分析

    known_hosts这个文件究竟有什么用?里面放的是什么内容?

    ssh会把你每个你访问过计算机的公钥(public key)都记录在known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。

    从上面的图中可以看出,known_hosts中的格式是

    Ip或域名  主机名 host-key
    

    还是比较容易理解的,使用known_hosts的作用是防止DNS攻击

  • 相关阅读:
    C# 16进制字节转Int(涉及:Base64转byte数组)
    c# CRC-16 / MODBUS 校验计算方法 及 异或校验算法
    SqlSugar 用法大全
    SQL Server-聚焦NOLOCK、UPDLOCK、HOLDLOCK、READPAST你弄懂多少?
    使用 tabindex 配合 focus-within 巧妙实现父选择器
    DataX 3.0 源码解析一
    Golang必备技巧:接口型函数
    PID控制
    dockerfile,拷贝文件夹到镜像中(不是拷贝文件夹中的内容到镜像)
    什么是PKI?主要作用是什么?
  • 原文地址:https://www.cnblogs.com/fonxian/p/11228760.html
Copyright © 2011-2022 走看看