WSL и ssh-agent

2018.02.26

В WSL не очень удобно работает SSH-агент. Решается это весьма просто.

В ~/.bashrc или ~/.bash_profile (смотря что у вас используется) добавляем следующее

# ssh-agent configuration
if [ -z "$(pgrep ssh-agent)" ]; then
rm -rf /tmp/ssh-*
eval $(ssh-agent -s) > /dev/null
else
export SSH_AGENT_PID=$(pgrep ssh-agent)
export SSH_AUTH_SOCK=$(find /tmp/ssh-* -name agent.*)
fi

if [ "$(ssh-add -l)" == "The agent has no identities." ]; then
ssh-add
fi

При открытии терминала будет запрашиваться пароль от закрытой части ключа и добавляться в агент.