我使用Yubikey存儲GPG密鑰對,我也喜歡將此密鑰對作為我的SSH鍵。 Windows上的GPG公開了選美風格的SSH代理,我想要一種在WSL中使用此鍵的方法。我已經對此進行了重寫,因為這意味著該版本是一個簡單的二進製文件,我喜歡Go。
在Windows側開始選美比賽(或兼容的代理,例如GPG4WIN)。
運行wsl-ssh-pageant.exe --wsl C:wsl-ssh-pageantssh-agent.sock (或任何其他路徑,最大〜100個字符)
在WSL中導出SSH_AUTH_SOCK環境變量,例如指向插座,例如,如果您在C:wsl-ssh-pageant中有ssh-agent.sock
$ export SSH_AUTH_SOCK=/mnt/c/wsl-ssh-pageant/ssh-agent.sock
ssh使用在Windows側開始選美比賽(或兼容的代理,例如GPG4WIN)。
運行wsl-ssh-pageant.exe --winssh ssh-pageant (或任何其他名稱)
在cmd中,導出SSH_AUTH_SOCK環境變量或在Windows上的環境變量中定義它。例如,使用您給管道的名稱,例如:
$ set SSH_AUTH_SOCK=\.pipessh-pageant
cmd.exe中的ssh 要在systray運行wsl-ssh-pageant.exe --systray --winssh ssh-pageant (或使用--wsl )中添加圖標。
您可以同時同時使用--winssh和--wsl參數,同時使用相同的過程來代理兩者
在版本頁面上獲取最新版本。
對於WSL支持,您將需要1.12或更高版本。 GO 1.12添加了對Windows上AF_UNIX插座的支持。
創建資產。運行:
go generate
在沒有控制台窗口的情況下創建構建:
go build -ldflags -H=windowsgui
您需要Windows 10 1803或更高版本才能獲得WSL支持,因為它是支持AF_UNIX插座的第一個版本。您仍然可以在早期構建上與本機Windows SSH客戶端一起使用它。
GUI.EXE二進制和常規二進製文件之間的差異是PE標頭中設置的子系統。 GUI.EXE二進製文件設置為Win32子系統,因此它不會產生命令行,從而可以在啟動上啟動它。常規二進製文件具有控制台子系統,因此如果雙擊雙擊,它確實會啟動命令行,並會按預期阻止命令行。注意:您可以啟動帶有-systray標誌的二進製文件以在工具運行時具有SYSTRAY圖標,這僅提供了一種退出應用程序的方法。
請打開一個問題,我確實盡力保持他們的頂部,保證。
AF_UNIX插座之前在WSL和Linux之間創建流。