Bug 40984

Summary: Не копируются ключи ssh на сервер
Product: Sisyphus Reporter: Elena Mishina <lepata>
Component: seahorseAssignee: Yuri N. Sedunov <aris>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: aris
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Elena Mishina 2021-09-22 13:16:28 MSK
seahorse-40.0-alt1.x86_64. Дистрибутив: Альт Рабочая станция 9.2 обновленная до p10 (до обновления поведение такое же).

В контекстном меню ключа выбрать пункт «Configure key for secure shell», указать адрес сервера и пользователя, нажать кнопку «Установить».
Далее возможны три варианта развития события:

1) Запрашивается пароль для доступа на сервер. Ввести пароль.  Ключ на сервер не добавляется. Программа продолжает работать. Если seahorse была запущена из консоли, там появляется ошибка:

(seahorse:3978): seahorse-CRITICAL **: 11:46:36.241: seahorse_ssh_operation_on_io_ssh_write: assertion 'self != NULL' failed 

В логах на сервере:

сен 22 11:16:20 host-s.test.alt sshd[5301]: pam_tcb(sshd:session): Session opened for user by (uid=0)
сен 22 11:16:20 host-s.test.alt kernel: audit: type=1103 audit(1632302180.048:225): pid=5301 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:setcred grantors=pam_userpass,pam_tcb acct="user" exe="/usr/sbin/sshd" hostname=192.168.0.104 addr=192.168.0.104 terminal=ssh res=success'
сен 22 11:16:20 host-s.test.alt kernel: audit: type=1006 audit(1632302180.048:226): pid=5301 uid=0 old-auid=4294967295 auid=500 tty=(none) old-ses=4294967295 ses=16 res=1
сен 22 11:16:20 host-s.test.alt systemd-logind[2587]: [🡕] New session 16 of user user.
сен 22 11:16:20 host-s.test.alt systemd[1]: Started Session 16 of user user.
сен 22 11:16:20 host-s.test.alt audit[5301]: USER_START pid=5301 uid=0 auid=500 ses=16 msg='op=PAM:session_open grantors=pam_tcb,pam_mktemp,pam_limits,pam_loginuid,pam_systemd,pam_mkhomedir acct="user" exe="/usr/sbin/sshd" hostname=192.168.0.104 addr=192.168.0.104 terminal=ssh res=success'
сен 22 11:16:20 host-s.test.alt kernel: audit: type=1105 audit(1632302180.087:227): pid=5301 uid=0 auid=500 ses=16 msg='op=PAM:session_open grantors=pam_tcb,pam_mktemp,pam_limits,pam_loginuid,pam_systemd,pam_mkhomedir acct="user" exe="/usr/sbin/sshd" hostname=192.168.0.104 addr=192.168.0.104 terminal=ssh res=success'
сен 22 11:16:20 host-s.test.alt audit[5306]: CRED_ACQ pid=5306 uid=0 auid=500 ses=16 msg='op=PAM:setcred grantors=pam_userpass,pam_tcb acct="user" exe="/usr/sbin/sshd" hostname=192.168.0.104 addr=192.168.0.104 terminal=ssh res=success'
сен 22 11:16:20 host-s.test.alt sshd[5306]: Received disconnect from 192.168.0.104 port 34712:11: disconnected by user


2) Программа падает с ошибкой сегментирования. При этом окно запроса пароля остается на экране. В логах:

сен 22 10:03:06 host-104 audit[3579]: ANOM_ABEND auid=500 uid=500 gid=500 ses=4 pid=3579 comm="seahorse" exe="/usr/bin/seahorse" sig=11 res=1
сен 22 10:03:06 host-104 kernel: traps: seahorse[3579] general protection fault ip:7f2769753961 sp:7fffd7efcce8 error:0 in libc-2.32.so[7f27696d1000+14c000]
сен 22 10:03:06 host-104 kernel: audit: type=1701 audit(1632297786.491:118): auid=500 uid=500 gid=500 ses=4 pid=3579 comm="seahorse" exe="/usr/bin/seahorse" sig=11 res


3) Запрашивается пароль для доступа на сервер. После ввода пароля программа "виснет". Если seahorse была запущена из консоли, там бесконечно(?) появляются ошибки:

(seahorse:4827): GLib-CRITICAL **: 11:24:55.038: g_string_erase: assertion 'pos_unsigned + len_unsigned <= string->len' fail

На сервере в файле .ssh/authorized_keys появляется ключ, но выглядит так:

$ less .ssh/authorized_keys
00000000  23 20 4f 70 65 6e 53 53  48 20 61 75 74 68 6f 72  |# OpenSSH author|
00000010  69 7a 65 64 5f 6b 65 79  73 20 66 69 6c 65 20 66  |ized_keys file f|
00000020  6f 72 6d 61 74 20 69 73  20 64 65 73 63 72 69 62  |ormat is describ|
00000030  65 64 20 69 6e 20 73 73  68 64 28 38 29 20 6d 61  |ed in sshd(8) ma|
00000040  6e 75 61 6c 20 70 61 67  65 2e 0a d0 f3 0e 02 d0  |nual page.......|
00000050  f3 0e 02 d0 f3 0e 02 d0  f3 0e 02 d0 f3 0e 02 d0  |................|
*
00166320  f3 0e 02 d0 f3 0e 02 d0  f3 0e 02                 |...........|
0016632b

или

$ less .ssh/authorized_keys
00000000  40 9a 6a 37 a5 7f 40 9a  6a 37 a5 7f 40 9a 6a 37  |@.j7..@.j7..@.j7|
00000010  a5 7f 40 9a 6a 37 a5 7f  40 9a 6a 37 a5 7f 40 9a  |..@.j7..@.j7..@.|
00000020  6a 37 a5 7f 40 9a 6a 37  a5 7f 40 9a 6a 37 a5 7f  |j7..@.j7..@.j7..|
00000030  40 9a 6a 37 a5 7f 40 9a  6a 37 a5 7f 40 9a 6a 37  |@.j7..@.j7..@.j7|
00000040  a5 7f 40 9a 6a 37 a5 7f  40 9a 6a 37 a5 7f 40 9a  |..@.j7..@.j7..@.|
00000050  6a 37 a5 7f 40 9a 6a 37  a5 7f 40 9a 6a 37 a5 7f  |j7..@.j7..@.j7..|
00000060  40 9a 6a 37 a5 7f 40 9a  6a 37 a5 7f 40 9a 6a 37  |@.j7..@.j7..@.j7|
*


Тут зарегистрирована такая же ошибка:
https://gitlab.gnome.org/GNOME/seahorse/-/issues/303