Используйте gnome-keyring в качестве агента ssh вместо openssh

Я хочу использовать gnome-keyring в KDE, чтобы обеспечить доступ к паролям ssh. Он разблокирован должным образом при входе в систему, и сокет агента ssh там. Моя проблема в том, что openSSH ssh-agent это тени Видимо сеанс KDE начинается с 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

Затем в сеансе KDE,

SSH_AUTH_SOCK=/tmp/ssh-Jv2eneUNSlQ6/agent.3739;

ssh-agent пуст, и мне предлагается ввести пароль. Кстати, ssh-сокет gnome-keyring тоже активен

$ 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 

Я могу вручную переключить розетку

export SSH_AUTH_SOCK=`ss -xl | grep -o '/run/user/1000/keyring/ssh'`

и доступ к ключу ssh без пароля работает в этой оболочке. Как мне добиться этого для всего сеанса KDE при запуске? Есть несколько вопросов о том, как добиться противоположного; т.е. предотвратить gnome-keyring от перезаписи ssh-агента. Для меня это, к сожалению, не перезаписать SSH_AUTH_SOCK, Возможно, если бы я мог избежать запуска KDE ssh-agentвсе будет хорошо, но я не знаю, в какой момент процесса запуска эта команда

/usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch /usr/bin/startkde

выполняется

1 ответ

Я действительно не нашел решения, у других был тот же вопрос на форуме KDE, но простой обходной путь - установить агент ssh в .profile

export SSH_AUTH_SOCK=`ss -xl | grep -o '/run/user/1000/keyring/ssh'`

это не перезаписывается остальными процедурами запуска и, по крайней мере, правильно устанавливает его в оболочке (запуска). В остальной оконной системе, к сожалению, это все еще другой ssh-агент.

Другие вопросы по тегам