현재 auth.log 덤프

현재 auth.log 덤프

PAM을 사용하여 로그인할 때와 다른 sudo 비밀번호를 사용해 보았습니다.

나는 원래 이 기사를 작성했습니다.

sudo 비밀번호를 로그인 비밀번호와 다르게 설정하세요.

안타깝게도 이 작업을 할 때마다 인증 오류가 발생하며 무엇이 문제인지 잘 모르겠습니다. 비밀번호를 잘못 해시했거나 데이터베이스에 잘못 추가했을 수도 있지만 문제가 무엇인지 잘 모르겠습니다.

sudo로 읽은 구성

session    required   pam_env.so readenv=1 user_readenv=0

session    required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0

auth required pam_userdb.so crypt=crypt db=/var/local/sudopass/passwd.db

\#@include common-auth

@include common-account

@include common-session-noninteractive

테스트 목적 으로 비밀번호를 설정한 passwd -m des password다음 db5.3을 사용하여 passwd.db 데이터베이스를 만들었습니다.

db5.3_load -h /var/local/sudopass -t hash -T passwd.db

내 사용자 이름

73o8ECeyEW3Y2(비밀번호 해시)

그러면 인증 오류가 발생합니다. 이 데이터베이스를 내 홈 디렉토리에 배치하면 PAM은 권한 설정 방법에 관계없이 데이터베이스를 찾을 수 없습니다. )

현재 auth.log 덤프

인증 오류가 발생하는 데 문제가 있지만 이는 Oct 18 12:07:43 az-GlAdOS-mk11-m sudo: pam_userdb(sudo:auth): Verify user비밀번호가 포함된 auth.log az'의 현재 문제 입니다.

Oct 18 12:07:43 az-GlAdOS-mk11-m sudo: pam_userdb(sudo:auth): user_lookup: `/var/local/sudopass/passwd.db' 데이터베이스를 열 수 없습니다. 해당 파일 또는 디렉터리가 없습니다.

10월 18일 12:07:43 az-GlAdOS-mk11-m sudo: az: PAM 인증 오류: TTY=pts/4; user=root; 빈/나노 /etc/pam.d/sudo`

답변1

targetpw의 옵션을 사용하면 sudoerssudo가 자신의 비밀번호를 묻지 않고 대신 명령을 실행하려는 사용자의 비밀번호를 묻게 됩니다(대부분의 경우 root). 그런 다음 자신의 사용자와 사용자 계정에 대해 root서로 다른 비밀번호를 사용할 수 있습니다.

sudoers 파일에서 다음 스니펫을 사용하여 이 동작을 전역적으로 활성화합니다( 를 사용하여 편집 visudo).

Defaults targetpw
ALL ALL=(ALL) ALL

두 번째 줄은 시스템의 모든 사용자가 대상 사용자의 비밀번호를 알고 있으면 sudo를 사용할 수 있음을 의미합니다. 생략하는 경우 그룹 멤버십과 대상의 비밀번호를 구성해야 합니다. ( su이 구성을 지원하지 않으므로 액세스 권한이 있는 경우 그룹 요구 사항을 피할 수 있습니다 .)

targetpw특정 사용자나 그룹에만 지시어를 적용하는 두 가지 변형 중 하나를 사용할 수도 있습니다 .

Defaults:username targetpw
username ALL=(ALL) ALL

Defaults:%groupname targetpw
%groupname ALL=(ALL) ALL

(하다아니요ALL ALL=(ALL) ALL다음 중 하나를 사용하는 경우 명시해 주세요 ! )

답변2

당신이 링크한 가이드는 5년 전의 가이드입니다. PAM은 더 이상 DES를 사용하지 않습니다. 비밀번호 해시를 생성하려면 다음을 사용해 보세요.

echo pass|mkpasswd -s -m sha-512

관련 정보