Update: I’ve since revised these instructions in this post.
This is fairly basic, but you never know what might be useful to somebody!
Due to the fact that WSL doesn’t bootstrap itself with a normal init/systemd process it can be a bit frustrating to work with SSH keys.
Thankfully the ssh-agent
command is designed to set up an environment for key management without much hassle. The trivial method of doing this is to insert the following command into your ~/.bashrc
or ~/.profile
script:
# start ssh-agent eval `ssh-agent`
This will initialize a socket to manage your keys and you can then use the ssh-add
command as you would on a normal Linux system.
For completeness, stick the following in your ~/.bash_logout
script:
# unset ssh-agent ssh-agent -k
This will remove the socket and unset the environment so that your keys don’t remain loaded after you close your WSL session using exit
or CTRL-D
.