• 如何自动接受SSH密钥指纹?


    首次连接到Linux系统时,SSH会提示你接受计算机的指纹以成功建立连接,因为“ known_hosts”文件中没有指纹。

    如何自动接受SSH密钥指纹?如何自动接受SSH密钥指纹?
    指纹是系统公钥的缩写版本,为了保护自己免受中间人攻击(MITM),ssh程序使用自上次连接以来存储的指纹验证远程系统ssh的指纹。如果指纹已更改,系统将提醒你并询问是否要继续。

    有时你可能需要自动接受SSH指纹。例如,如果创建了一个shell脚本用来远程管理多台linux服务器。

    可以使用以下两种方法来完成此操作。

    • 使用StrictHostKeyChecking=no选项自动接受ssh指纹。
    • 使用ssk-keyscan命令接受ssh指纹。

    首次连接到远程计算机时,将警告你无法建立主机的真实性,并提供密钥指纹以进行验证。
    如何自动接受SSH密钥指纹?如何自动接受SSH密钥指纹?
    接受指纹后,它将被保存在“known_hosts”文件中,当重新连接到同一个远程主机时,SSH根据known_hosts文件检查指纹,以验证其身份。

    1、如何使用SSH选项自动接受SSH密钥指纹?

    此方法简单明了,只需使用SSH命令添加选项即可实现。使用此选项时,ssh会自动将新的主机密钥添加到用户known_hosts文件中。

    [root@localhost ~]# ssh -o "StrictHostKeyChecking no" localhost
    Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
    root@localhost's password: 
    Last login: Mon Jan 25 20:01:53 2021 from 192.168.43.1
    

    如何自动接受SSH密钥指纹?如何自动接受SSH密钥指纹?
    以上警告表明它已将一个密钥添加到known_host文件。
    如何自动接受SSH密钥指纹?如何自动接受SSH密钥指纹?

    2、如何使用ssk-keyscan命令自动接受SSH密钥指纹?

    这是另一种方法,ssh-keycan允许你将ssh指纹附加到known_hosts文件中。当你想要批量添加时,此工具非常有用。使用下面命令操作:

    [root@localhost ~]# ssh-keyscan -H 192.168.43.138 >> ~/.ssh/known_hosts
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    

    使用以下命令将多台远程主机的ssh指纹添加到known_hosts。必须将远程主机的IP地址添加到一个文件中,并使用ssh-keyscan命令调用它,如下所示,将各个远程服务器的ip地址保存在文本文件里面:

    [root@localhost ~]# cat remote-hosts.txt 
    192.168.43.137
    192.168.43.138
    192.168.43.166
    

    然后使用ssh-keyscan工具将它们的ssh指纹添加到known_hosts:

    [root@localhost ~]# ssh-keyscan -f ./remote-hosts.txt >> ~/.ssh/known_hosts 
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.137:22 SSH-2.0-OpenSSH_7.8
    # 192.168.43.137:22 SSH-2.0-OpenSSH_7.8
    # 192.168.43.137:22 SSH-2.0-OpenSSH_7.8
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.138:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.166:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.166:22 SSH-2.0-OpenSSH_7.4
    # 192.168.43.166:22 SSH-2.0-OpenSSH_7.4
    

    如何自动接受SSH密钥指纹?如何自动接受SSH密钥指纹?

    总结

    首次连接到Linux系统时,SSH会提示你接受计算机的指纹以成功建立连接,因为“ known_hosts”文件中没有指纹。

  • 相关阅读:
    Docker技术入门之---Docker核心概念:镜像、容器、仓库(2)
    Docker技术入门之---Docker安装(1)
    微信小程序自定义组件
    vue项目优化--使用CDN和Gzip
    小程序分包
    VUE--- browserHistory 和 hashHistory。
    vue-生成的css文件中背景url()图片路径问题
    vue异步组件
    Vue双向绑定原理及实现
    web-view小程序转发功能,web-view和小程序之间传参
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/15143661.html
Copyright © 2020-2023  润新知