Para criar um serviço systemd ssh-agent, você precisa criar um arquivo em ~/.config/systemd/user/ssh-agent.service
porque ssh-agent é usuário isolado.
[Unit]
Description=SSH key agent
[Service]
Type=simple
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
ExecStart=/usr/bin/ssh-agent -D -a $SSH_AUTH_SOCK
[Install]
WantedBy=default.target
Adicione SSH_AUTH_SOCK DEFAULT="${XDG_RUNTIME_DIR}/ssh-agent.socket"
a ~/.pam_environment
.
Por fim, ative e inicie este serviço.
systemctl --user enable ssh-agent
systemctl --user start ssh-agent
E, se você estiver usando uma versão ssh maior que 7.2. echo 'AddKeysToAgent yes' >> ~/.ssh/config
Isso instruirá o cliente ssh a sempre adicionar a chave a um agente em execução, portanto, não há necessidade de adicioná-lo de antemão.