Windows 11环境下ssh-agent无法记住私钥密码短语的问题求助
Windows 11环境下ssh-agent无法记住私钥密码短语的问题求助
我最近碰到个棘手的问题:正在运行的ssh-agent完全记不住我的私钥密码短语,每次打开SSH会话都得重新输入密码,试了好多次都没解决,实在摸不着头脑,希望各位能帮我看看哪里出问题了。
先说说我的环境:
- 操作系统:Microsoft Windows 11 Pro,版本10.0.22621 Build 22621
- SSH版本:OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3
我的.ssh目录里有密钥文件和配置文件,所有文件的所有者和权限都是正确的,目录内容如下:
PS C:\Users\lmole\.ssh> ls ~/.ssh Directory: C:\Users\lmole\.ssh Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 28-3-2023 08:36 1631 config -a---- 24-2-2022 13:01 1743 id_rsa -a---- 27-3-2023 08:22 3457 known_hosts -a---- 24-2-2022 13:20 1743 openssh1.key -a---- 24-2-2022 13:01 1743 openssh2.key
我在~/.ssh/config里专门配置了让agent记住密码,针对NAS的配置片段是这样的:
# Personal key for NAS Host nas HostName 192.168.0.150 Port 22 User lucas PreferredAuthentications publickey IdentityFile C:\Users\lmole\.ssh\openssh2.key AddKeysToAgent yes IdentitiesOnly yes
而且我确认ssh-agent已经加载了我的密钥,执行ssh-add -l的输出如下:
PS G:> ssh-add -l 2048 SHA256:xxxxxjwUDVgN6hWv6G0D00MmMOjww C:\Users\lmole\.ssh\openssh1.key (RSA) 2048 SHA256:xxxxxBSIujD4VAVGICODc1yfMv5cFtdQ/w C:\Users\lmole\.ssh\openssh2.key (RSA)
但每次连接NAS的时候,还是会弹出密码输入提示,我用ssh -v nas看了调试日志,关键部分是这样的:
PS C:\Users\lmole\.ssh> ssh -v nas OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3 debug1: Reading configuration data C:\\Users\\lmole/.ssh/config debug1: C:\\Users\\lmole/.ssh/config line 1: Applying options for * debug1: C:\\Users\\lmole/.ssh/config line 35: Applying options for nas ... debug1: Next authentication method: publickey debug1: Trying private key: C:\\Users\\lmole\\.ssh\\openssh2.key Enter passphrase for key 'C:\Users\lmole\.ssh\openssh2.key':
输入密码之后,日志显示密钥确实被添加到了agent里:
debug1: identity added to agent: C:\\Users\\lmole\\.ssh\\openssh2.key debug1: Authentication succeeded (publickey).
我每次都是按照这个流程操作,但密码就是没法被持久保存下来,下次打开会话还是要重新输入。有没有人能帮我看看,到底是哪里被我忽略了?
备注:内容来源于stack exchange,提问作者straumli
相关产品推荐
相关产品推荐

