buptczq / WinCryptSSHAgent

Using a Yubikey for SSH Authentication on Windows Seamlessly
Apache License 2.0
532 stars 66 forks source link

No /tmp/wincrypt-hv.sock file found within WSL2 distro #46

Closed tecandrew closed 3 years ago

tecandrew commented 3 years ago

Overview

I'm using a somewhat fresh install of Windows 10 + WSL Ubuntu 20.04 (installed from the Windows App Store). The WinCryptSSHAgent worked perfectly using the WSL(1) version, not so much when using the WSL2 version.

Upon some light investigation, I noticed that the instructions attempts to point SSH_AUTH_SOCK to a file within /tmp/wincrypt-hv.sock, which is nonexistent even when rebooting the PC.

I'm not on the Windows-Insiders version, so I upgraded the distro to WSL2 manually and followed the new instructions showed on WinCryptSSHAgent: WSL2 / Linux on Hyper-V Settings only to find that something broke.

To Recreate

  1. Install WinCryptSSHAgent via Chocolatey
  2. Install "Ubuntu 20.04" (not "Ubuntu") from App Store
  3. Check wsl version on powershell wsl -l -v
  4. Follow WinCryptSSHAgent WSL(1) instructions
  5. Check keys with ssh-add -l
  6. Upgrade to wsl2 using the instructions here
  7. Follow new WinCryptSSHAgent instructions
  8. Check keys with ssh-add -l
tecandrew commented 3 years ago

Found the culprit: Ubuntu didn't ship with socat by default so the file never got created, and it never seemed to complain because the output was fed into /dev/null

Solution

sudo apt install socat

ksteckert commented 2 years ago

I created PR #68 to add a step to the WSL instructions regarding socat.