Eu quero usar gnome-keyring
no KDE para fornecer acesso a senhas ssh. Ele está desbloqueado corretamente no login e o soquete do agente ssh está lá. Meu problema é que o openSSH ssh-agent
faz sombras disso. Aparentemente, a sessão do KDE é iniciada com ssh-agent
$ ps aux | grep ssh-agent
beaujean 2029 0.0 0.0 11140 316 ? Ss 11:22 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch /usr/bin/startkde
Então, na sessão do kde,
SSH_AUTH_SOCK=/tmp/ssh-Jv2eneUNSlQ6/agent.3739;
o ssh-agent está vazio, e eu sou solicitado pela minha senha. Aliás, o socket ssh do gnome-keyring também está ativo
$ ss -xl | grep ssh
u_str LISTEN 0 128 /run/user/1000/keyring/ssh 25108 * 0
u_str LISTEN 0 128 /tmp/ssh-Jv2eneUNSlQ6/agent.3739 36471 * 0
Eu posso trocar manualmente o soquete
export SSH_AUTH_SOCK='ss -xl | grep -o '/run/user/1000/keyring/ssh''
e o acesso à chave ssh sem senha funciona neste shell. Como obtenho isto para toda a sessão do KDE ao iniciar? Existem várias questões sobre como alcançar o oposto; isto é, evite gnome-keyring
sobrescrever o agente ssh. Para mim, infelizmente, não sobrescreve SSH_AUTH_SOCK
. Talvez se eu pudesse evitar que o kde fosse iniciado por ssh-agent
, as coisas ficariam bem, mas eu não sei em que ponto do processo de start-up este comando
/usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch /usr/bin/startkde
é executado