PS: Ces instructions sont dans le contexte d'un shell Bash ouvert dans le sous-système Linux de Windows 10 et ne mentionnent pas la liaison symbolique des clés SSH générées sous Windows avec Bash sur Ubuntu sous Windows
1) Mettez à jour votre .bashrc en y ajoutant les éléments suivants
# Set up ssh-agent
SSH_ENV="$HOME/.ssh/environment"
function start_agent {
echo "Initializing new SSH agent..."
touch $SSH_ENV
chmod 600 "${SSH_ENV}"
/usr/bin/ssh-agent | sed 's/^echo/#echo/' >> "${SSH_ENV}"
. "${SSH_ENV}" > /dev/null
/usr/bin/ssh-add
}
# Source SSH settings, if applicable
if [ -f "${SSH_ENV}" ]; then
. "${SSH_ENV}" > /dev/null
kill -0 $SSH_AGENT_PID 2>/dev/null || {
start_agent
}
else
start_agent
fi
2) Exécutez ensuite $ source ~/.bashrc
pour recharger votre configuration.
Les étapes ci-dessus ont été prises à partir de https://github.com/abergs/ubuntuonwindows#2-start-an-bash-ssh-agent-on-launch
3) Créez un fichier de configuration SSH, s'il n'est pas présent. Utilisez la commande suivante pour en créer un nouveau:.ssh$ touch config
4) Ajouter ce qui suit à ~/.ssh/config
Host github.com-<YOUR_GITHUB_USERNAME>
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_work_gmail # path to your private key
AddKeysToAgent yes
Host csexperimental.abc.com
IdentityFile ~/.ssh/id_work_gmail # path to your private key
AddKeysToAgent yes
<More hosts and github configs can be added in similar manner mentioned above>
5) Ajoutez votre clé à l'agent SSH à l'aide de la commande $ ssh-add ~/.ssh/id_work_gmail
et vous devriez pouvoir vous connecter à votre compte github ou à votre hôte distant en utilisant ssh. Par exemple, dans le contexte des exemples de code ci-dessus:
$ ssh github.com-<YOUR_GITHUB_USERNAME>
ou
$ ssh <USER>@csexperimental.abc.com
Cet ajout de clé à l'agent SSH ne doit être effectué qu'une seule fois.
6) Déconnectez-vous maintenant de votre session Bash sur le sous-système Windows Linux, c'est-à-dire quittez à nouveau toutes les consoles Bash et redémarrez une nouvelle console et essayez de SSH sur votre hôte Github ou un autre hôte comme configuré dans le fichier de configuration SSH et cela devrait fonctionner sans avoir besoin de plus pas.
Remarque:
Merci.
/my/ssh/location/
equalivent à quelque chose comme/c/Users/Foobar/.ssh/
?