Используйте 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-агент.