适用于 Windows 的 OpenSSH 的 known_hosts 文件在哪里?

ans*_*ung 33 ssh powershell

我经常通过 SSH 登录的其中一台服务器更改了它的 IP 地址。所以,现在当我尝试通过 Windows Powershell 和 OpenSSH for Windows 使用 SSH 时,我收到了中间人攻击警告。

在 linux 机器上,我只会从~/.ssh/known_hosts. 但是,该~/.ssh目录似乎是空的。

Powershell/OpenSSH 的 known_hosts 文件在哪里?我已签入C:\Program Files\OpenSSH\home\anschauung\.ssh,但该文件夹也是空的。

ccp*_*zza 37

在 Windows 上,它通常存储在%USERPROFILE%\ssh%USERPROFILE%\.ssh文件夹中。如果您%USERPROFILE%在 Windows 资源管理器地址栏中键入内容 ,它将自动展开。您也可以从命令提示符尝试cd /d "%USERPROFILE%\ssh"cd /d "%USERPROFILE%\.ssh"

另请参阅:https : //stackoverflow.com/questions/32945533/is-there-a-definitive-path-for-known-hosts-in-windows

  • 在 Linux 上还有一个系统级文件 - /etc/ssh/ssh_known_hosts。windows 有类似的吗? (3认同)

小智 5

用户配置文件的 known_hosts 也有一个类似的问题没有解决,所以对于任何人来说:如果你在 Windows 上安装了 git、TortoiseGit 等,覆盖 known_hosts 文件的位置在你的 git 文件夹中,例如 Programs/Git/.ssh 或程序 (x86)/Git/.ssh。

根据错误消息

Add correct host key in /.ssh/known_hosts to get rid of this message.
Offending key in /.ssh/known_hosts:1
Run Code Online (Sandbox Code Playgroud)

在具有管理员权限的 Sublime 等编辑器中打开 known_hosts 文件,在 Programs/Git/.ssh/known_hosts 中删除服务器的相应条目,新的密钥指纹将在下一次连接时添加。

  • 我在“C:\Program Files\Git”中没有该“ssh”目录。这个答案也许已经过时了? (2认同)