win11安装配置Gpg4win,使putty、openssh、git支持yubikey 5 nfc
说明
win11上安装Gpg4win、openssh、git,用yubikey 5 nfc实现ssh免密登陆,git签名。
所需软件
配置
修改C:\Users\当前用户名\AppData\Roaming\gnupg
目录下面gpg-agent.conf
文件,没有就创建,添加以下内容,换行符LF:
enable-ssh-support
enable-putty-support
enable-win32-openssh-support
use-standard-socket
default-cache-ttl 600
max-cache-ttl 7200
重启gpg-agent:
gpg-connect-agent killagent /bye
gpg-connect-agent /bye
测试
openssh登陆


putty登陆

git登陆

执行git clone等命令提示“Permission denied (publickey)”解决办法
常见原因:
此错误通常发生在 Git 无法使用远程存储库验证SSH 密钥时,通常是由于 SSH 密钥的配置问题或系统上的 OpenSSH 可执行文件冲突造成的。
故障排除步骤:
检查 SSH 密钥设置:
确保SSH 密钥已正确设置并添加到 SSH 代理。可以运行以下命令来验证:
1
ssh -vT git@github.com
此命令将提供详细的调试输出。
验证 Git 配置:
如果使用的是 Windows,则问题可能是由于 Git 使用的 OpenSSH 版本与SSH 代理使用的版本不同。默认情况下,Windows 可能使用其内置的 OpenSSH,而 Windows 版 Git 可能使用其自己的版本。通过配置 Git 以使用正确的 OpenSSH 可执行文件来解决此问题:
1
git config --global core.sshCommand "C:\\Windows\\System32\\OpenSSH\\ssh.exe"
修改 Git 配置文件(~/.gitconfig):
或者,可以将以下内容添加到 .gitconfig 文件中:
1
2[core]
sshCommand = 'C:\\Windows\\System32\\OpenSSH\\ssh.exe'重新启动 SSH 代理:
如果使用 SSH 代理,确保它正在运行并且已添加密钥:
1
ssh-add -l
如果没有列出密钥,添加密钥:
1
ssh-add ~/.ssh/id_rsa
检查存储库访问:
确保拥有要访问的存储库的必要权限。