Ruby 如何在使用Net::SSH.start()登录时不向已知主机文件添加主机密钥

Ruby 如何在使用Net::SSH.start()登录时不向已知主机文件添加主机密钥,ruby,ssh,capistrano3,net-ssh,Ruby,Ssh,Capistrano3,Net Ssh,我有三个堡垒实例,Capistrano使用SSH连接到堡垒并执行代码 以下是Capistrano的SSH选项: set :ssh_options, forward_agent: true, auth_methods: %w(publickey), user_known_hosts_file: %w(/dev/null), paranoid: Net::SSH::Verifiers::Null.new, proxy: Net::SSH::Proxy::Command.new(ssh_comman

我有三个堡垒实例,Capistrano使用SSH连接到堡垒并执行代码

以下是Capistrano的SSH选项:

set :ssh_options, forward_agent: true, auth_methods: %w(publickey), user_known_hosts_file:  %w(/dev/null), paranoid: Net::SSH::Verifiers::Null.new, proxy: Net::SSH::Proxy::Command.new(ssh_command)
每次将主机密钥添加到已知主机文件(~/.ssh/known\u hosts)时

当我尝试重新部署时,它会说“主机名不匹配”失败


如何继续?

作为一种解决方法,您可以通过编辑paranoid选项告诉Capistrano忽略严格的主机密钥验证

paranoid:false


您应该能够通过删除现有的已知主机文件来解决此问题,以便重新构建该文件。

作为一种解决方法,您可以通过编辑paranoid选项告诉Capistrano忽略严格的主机密钥验证

paranoid:false


您应该能够通过删除现有已知的\u hosts文件来解决该问题,以便重新构建该文件。

我最终通过更改ssh配置而不是在Capistrano中编辑来解决它。您需要在ssh配置中编辑什么来修复它?编辑您的原始问题,以便找到此页面的任何其他人都能找到一些线索:)我最终通过更改ssh配置而不是在Capistrano中编辑使其工作。您必须在ssh配置中编辑哪些内容才能修复它?编辑您的原始问题,以便找到此页面的任何其他人都有一些线索:)