한 사용자에 대한 SSH 액세스가 거부되었습니다.

한 사용자에 대한 SSH 액세스가 거부되었습니다.

한 사용자에 대해 SSH를 통해 서버에 연결하는 동안 오류가 발생했습니다. 이 사용자의 홈 디렉터리는 .ssh 디렉터리(권한: 700)와 공개 키가 포함된 Authorized_keys 파일이 있는 /opt에 있습니다. 이는 다른 사용자로 연결할 수 있는 동일한 rsa 키를 사용하여 홈 디렉토리가 /home에 있는 다른 사용자와 작동합니다. /var/log/secure에서 다음을 얻습니다.

Apr  8 14:48:22 myserver sshd[338949]: pam_sss(sshd:account): Access denied for user myuser: 6 (Permission denied)
Apr  8 14:48:22 myserver sshd[338949]: fatal: Access denied for user myuser by PAM account configuration [preauth]

ssh -vvv를 사용하면 마지막 줄은 다음과 같습니다.

debug1: Server accepts key: pkalg rsa-sha2-512 blen 535
debug2: input_userauth_pk_ok: fp SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
debug3: sign_and_send_pubkey: RSA SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
debug3: send packet: type 50
Authentication failed.

작동하는 동일한 키를 사용하여 다른 사용자로 이 서버에 연결하면 홈 디렉토리가 /home 대신 /opt에 있다는 점만 다릅니다. 그리고 이 사용자의 로그인 이름에는 밑줄이 있습니다. 이런 상황이 발생했습니까?

[편집] 추가 정보:

SELinux가 비활성화되었습니다.

[root@myserver ~]# getenforce
Disabled
[myuser@myserver ~]$ ls -la /opt/myuser/
drwx------ 2 myuser myuser    80 Apr  8 14:46 .ssh
[myuser@myserver ~]# ls -l /opt/myuser/.ssh/authorized_keys
-rw------- 1 myuser myuser  1131 Apr  8 14:46 /opt/myuser/.ssh/authorized_keys
[root@myserver ~]# namei -l /opt/myuser/.ssh/authorized_keys
f: /opt/myuser/.ssh/authorized_keys
dr-xr-xr-x root         root         /
drwxr-xr-x root         root         opt
drwx------ myuser       myuser       myuser
drwx------ myuser       myuser       .ssh
-rw------- myuser       myuser       authorized_keys
[root@myserver ~]# grep -v ^# /etc/ssh/sshd_config
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

SyslogFacility AUTHPRIV

PermitRootLogin no

AuthorizedKeysFile      .ssh/authorized_keys

PasswordAuthentication yes

ChallengeResponseAuthentication no

GSSAPIAuthentication yes
GSSAPICleanupCredentials no

UsePAM yes

X11Forwarding yes

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
[root@myserver ~]# cat /etc/pam.d/sshd
#%PAM-1.0
auth       required     pam_sepermit.so
auth       substack     password-auth
auth       include      postlogin
# Used with polkit to reauthorize users in remote sessions
-auth      optional     pam_reauthorize.so prepare
account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open env_params
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin
# Used with polkit to reauthorize users in remote sessions
-session   optional     pam_reauthorize.so prepare

sssd를 통해 LDAP 인증도 활성화됩니다.

답변1

LDAP 인증이 활성화되어 있고 해당 특정 사용자에 대한 액세스가 거부된 경우 이는 사용자에게 해당 서버에 대한 LDAP 액세스 권한이 부여되지 않았음을 의미합니다.

/etc/sssd/sssd.conf에 대한 내용을 확인할 수 있습니다.allowed_users그리고allowed_groups그런 다음 사용자 이름을 'allowed_users' 항목으로 추가하거나 'allowed_groups'에 언급된 LDAP 그룹에 추가하세요.

관련 정보