Skip to content

Instantly share code, notes, and snippets.

@centur
Forked from h4de5/wsl-ssh-pageant.md
Created September 28, 2020 06:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save centur/0e7aee30336f8c39f8133f52e0ec8929 to your computer and use it in GitHub Desktop.
Save centur/0e7aee30336f8c39f8133f52e0ec8929 to your computer and use it in GitHub Desktop.
Use putty's SSH key agent (pageant) from windows in WSL bash - no more "ssh-add" needed

prepare on windows cmd

see: https://github.com/benpye/wsl-ssh-pageant

mkdir workspace
cd workspace
git clone git@github.com:benpye/wsl-ssh-pageant.git
cd wsl-ssh-pageant
C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /out:wsl-ssh-pageant.exe Program.cs

prepare bash on wsl

sudo apt install socat

add to .bashrc

vi ~/.bashrc
if [ -f $HOME/wsl-ssh-pageant.sh ]; then
   . $HOME/wsl-ssh-pageant.sh
fi

create wsl-ssh-pageant.sh file

vi ~/wsl-ssh-pageant.sh
#!/bin/bash
# set home directory:
win_user_dir=$USER
# check if wsl-ssh-pageant is already running
pgrep -l wsl-ssh-pageant
if [ $? != 0 ] ; then
        /mnt/c/Users/$win_user_dir/workspace/wsl-ssh-pageant/wsl-ssh-pageant.exe &
fi
socat UNIX-LISTEN:/tmp/wsl-ssh-pageant.socket,unlink-close,unlink-early,fork TCP4:127.0.0.1:13000 &
export SSH_AUTH_SOCK=/tmp/wsl-ssh-pageant.socket
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment