Outils pour utilisateurs

Outils du site


kb:linux:generalites:configurer_ssh-agent_au_lancement_de_la_session

Configurer ssh-agent au lancement de la session

Pour lancer ssh-agent au lancement de la session, on va créer un service systemd pour l'utilisateur :

~/.config/systemd/user/ssh-agent.service
[Unit]
Description=SSH key agent
 
[Service]
Type=forking
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK
# Workaround to prevent gnome-keyring to force apps to use their ssh-agent
ExecStartPost=/usr/bin/bash -c "/usr/bin/systemctl --user set-environment SSH_AUTH_SOCK=$SSH_AUTH_SOCK GSM_SKIP_SSH_AGENT_WORKAROUND=1"
 
[Install]
WantedBy=default.target

Ensuite l'active et le démarre :

# systemctl --user enable --now ssh-agent

Il faudra ajouter la variable d’environnement au lancement du terminal, en ajoutant la ligne suivante dans le fichier ~/.bashrc :

~/.bashrc
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"

et pour finir, vous aurez juste a ajouter la ligne suivante au fichier ~/.ssh/config :

~/.ssh/config
AddKeysToAgent  yes

Et a la prochaine connexion a votre session, le mot de passe de votre clé SSH qu'une seule fois, lors de la première connexion SSH, et sera conservée jusqu'à ce que vous vous déconnectiez.

kb/linux/generalites/configurer_ssh-agent_au_lancement_de_la_session.txt · Dernière modification : 2023/08/10 10:52 de beu