首次连接到Linux系统时,SSH它会提示你接受计算机指纹并成功建立连接,因为“ known_hosts”文件中没有指纹。
为了保护自己免受中间人的攻击,指纹是系统公钥的缩写版本(MITM),ssh该程序使用自上次连接以来存储的指纹验证远程系统ssh指纹。若指纹发生变化,系统会提醒您并询问是否要继续。
有时你可能需要自动接受SSH例如,如果创建了指纹。shell脚本用于远程管理多个脚本linux服务器。
本操作可采用以下两种 *** 完成。
使用StrictHostKeyChecking=no自动接受选项ssh指纹。
使用ssk-keyscan命令接受ssh指纹。
当您之一次连接到远程计算机时,警告您无法建立主机的真实性,并提供密钥指纹进行验证。
接受指纹后保存“known_hosts”当文件重新连接到同一远程主机时,SSH根据known_hosts检查指纹以验证其身份。
1、如何使用SSH自动接受选项SSH密钥指纹?
这种 *** 简单明了,只需要使用SSH可以通过命令添加选项。使用此选项时,ssh将自动向用户添加新的主机密钥known_hosts文件中。
[root@localhost~]#ssh-o"StrictHostKeyCheckingno"localhostWarning:Permanentlyadded'localhost'(ECDSA)tothelistofknownhosts.root@localhost'spassword:Lastlogin:MonJan2520:01:532021from192.168.43.1上述警告表明,它已经添加了一个密钥known_host文件。
2、如何使用ssk-keyscan自动接受命令SSH密钥指纹?
这是另一种 *** ,ssh-keycan允许你将ssh指纹附加到known_hosts本工具在文件中非常有用,当您想批量添加时。使用以下命令:
[root@localhost~]#ssh-keyscan-H192.168.43.138>>~/.ssh/known_hosts#192.168.43.138:22SSH-2.0-OpenSSH_7.4#192.168.43.138:22SSH-2.0-OpenSSH_7.4#192.168.43.138:22SSH-2.0-OpenSSH_7.4使用以下命令将使用多个远程主机ssh指纹添加到known_hosts。远程主机必须使用IP将地址添加到文件中并使用ssh-keyscan命令调用它,如下所示,每个远程服务器将被调用ip文本文件中保存地址:
[root@localhost~]#catremote-hosts.txt192.168.43.137192.168.43.138192.168.43.166然后使用ssh-keyscan他们的工具ssh指纹添加到known_hosts:
[root@localhost~]#ssh-keyscan-f./remote-hosts.txt>>~/.ssh/known_hosts#192.168.43.138:22SSH-2.0-OpenSSH_7.4#192.168.43.137:22SSH-2.0-OpenSSH_7.8#192.168.43.137:22SSH-2.0-OpenSSH_7.8#192.168.43.137:22SSH-2.0-OpenSSH_7.8#192.168.43.138:22SSH-2.0-OpenSSH_7.4#192.168.43.138:22SSH-2.0-OpenSSH_7.4#192.168.43.166:22SSH-2.0-OpenSSH_7.4#192.168.43.166:22SSH-2.0-OpenSSH_7.4#192.168.43.166:22SSH-2.0-OpenSSH_7.4本文转载自微信公众号「Linux就该这么学」,请联系以下二维码。Linux就这样学微信官方账号吧。