Невозможно подключиться к серверу по ssh с паролем – метод ssh-соединения отсутствует.

Вопрос или проблема

Я не могу подключиться к серверу A по SSH с любым пользователем, работающим на RHEL 8.4. На прошлой неделе всё работало нормально. В /var/log/secure ничего не отображается, также и в выводе команды systemctl status sshd – файл /etc/ssh/sshd_config настроен на разрешение PasswordAuthentication. Он никогда не запрашивает пароль – в PuTTY соединение закрывается сразу после ввода имени пользователя, а в командной строке просто появляется сообщение “соединение закрыто сервером A”.

При запуске ssh -v root@server я получаю следующий вывод:

OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3
debug1: Authenticator provider $SSH_SK_PROVIDER did not resolve; disabling
debug1: Connecting to serverA [serverA] port 22.
debug1: Connection established.
debug1: identity file C:\Users\userA/.ssh/id_rsa type -1
debug1: identity file C:\Users\userA/.ssh/id_rsa-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_dsa type -1
debug1: identity file C:\Users\userA/.ssh/id_dsa-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_ecdsa type -1
debug1: identity file C:\Users\userA/.ssh/id_ecdsa-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_ecdsa_sk type -1
debug1: identity file C:\Users\userA/.ssh/id_ecdsa_sk-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_ed25519 type -1
debug1: identity file C:\Users\userA/.ssh/id_ed25519-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_ed25519_sk type -1
debug1: identity file C:\Users\userA/.ssh/id_ed25519_sk-cert type -1
debug1: identity file C:\Users\userA/.ssh/id_xmss type -1
debug1: identity file C:\Users\userA/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_for_Windows_8.6
debug1: Remote protocol version 2.0, remote software version OpenSSH_8.0
debug1: compat_banner: match: OpenSSH_8.0 pat OpenSSH* compat 0x04000000
debug1: Authenticating to serverA:22 as 'root'
debug1: load_hostkeys: fopen C:\Users\userA/.ssh/known_hosts2: No such file or directory
debug1: load_hostkeys: fopen __PROGRAMDATA__\ssh/ssh_known_hosts: No such file or directory
debug1: load_hostkeys: fopen __PROGRAMDATA__\ssh/ssh_known_hosts2: No such file or directory
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ssh-ed25519
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: SSH2_MSG_KEX_ECDH_REPLY received
debug1: load_hostkeys: fopen C:\Users\userA/.ssh/known_hosts2: No such file or directory
debug1: load_hostkeys: fopen __PROGRAMDATA__\ssh/ssh_known_hosts: No such file or directory
debug1: load_hostkeys: fopen __PROGRAMDATA__\ssh/ssh_known_hosts2: No such file or directory
debug1: Host 'serverA' is known and matches the ED25519 host key.
debug1: Found key in C:\Users\userA/.ssh/known_hosts:1
debug1: rekey out after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey in after 134217728 blocks
debug1: pubkey_prepare: ssh_get_authentication_socket: No such file or directory
debug1: Will attempt key: C:\Users\userA/.ssh/id_rsa
debug1: Will attempt key: C:\Users\userA/.ssh/id_dsa
debug1: Will attempt key: C:\Users\userA/.ssh/id_ecdsa
debug1: Will attempt key: C:\Users\userA/.ssh/id_ecdsa_sk
debug1: Will attempt key: C:\Users\userA/.ssh/id_ed25519
debug1: Will attempt key: C:\Users\userA/.ssh/id_ed25519_sk
debug1: Will attempt key: C:\Users\userA/.ssh/id_xmss
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521>
debug1: SSH2_MSG_SERVICE_ACCEPT received
Connection closed by serverA port 22

Запускаю sshd -ddd на сервере A, я вижу следующую ошибку:

userauth-request for user root service ssh-connection method none

Полный вывод:

debug2: load_server_config: filename /etc/ssh/sshd_config
debug2: load_server_config: done config len = 734
debug2: parse_server_config_depth: config /etc/ssh/sshd_config len 734
debug3: /etc/ssh/sshd_config:22 setting HostKey /etc/ssh/ssh_host_rsa_key
debug3: /etc/ssh/sshd_config:23 setting HostKey /etc/ssh/ssh_host_ecdsa_key
debug3: /etc/ssh/sshd_config:24 setting HostKey /etc/ssh/ssh_host_ed25519_key
debug3: /etc/ssh/sshd_config:37 setting SyslogFacility AUTHPRIV
debug3: /etc/ssh/sshd_config:43 setting PermitRootLogin yes
debug3: /etc/ssh/sshd_config:52 setting AuthorizedKeysFile .ssh/authorized_keys
debug3: /etc/ssh/sshd_config:70 setting PasswordAuthentication yes
debug3: /etc/ssh/sshd_config:74 setting ChallengeResponseAuthentication no
debug3: /etc/ssh/sshd_config:84 setting GSSAPIAuthentication yes
debug3: /etc/ssh/sshd_config:85 setting GSSAPICleanupCredentials no
debug3: /etc/ssh/sshd_config:101 setting UsePAM yes
debug3: /etc/ssh/sshd_config:106 setting X11Forwarding yes
debug3: /etc/ssh/sshd_config:113 setting PrintMotd no
debug3: /etc/ssh/sshd_config:132 setting AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
debug3: /etc/ssh/sshd_config:133 setting AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
debug3: /etc/ssh/sshd_config:134 setting AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
debug3: /etc/ssh/sshd_config:135 setting AcceptEnv XMODIFIERS
debug3: /etc/ssh/sshd_config:138 setting Subsystem sftp /usr/libexec/openssh/sftp-server
debug1: sshd version OpenSSH_8.0, OpenSSL 1.1.1k  FIPS 25 Mar 2021
debug1: private host key #0: ssh-rsa SHA256:GwaDpWqZk3FQrfNmD4GqWDEcd1zur+dXZsbArmzrcGs
debug1: private host key #1: ecdsa-sha2-nistp256 SHA256:3aAAv+pS/mxSCadlScgN8CD6bclzSfzyZ5re9Cb30h0
debug1: private host key #2: ssh-ed25519 SHA256:7lS8fhUowMoIC8/5DJ0k62I6fzK1eA5PTClqFR0g4HM
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-ddd'
debug1: rexec_argv[2]='-E'
debug1: rexec_argv[3]='/tmp/ssh.log'
debug3: oom_adjust_setup
debug1: Set /proc/self/oom_score_adj from 0 to -1000
debug2: fd 4 setting O_NONBLOCK
debug1: Bind to port 22 on 0.0.0.0.
Server listening on 0.0.0.0 port 22.
debug2: fd 5 setting O_NONBLOCK
debug3: sock_set_v6only: set socket 5 IPV6_V6ONLY
debug1: Bind to port 22 on ::.
Server listening on :: port 22.
debug2: load_server_config: filename /etc/ssh/sshd_config
debug2: load_server_config: done config len = 734
debug2: parse_server_config_depth: config /etc/ssh/sshd_config len 734
debug3: /etc/ssh/sshd_config:22 setting HostKey /etc/ssh/ssh_host_rsa_key
debug3: /etc/ssh/sshd_config:23 setting HostKey /etc/ssh/ssh_host_ecdsa_key
debug3: /etc/ssh/sshd_config:24 setting HostKey /etc/ssh/ssh_host_ed25519_key
debug3: /etc/ssh/sshd_config:37 setting SyslogFacility AUTHPRIV
debug3: /etc/ssh/sshd_config:43 setting PermitRootLogin yes
debug3: /etc/ssh/sshd_config:52 setting AuthorizedKeysFile .ssh/authorized_keys
debug3: /etc/ssh/sshd_config:70 setting PasswordAuthentication yes
debug3: /etc/ssh/sshd_config:74 setting ChallengeResponseAuthentication no
debug3: /etc/ssh/sshd_config:84 setting GSSAPIAuthentication yes
debug3: /etc/ssh/sshd_config:85 setting GSSAPICleanupCredentials no
debug3: /etc/ssh/sshd_config:101 setting UsePAM yes
debug3: /etc/ssh/sshd_config:106 setting X11Forwarding yes
debug3: /etc/ssh/sshd_config:113 setting PrintMotd no
debug3: /etc/ssh/sshd_config:132 setting AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
debug3: /etc/ssh/sshd_config:133 setting AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
debug3: /etc/ssh/sshd_config:134 setting AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
debug3: /etc/ssh/sshd_config:135 setting AcceptEnv XMODIFIERS
debug3: /etc/ssh/sshd_config:138 setting Subsystem sftp    /usr/libexec/openssh/sftp-server
debug1: sshd version OpenSSH_8.0, OpenSSL 1.1.1k  FIPS 25 Mar 2021
debug1: private host key #0: ssh-rsa SHA256:GwaDpWqZk3FQrfNmD4GqWDEcd1zur+dXZsbArmzrcGs
debug1: private host key #1: ecdsa-sha2-nistp256 SHA256:3aAAv+pS/mxSCadlScgN8CD6bclzSfzyZ5re9Cb30h0
debug1: private host key #2: ssh-ed25519 SHA256:7lS8fhUowMoIC8/5DJ0k62I6fzK1eA5PTClqFR0g4HM
debug1: inetd sockets after dupping: 5, 5
Connection from ::1 port 56500 on ::1 port 22
debug1: Local version string SSH-2.0-OpenSSH_8.0
debug1: Remote protocol version 2.0, remote software version OpenSSH_8.0
debug1: match: OpenSSH_8.0 pat OpenSSH* compat 0x04000000
debug2: fd 5 setting O_NONBLOCK
debug3: ssh_sandbox_init: preparing seccomp filter sandbox
debug2: Network child is on pid 8363
debug3: preauth child monitor started
debug1: SELinux support enabled [preauth]
debug1: ssh_selinux_change_context: setting context from 'unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023' to 'unconfined_u:unconfined_r:sshd_net_t:s0-s0:c0.c1023' [preauth]
debug3: ssh_selinux_change_context: setcon unconfined_u:unconfined_r:sshd_net_t:s0-s0:c0.c1023 from unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 failed with Invalid argument [preauth]
debug3: privsep user:group 74:74 [preauth]
debug1: permanently_set_uid: 74/74 [preauth]
debug3: ssh_sandbox_child: setting PR_SET_NO_NEW_PRIVS [preauth]
debug3: ssh_sandbox_child: attaching seccomp filter program [preauth]
debug1: list_hostkey_types: rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519 [preauth]
debug3: send packet: type 20 [preauth]
debug1: SSH2_MSG_KEXINIT sent [preauth]
debug3: receive packet: type 20 [preauth]
debug1: SSH2_MSG_KEXINIT received [preauth]
debug2: local server KEXINIT proposal [preauth]
debug2: KEX algorithms: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1 [preauth]
debug2: host key algorithms: rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519 [preauth]
debug2: ciphers ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected] [preauth]
debug2: ciphers stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected] [preauth]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1 [preauth]
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1 [preauth]
debug2: compression ctos: none,[email protected] [preauth]
debug2: compression stoc: none,[email protected] [preauth]
debug2: languages ctos:  [preauth]
debug2: languages stoc:  [preauth]
debug2: first_kex_follows 0  [preauth]
debug2: reserved 0  [preauth]
debug2: peer client KEXINIT proposal [preauth]
debug2: KEX algorithms: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,ext-info-c [preauth]
debug2: host key algorithms: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa [preauth]
debug2: ciphers ctos: [email protected],[email protected],aes256-ctr,aes256-cbc,[email protected],aes128-ctr,aes128-cbc [preauth]
debug2: ciphers stoc: [email protected],[email protected],aes256-ctr,aes256-cbc,[email protected],aes128-ctr,aes128-cbc [preauth]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha1,[email protected],hmac-sha2-512 [preauth]
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha1,[email protected],hmac-sha2-512 [preauth]
debug2: compression ctos: none,[email protected],zlib [preauth]
debug2: compression stoc: none,[email protected],zlib [preauth]
debug2: languages ctos:  [preauth]
debug2: languages stoc:  [preauth]
debug2: first_kex_follows 0  [preauth]
debug2: reserved 0  [preauth]
debug1: kex: algorithm: curve25519-sha256 [preauth]
debug1: kex: host key algorithm: ecdsa-sha2-nistp256 [preauth]
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none [preauth]
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none [preauth]
debug1: kex: curve25519-sha256 need=32 dh_need=32 [preauth]
debug3: mm_request_send entering: type 120 [preauth]
debug3: mm_request_receive_expect entering: type 121 [preauth]
debug3: mm_request_receive entering [preauth]
debug3: mm_request_receive entering
debug3: monitor_read: checking request 120
debug3: mm_request_send entering: type 121
debug1: kex: curve25519-sha256 need=32 dh_need=32 [preauth]
debug3: mm_request_send entering: type 120 [preauth]
debug3: mm_request_receive_expect entering: type 121 [preauth]
debug3: mm_request_receive entering [preauth]
debug3: mm_request_receive entering
debug3: monitor_read: checking request 120
debug3: mm_request_send entering: type 121
debug1: expecting SSH2_MSG_KEX_ECDH_INIT [preauth]
debug3: receive packet: type 30 [preauth]
debug3: mm_sshkey_sign entering [preauth]
debug3: mm_request_send entering: type 6 [preauth]
debug3: mm_sshkey_sign: waiting for MONITOR_ANS_SIGN [preauth]
debug3: mm_request_receive_expect entering: type 7 [preauth]
debug3: mm_request_receive entering [preauth]
debug3: mm_request_receive entering
debug3: monitor_read: checking request 6
debug3: mm_answer_sign
debug3: mm_answer_sign: hostkey proof signature 0x55639ba6a250(101)
debug3: mm_request_send entering: type 7
debug2: monitor_read: 6 used once, disabling now
debug3: send packet: type 31 [preauth]
debug3: send packet: type 21 [preauth]
debug2: set_newkeys: mode 1 [preauth]
debug1: rekey out after 4294967296 blocks [preauth]
debug1: SSH2_MSG_NEWKEYS sent [preauth]
debug1: expecting SSH2_MSG_NEWKEYS [preauth]
debug3: send packet: type 7 [preauth]
debug3: receive packet: type 21 [preauth]
debug1: SSH2_MSG_NEWKEYS received [preauth]
debug2: set_newkeys: mode 0 [preauth]
debug1: rekey in after 4294967296 blocks [preauth]
debug1: KEX done [preauth]
debug3: receive packet: type 5 [preauth]
debug3: send packet: type 6 [preauth]
debug3: receive packet: type 50 [preauth]
debug1: userauth-request for user root service ssh-connection method none [preauth]
debug1: attempt 0 failures 0 [preauth]
debug3: mm_getpwnamallow entering [preauth]
debug3: mm_request_send entering: type 8 [preauth]
debug3: mm_getpwnamallow: waiting for MONITOR_ANS_PWNAM [preauth]
debug3: mm_request_receive_expect entering: type 9 [preauth]
debug3: mm_request_receive entering [preauth]
debug3: mm_request_receive entering
debug3: monitor_read: checking request 8
debug3: mm_answer_pwnamallow
debug2: parse_server_config_depth: config reprocess config len 734
debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 1
debug3: mm_request_send entering: type 9
debug2: monitor_read: 8 used once, disabling now
debug2: input_userauth_request: setting up authctxt for root [preauth]
debug3: mm_start_pam entering [preauth]
debug3: mm_request_send entering: type 100 [preauth]
debug3: mm_inform_authserv entering [preauth]
debug3: mm_request_send entering: type 4 [preauth]
debug3: mm_inform_authrole entering [preauth]
debug3: mm_request_send entering: type 80 [preauth]
debug2: input_userauth_request: try method none [preauth]
debug3: mm_request_receive entering
debug3: monitor_read: checking request 100
debug1: PAM: initializing for "root"
debug1: PAM: setting PAM_RHOST to "::1"
debug1: PAM: setting PAM_TTY to "ssh"
debug2: monitor_read: 100 used once, disabling now
debug3: user_specific_delay: user specific delay 0.000ms [preauth]
debug3: ensure_minimum_time_since: elapsed 1.235ms, delaying 4.731ms (requested 5.966ms) [preauth]
debug1: monitor_read_log: child log fd closed
debug3: mm_request_receive entering
debug3: monitor_read: checking request 4
debug3: mm_answer_authserv: service=ssh-connection, style=
debug2: monitor_read: 4 used once, disabling now
debug3: mm_request_receive entering
debug3: monitor_read: checking request 80
debug3: mm_answer_authrole: role=
debug2: monitor_read: 80 used once, disabling now
debug3: mm_request_receive entering
debug1: do_cleanup
debug1: PAM: cleanup
debug3: PAM: sshpam_thread_cleanup entering
debug1: Killing privsep child 8363

Интересно, что если я запущу nmap на сервере A, я также вижу это:

Host is up (0.00013s latency).

PORT   STATE SERVICE
22/tcp open  ssh
| ssh-auth-methods:
|_  Supported authentication methods: false

Попытка подключиться по ssh с параметрами PreferredAuthentications=passwrod и PubkeyAuthentication=no приводит к тем же результатам.

Копия /etc/ssh/ssh_config

#   $OpenBSD: ssh_config,v 1.34 2019/02/04 02:39:42 dtucker Exp $

# Это системный файл конфигурации клиента ssh. Смотрите
# ssh_config(5) для дополнительной информации. Этот файл задаёт
# значения по умолчанию для пользователей, и их можно изменить в конфигурационных файлах
# пользователя или в командной строке.

# Данные конфигурации обрабатываются следующим образом:
#  1. параметры командной строки
#  2. файл, специфичный для пользователя
#  3. системный файл
# Любое значение конфигурации изменяется только в первый раз.
# Следовательно, специфичные для хоста определения должны быть в начале
# конфигурационного файла, а значения по умолчанию в конце.

# Системные параметры по умолчанию для некоторых часто используемых опций. Для всеобъемлющего
# списка доступных опций, их значений и значений по умолчанию, пожалуйста, смотрите
# мануал ssh_config(5).

# Host *
#   ForwardAgent no
#   ForwardX11 no
#   PasswordAuthentication yes
#   HostbasedAuthentication no
#   GSSAPIAuthentication no
#   GSSAPIDelegateCredentials no
#   GSSAPIKeyExchange no
#   GSSAPITrustDNS no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa
#   IdentityFile ~/.ssh/id_ed25519
#   Port 22
#   Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
#   MACs hmac-md5,hmac-sha1,[email protected]
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
#   RekeyLimit 1G 1h
#
# Эта система следует системной крипто политике.
# Чтобы изменить системную конфигурацию ssh, создайте *.conf файл в каталоге
#  /etc/ssh/ssh_config.d/, который будет автоматически включен ниже
Include /etc/ssh/ssh_config.d/*.conf

Копия /etc/ssh/sshd_config

#   $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# Это системный файл конфигурации сервера sshd. См. 
# sshd_config(5) для дополнительной информации.

# Этот sshd был скомпилирован с PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

# Стратегия, используемая для параметров в стандартном sshd_config, поставляемом с
# OpenSSH, заключается в том, чтобы задавать параметры с их значениями по умолчанию, где
# это возможно, но оставлять их закомментированными. Комментарии отменяют
# значение по умолчанию.

# Если вы хотите изменить порт на системе SELinux, вам нужно сообщить
# SELinux об этом изменении:
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

# Шифры и ключи
#RekeyLimit default none

# Эта система следует системной крипто политике. Изменения в
# криптографических свойствах (шифры, MAC и т.д.) не будут иметь никакого эффекта здесь.
# Они будут переопределены параметрами командной строки, переданными серверу
# через командную строку.
# Пожалуйста, проверьте справочные страницы для update-crypto-policies(8) и sshd_config(5).

# Логирование
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO

# Аутентификация:

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

#PubkeyAuthentication yes

# Значение по умолчанию - проверять как .ssh/authorized_keys, так и .ssh/authorized_keys2,
# но это переопределяется, так что установки будут проверять только .ssh/authorized_keys
AuthorizedKeysFile  .ssh/authorized_keys

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# Для того чтобы это работало, вам также нужны ключи хоста в /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Измените на yes, если вы не доверяете ~/.ssh/known_hosts для
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Не читаете файлы ~/.rhosts и ~/.shosts пользователя
#IgnoreRhosts yes

# Чтобы отключить перенаправленные пароли в открытом виде, измените на no здесь!
#PasswordAuthentication yes
#PermitEmptyPasswords no
PasswordAuthentication yes

# Измените на no, чтобы отключить пароли s/key
#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no

# Опции Kerberos
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
#KerberosUseKuserok yes

# Опции GSSAPI
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no
#GSSAPIEnablek5users no

# Установите это в 'yes', чтобы включить аутентификацию PAM, обработку учетных записей
# и обработку сеансов. Если это включено, аутентификация PAM будет
# разрешена через ChallengeResponseAuthentication и
# PasswordAuthentication. В зависимости от вашей конфигурации PAM
# аутентификация PAM через ChallengeResponseAuthentication может обойти
# установку "PermitRootLogin without-password".
# Если вы просто хотите, чтобы проверки учетных записей и сеансов PAM выполнялись без
# аутентификации PAM, то активируйте это, но установите PasswordAuthentication
# и ChallengeResponseAuthentication в 'no'.
# ПРЕДУПРЕЖДЕНИЕ: 'UsePAM no' не поддерживается в RHEL и может вызвать несколько
# проблем.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes

# Рекомендуется использовать pam_motd в /etc/pam.d/sshd вместо PrintMotd,
# так как это более настраиваемо и универсально, чем встроенная версия.
PrintMotd no

#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# нет пути по умолчанию для баннера
#Banner none

# Принять переменные среды, связанные с локалью
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS

# переопределить значение по умолчанию для отсутствующих подсистем
Subsystem   sftp    /usr/libexec/openssh/sftp-server

# Пример переопределения настроек на основании пользователя
#Match User anoncvs
#   X11Forwarding no
#   AllowTcpForwarding no
#   PermitTTY no
#   ForceCommand cvs server

Я не уверен, что изменилось – внутренний экранный фильтр видит трафик нормально и не имел изменений. Ничего в истории yum не подразумевает обновления, и я могу успешно подключаться к другим серверам. Мне кажется, что это что-то, что прямо передо мной – что я здесь пропустил?

  1. Вы пишете:

файл /etc/ssh/sshd_config настроен на разрешение PasswordAuthentication

(вы явно имели в виду файл /etc/ssh/sshd_config)

но результатом является

userauth-request for user root service ssh-connection method none

=> Эти утверждения противоречивы.

  1. Вы утверждаете, что у вас нет записей в журналах серверов.

=> Это соответствует сообщению ssh-connection method none выше. Отсутствие метода соединения не является ошибкой, а состоянием конфигурации.

*В результате на ssh-сервере не настроен метод аутентификации. Следовательно, аутентификация не может быть выполнена, и связь при входе завершается обычным отключением раньше *

В противном случае мы увидели бы сообщение, вроде этого, в вашем отладочном журнале в позиции, вместо Connection closed by serverA port 22:

debug1: Next authentication method: password

Таким образом, первой вещью, которую нужно проверить на наличие ошибки, является проверка конфигурации ssh-сервера в

/etc/ssh/sshd_config

К сожалению, ваша задумка вставить этот файл привела к вставке /etc/ssh/ssh_config (без d после ssh)

Поскольку вы не уверены в том, что отключили аутентификацию по паролю, я думаю, что в этом должна быть опечатка, т.е. вы случайно удалили комментарий # (или третий участник изменил sshd_config).

Пожалуйста, проверьте файл на наличие

PasswordAuthentication
  1. Убедитесь, что значение этой записи установлено на yes и не закомментировано #:
PasswordAuthentication yes

Это должно быть значением по умолчанию, но скомпилированные значения по умолчанию также можно изменить…

  1. Проверьте весь файл на наличие других записей ключевого слова и отключите или удалите их.

  2. После изменения sshd_config sshd должен быть перезапущен:

systemctl restart sshd
  1. Также, если вы ничего не меняли, пожалуйста, перезапустите sshd, так как вполне возможно, что уже примененные изменения ваших тестов еще не были прочитаны sshd (перезапустив его).

Если ошибка сохраняется, вы должны обновить свой вопрос с настоящим /etc/ssh/sshd_config, чтобы мы могли на него взглянуть.

Ответ или решение

Проблема с отсутствием доступа к серверу через SSH, особенно если вы получаете сообщение о закрытом соединении и можете наблюдать строки, указывающие на отсутствие методов аутентификации, может быть решена через несколько шагов по диагностике и исправлению. Опираясь на вашу предоставленную информацию, вот подробное руководство.

1. Проверка конфигурации SSHD

Поскольку вы указали, что в файле /etc/ssh/sshd_config установлено значение PasswordAuthentication, начнем с осмотра всей конфигурации этого файла. Ваша передача на sshd_config могла не содержать всех нужных строк, и это может стать источником ошибки.

  • Убедитесь, что строка с PasswordAuthentication выглядит следующим образом:

    PasswordAuthentication yes
  • Убедитесь, что она не закомментирована символом #. Если такие строки существуют повторно или с другим значением, удалите их либо измените на необходимые.

2. Перезагрузка SSHD

Изменения в конфигурационном файле sshd_config становятся активными только после перезагрузки службы. Для этого выполните команду:

sudo systemctl restart sshd

3. Проверка логов

Вы упомянули, что в /var/log/secure нет записей, что может указывать на то, что сервер не обрабатывает аутентификацию вообще. Убедитесь, что уровень логирования в конфигурации установлен на минимум INFO:

LogLevel INFO

Вы также можете увеличить уровень логирования до DEBUG для более подробного вывода, если ни одно из изменений не помогло. Это делается через изменение именно в sshd_config:

LogLevel DEBUG

Не забудьте снова перезагрузить SSHD.

4. Проверка PAM и SELinux

Если ваш сервер использует PAM (Pluggable Authentication Modules), убедитесь, что настройки в /etc/pam.d/sshd соответствуют вашим требованиям и не блокируют стандартную аутентификацию.

Также проверьте настройки SELinux. Если SELinux включен, он может блокировать доступ, и это может быть причиной проблемы:

sestatus

Если SELinux активен, временно переключите его в режим permissive:

sudo setenforce 0

Это снятие ограничений может помочь определить, является ли он источником проблемы.

5. Проверка брандмауэра

Убедитесь, что брандмауэр не блокирует соединения на порту 22. Это можно проверить с помощью следующих команд:

sudo firewall-cmd --list-all

Если SSH не включен, вы можете добавить его:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

6. Проверка сетевых подключений

С помощью nmap можно проверить, что сервер действительно прослушивает 22-й порт и принимает подключения:

nmap -p 22 serverA

Если вы видите, что SSH открыт, но не принимаются подключения, это может указывать на локальные проблемы сервера, а не на проблемы с конфигурацией SSH.

Заключение

Если все вышеперечисленные шаги не привели к решению проблемы, вам следует выполнить дополнительные действия, такие как временное отключение всех внешних модуля авторизации, чтобы изолировать проблему, а затем поочередно их включать обратно. Также стоит рассмотреть возможность отката к последним резервным копиям конфигурационных файлов, если изменения в них недавно вносились и привели к текущей проблеме.

Проблемы с SSH могут быть сложными, поэтому требуется терпение и систематический подход к диагностике.

Оцените материал
Добавить комментарий

Капча загружается...