window 下使用python paramiko 通过ssh执行scp 提示Host key verification failed
时间: 2023-06-17 21:08:12 浏览: 327
python通过SSH登陆linux并操作的实现
这个问题通常是因为第一次连接远程主机时,会在本地机器上生成一个known_hosts文件,用于存储远程主机的公钥信息。当下次再次连接该主机时,paramiko会检查该主机的公钥是否与known_hosts文件中保存的一致,如果不一致就会报Host key verification failed错误。
解决方法是删除本地机器上该主机的公钥信息,让paramiko重新生成:
1. 打开本地机器上的known_hosts文件,该文件一般在用户目录下的.ssh子目录中。
2. 找到对应远程主机的公钥信息,删除该行内容。
3. 重新连接远程主机时,paramiko会重新生成该主机的公钥信息,并保存到known_hosts文件中。
注意:删除本地机器上known_hosts文件中的公钥信息,可能存在一定的安全风险,因为这会使得paramiko无法验证远程主机的真实性,可能会导致中间人攻击。如果您对安全性要求较高,建议使用其他更加安全的方法来解决该问题。
阅读全文