ssh : 루트가 아닌 사용자에 대해서는 "PAM 계정 구성에 의해 액세스가 거부되었습니다"


24

VM에서 초기화 중 입니다. 공개 키 인증을 사용하여 SSH를 통해 루트가 아닌 사용자 ( admin) 로 로그인 할 수 있지만 다른 사용자 ( ) 는 로그인 할 수 없습니다 tbbscraper. 모든 로그 파일에서 찾을 수있는 유일한 오류 메시지는

Sep 18 17:21:04 [REDACTED] sshd[18942]: fatal: Access denied for user tbbscraper by PAM account configuration [preauth]

클라이언트 쪽에서 증후군은

$ ssh -v -i [REDACTED] tbbscraper@[REDACTED]
...
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: [REDACTED]
debug1: Authentications that can continue: publickey
debug1: Trying private key: [REDACTED]
debug1: read PEM private key done: type RSA
Connection closed by [REDACTED]

'tbbscraper'를 'admin'으로 변경하면 로그인이 성공 debug1: Authentication succeeded (publickey).합니다. "Connection closed"메시지 대신 나타납니다.

이것은 권한 문제가 아닌 것 같습니다 ...

# for x in admin tbbscraper
> do ls -adl /home/$x /home/$x/.ssh /home/$x/.ssh/authorized_keys
> done
drwxr-xr-x 3 admin admin 4096 Sep 18 17:19 /home/admin
drwx------ 2 admin admin 4096 Sep 18 16:53 /home/admin/.ssh
-rw------- 1 admin admin  398 Sep 18 17:19 /home/admin/.ssh/authorized_keys
drwxr-xr-x 3 tbbscraper tbbscraper 4096 Sep 18 17:18 /home/tbbscraper
drwx------ 2 tbbscraper tbbscraper 4096 Sep 18 17:18 /home/tbbscraper/.ssh
-rw------- 1 tbbscraper tbbscraper  398 Sep 18 17:18 /home/tbbscraper/.ssh/authorized_keys

# cmp /home/{admin,tbbscraper}/.ssh/authorized_keys ; echo $?
0

... 또는 PAM 수준 액세스 제어 문제 ...

# egrep -v '^(#|$)' /etc/security/*.conf
#

... 따라서 비슷한 질문에 대한 기존 답변 중 어느 것도 적용되지 않는 것 같습니다. 내가 얻은 유일한 다른 증거는 다음과 같습니다.

root@[REDACTED] # su - admin
admin@[REDACTED] $

그러나

root@[REDACTED] # su - tbbscraper
su: Authentication failure
(Ignored)
tbbscraper@[REDACTED] $

더 큰 규모의 PAM 문제를 제안하지만의 항목에서 분명히 잘못된 것을 찾을 수는 없습니다 /etc/pam.d. 어떤 아이디어?

VM은 EC2 인스턴스이고 OS는 Debian 7.1 (Amazon의 상용 AMI)입니다.


/etc/pam.d/sshd제발
GioMac

@GioMac 걱정 마세요. 문제를 찾았습니다.
zwol

답변:


29

결국,의 한 글자 오타로 밝혀졌습니다 /etc/shadow. 차이를 발견:

admin:!:15891:0:99999:7:::
tbbscraper:!::15966:0:99999:7:::

맞습니다. 느낌표 뒤에 두 개의 콜론이 tbbscraper있습니다. 이로 인해 모든 필드가 하나 이상 표시되고 PAM은 1970 년 1 월 8 일에 계정이 만료되었다고 생각합니다.


9
게시 해 주셔서 감사합니다. 이것은 나에게 유용했습니다. / etc / passwd에서 수동으로 사용자 항목을 작성하고 해당하는 / etc / shadow 항목을 추가하는 것을 잊었습니다.
spazm

6
@spazm 의견을 보내 주셔서 감사합니다. 이것은 나에게 유용했습니다. 다른 컴퓨터에서 사용자를 수동으로 복사하고 암호없이 한 사용자의 / etc / shadow 항목을 복사하는 것을 잊었습니다.
Jayen

8

질문을 게시 해 주셔서 감사합니다. 같은 오류가 발생했지만 내 문제는 그림자 파일과 관련이 없었습니다. 내 수정 사항을 발견하고 다른 Google 검색 오류에 대한 답변을 게시하고 싶었습니다. 이 serverfault 질문이 먼저 나타납니다.

/etc/security/access.conf!를 확인하십시오 .

인증을 위해 Active Directory를 사용하고 있지만 AD가 아닌 로컬 사용자 (jenkins)로 로그인해야했습니다. 상사는 원래 다음과 같이 상자를 설정했습니다 /etc/security/access.conf.

+:root:ALL
-:ALL:ALL

나는 이것을 다음과 같이 바꾸었고 로그인은 이제 작동한다; 서비스를 다시 시작할 필요조차 없었습니다.

+:jenkins:ALL
+:root:ALL
-:ALL:ALL

3

같은 오류 메시지가 있습니다. sshd를 종료하고 디버그 모드에서 다시 시작했습니다.

    /usr/sbin/sshd -ddd

이것은 이유를 나타냅니다.

    debug3: User autossh not allowed because account is locked
            ...
    input_userauth_request: invalid user <username> [preauth]

확인 된 계정 :

    passwd -S <username>

계정이 잠 겼음을 나타냅니다 (플래그 "L") 새 비밀번호를 설정하여 계정을 잠금 해제했습니다.

    passwd <username>

끝난.


2

오늘 아침에도 같은 문제가 발생했지만 서버는 Active Directory에 대해 사용자를 인증합니다. 사용자의 도메인 비밀번호가 만료되었음을 나타냅니다.


2
동일한 현상, 다른 사용자 계정 정보 소스 :-) 2 년 전에 ssh 및 / 또는 PAM에 대해 버그가 제기 되어 로그인 시도가 거부 된 이유에 대한 명확한 로깅을 요구했을 수 있습니다 . 이 사람 이야기하지 않는 보안 인수입니다 했다 가 실패한 이유를 시도,하지만 그 시스템 로그에 적용되지 않는다.
zwol

2

필자의 경우 로컬 CentOS 6 사용자의 이름을 바꾸고 / etc / shadow에서 이름을 바꾸는 것을 잊었습니다. / etc / shadow에는 없습니다. / var / log / secure에서 unix_chkpwd 오류가 발생했으며 PAM에서 액세스가 거부되었습니다.

    unix_chkpwd[12345]: could not obtain user info (user2)
    sshd[12354]: fatal: Access denied for user user2 by PAM account configuration

1
usermod (8)은 (는) 다음에 친구입니다 ;-)
Michael Shigorin

0

내 경우에는 "흥미로운"조건에서 ext4 rootfs가 손상된 후 ''/ etc / tcb / USER / shadow ''가 손상되었습니다. 그것은 꽤 문자처럼 보였으므로 초기 검사 중에 발견되지 않았습니다 (지금 노드를 다시 설치할 수는 없지만해야합니다).


0

나는 같은 문제가 있었고 제안 된 옵션 중 어느 것도 효과가 없었습니다. 그러나 나는 포럼 중 하나 ( https://ubuntuforums.org/showthread.php?t=1960510 )에서 완벽하게 작동하는 "해결 방법"을 발견했습니다.

편집 /etc/ssh/sshd_config및 설정

UsePAM no

실제 솔루션은 아니지만 아마도 내 컴퓨터에 문제가 있기 때문에 (어제 잘 작동했습니다!), 이것은 적어도 작동합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.