Bug 42132 - Не получается подключится по ssh по ключу.
Summary: Не получается подключится по ssh по ключу.
Status: CLOSED NOTABUG
Alias: None
Product: Альт Рабочая станция K
Classification: Distributions
Component: Ошибки работы (show other bugs)
Version: 9.1.1
Hardware: x86_64 Linux
: P5 normal
Assignee: Gleb F-Malinovskiy
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-15 10:25 MSK by zarechnev.r
Modified: 2022-03-17 10:42 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description zarechnev.r 2022-03-15 10:25:44 MSK
[ruslan@ruslan-lin-pc autopackage]$ ssh-copy-id localhost
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
ruslan@localhost's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'localhost'"
and check to make sure that only the key(s) you wanted were added.

[ruslan@ruslan-lin-pc autopackage]$ ssh localhost
ssh: sign_and_send_pubkey: signing failed: agent refused operation
ruslan@localhost's password: 

========================
[ruslan@ruslan-lin-pc autopackage]$ ps -eF | grep ssh
root        2663       1  0  2269  5580  11 14:05 ?        00:00:00 /usr/sbin/sshd -D
ruslan      3547       1  0  1462  2580   1 14:05 ?        00:00:00 ssh-agent
ruslan      7079    4932  0  1499  2236   0 14:21 pts/2    00:00:00 grep ssh
[ruslan@ruslan-lin-pc autopackage]$
Comment 1 zarechnev.r 2022-03-15 10:28:17 MSK
Пробовал и удалять и оставлять параметр -u - результат одинаковый:

[ruslan@ruslan-lin-pc ~]$ ssh localhost
ssh: sign_and_send_pubkey: signing failed: agent refused operation
ruslan@localhost's password: 

[ruslan@ruslan-lin-pc ~]$ ps -eF | grep ssh
root        2667       1  0  2269  5184  11 14:26 ?        00:00:00 /usr/sbin/sshd -D
ruslan      3555       1  0  1481  2556   7 14:26 ?        00:00:00 ssh-agent -u
ruslan      4635    4582  0  1499  2144  11 14:27 pts/1    00:00:00 grep ssh
[ruslan@ruslan-lin-pc ~]$
Comment 2 zarechnev.r 2022-03-15 10:37:17 MSK
Если убить процесс ssh-agent то подключение по ключу проходит

[ruslan@ruslan-lin-pc ~]$ ssh localhost
ssh: sign_and_send_pubkey: signing failed: agent refused operation
ruslan@localhost's password: 

[ruslan@ruslan-lin-pc ~]$ ps -eF | grep ssh
root        2667       1  0  2269  5184  11 14:26 ?        00:00:00 /usr/sbin/sshd -D
ruslan      3555       1  0  1481  2556   7 14:26 ?        00:00:00 ssh-agent -u
ruslan      4635    4582  0  1499  2144  11 14:27 pts/1    00:00:00 grep ssh
[ruslan@ruslan-lin-pc ~]$ kill 3555
[ruslan@ruslan-lin-pc ~]$ ssh localhost
Last login: Tue Mar 15 14:24:47 2022 from 127.0.0.1
[ruslan@ruslan-lin-pc ~]$ выход
Connection to localhost closed.
[ruslan@ruslan-lin-pc ~]$


Для постоянного решения удалил файл /etc/X11/profile.d/ssh-agent.sh

[root@ruslan-lin-pc ~]# cat /etc/X11/profile.d/
ssh-agent.sh      xdg-user-dirs.sh  
[root@ruslan-lin-pc ~]# cat /etc/X11/profile.d/ssh-agent.sh 
#!/bin/sh

[ -n "$SSH_AUTH_SOCK" ] ||
        eval `ssh-agent -u 2>/dev/null`
[root@ruslan-lin-pc ~]# rm /etc/X11/profile.d/ssh-agent.sh
rm: удалить обычный файл '/etc/X11/profile.d/ssh-agent.sh'? y
[root@ruslan-lin-pc ~]#
Comment 3 Gleb F-Malinovskiy 2022-03-15 13:35:10 MSK
(In reply to zarechnev.r from comment #0)
> ssh: sign_and_send_pubkey: signing failed: agent refused operation

Это обычно значит, что у вас:
1. беспарольный ssh-ключ;
2. этот беспарольный ssh-ключ загружен в ssh-agent с опцией -c, т.е. ssh-agent должен запрашивать подтверждение при каждом использовании ssh-ключа (обычно это происходит через ~/.xprofile);
3. у вас не установлена ни одна реализация ssh-askpass, их в репозитории как минимум три штуки.

Я считаю, что это local misconfiguration.
Comment 4 Gleb F-Malinovskiy 2022-03-15 13:37:10 MSK
(In reply to Gleb F-Malinovskiy from comment #3)
> (обычно это происходит через ~/.xprofile);

Я имею в виду, что загрузка ключа в ssh-agent с помощью команды ssh-add -c происходит в том числе в этом скрипте.
Comment 5 zarechnev.r 2022-03-15 13:40:02 MSK
(Ответ для Gleb F-Malinovskiy на комментарий #4)
> (In reply to Gleb F-Malinovskiy from comment #3)
> > (обычно это происходит через ~/.xprofile);
> 
> Я имею в виду, что загрузка ключа в ssh-agent с помощью команды ssh-add -c
> происходит в том числе в этом скрипте.

я, если, честно, не понимаю вот чего:

почему я, после установки системы, должен тратить время и вяснять что мне нужно ещё сделать что бы заработало ожидаемо? ник одном дистре я такого поведения не встречал!

и из ваших комментов мне по прежнему не понятно, что конкретно требуется сделать что бы очередное обновление пакетов не принесло мне проблем?
Comment 6 zarechnev.r 2022-03-15 13:45:35 MSK
(Ответ для Gleb F-Malinovskiy на комментарий #4)
> (In reply to Gleb F-Malinovskiy from comment #3)
> > (обычно это происходит через ~/.xprofile);
> 
> Я имею в виду, что загрузка ключа в ssh-agent с помощью команды ssh-add -c
> происходит в том числе в этом скрипте.

в том-то то и дело, что очевидно, не происходит! :)
Comment 7 Gleb F-Malinovskiy 2022-03-15 13:51:42 MSK
(In reply to zarechnev.r from comment #5)
> я, если, честно, не понимаю вот чего:

Справедливо не понимаете, но багу стоит повесить на тот дистрибутив, в котором возникла проблема.

> и из ваших комментов мне по прежнему не понятно, что конкретно требуется
> сделать что бы очередное обновление пакетов не принесло мне проблем?

А эта проблема возникла в результате именно обновления?

Я вижу два решения для вас прямо сейчас:
1. не загружать ключ в ssh-agent в режиме ssh-add -c;
2. установить ssh-askpass, на выбор из провайдеров:
Package /usr/lib/openssh/ssh-askpass is a virtual package provided by:
  x11-ssh-askpass 1:1.2.4.1-alt5:sisyphus+278100.7500.1.1@1626060657
  plasma5-ksshaskpass 1:5.23.5-alt1:sisyphus+293231.2100.2.2@1641916940
  gtk2-ssh-askpass 5.4p1-alt1:sisyphus+278100.2000.1.1@1626058462
Comment 8 zarechnev.r 2022-03-15 14:12:27 MSK
после установки из коробки отсутствуют askpass.

установка осуществлялась из alt-kworkstation-10.0-RC2_20220302-install-x86_64.iso
Comment 9 Sergey V Turchin 2022-03-15 14:19:55 MSK
> alt-kworkstation-10.0-RC2_20220302-install-x86_64.iso
При установке случайно не поснимали все подряд галки с устанавливаемого софта?
Comment 10 zarechnev.r 2022-03-15 14:23:01 MSK
(Ответ для Sergey V Turchin на комментарий #9)
> > alt-kworkstation-10.0-RC2_20220302-install-x86_64.iso
> При установке случайно не поснимали все подряд галки с устанавливаемого
> софта?

точно уже не скажу, но вроде бы все галки проставил как раз.
Comment 11 Sergey V Turchin 2022-03-15 14:27:36 MSK
Этого не может быть. Единственный вариант, при котором может быть не установлен plasma5-ksshaskpass это снятая галка напротив Plasma в установщике.
Comment 12 zarechnev.r 2022-03-15 14:32:22 MSK
(Ответ для Sergey V Turchin на комментарий #11)
> Этого не может быть. Единственный вариант, при котором может быть не
> установлен plasma5-ksshaskpass это снятая галка напротив Plasma в
> установщике.

возможно, при случае, перепроверю.

далее...

при поытке поставить галку "сохранить пароль", если пароль пустой для ssh-ключа, то происходит запрос пароля каждый раз, это же не удобно)
Comment 13 zarechnev.r 2022-03-16 20:04:40 MSK
установил систему с нуля в виртуалке. описаное поведение не воспроизвелось!

есть тонкости дистрибутива, очевидно, к ним нужно привыкнуть. Спасибо!
Comment 14 Sergey V Turchin 2022-03-17 09:48:10 MSK
(In reply to zarechnev.r from comment #13)
> есть тонкости дистрибутива
Тонкость простая: не снимать галку с пункта "рекомендуется", если не знаешь о последствиях. :-)
Comment 15 zarechnev.r 2022-03-17 10:42:33 MSK
(Ответ для Sergey V Turchin на комментарий #14)
> (In reply to zarechnev.r from comment #13)
> > есть тонкости дистрибутива
> Тонкость простая: не снимать галку с пункта "рекомендуется", если не знаешь
> о последствиях. :-)

о каком именно месте с пунктом "рекомендуется" вы говорите?