/etc/passwd 및 /etc/shadow에서 비밀번호를 암호화하는 데 어떤 방법이 사용됩니까?

/etc/passwd 및 /etc/shadow에서 비밀번호를 암호화하는 데 어떤 방법이 사용됩니까?

/etc/passwd및 파일을 면밀히 조사한 /etc/shadow결과 저장된 비밀번호가 일종의 해싱 기능을 사용하여 해시된 것으로 나타났습니다.

빠른 Google 검색에 따르면 기본적으로 비밀번호는 다음을 사용하여 암호화됩니다.DES. 항목이 로 시작하면 $다른 해시 함수가 사용되었음을 의미합니다.

예를 들어 내 Ubuntu 시스템의 일부 항목은 $6$다음으로 시작합니다.

다양한 숫자는 무엇을 나타냅니까?

답변1

전체 목록은 man 5 crypt(웹 버전):

접두사 해싱
“$y$” 네 비밀번호
“$吉$” Gorst - 암호화입니다
“$7$” 암호화
“$20억$” 비밀번호
“$6$” sha512 암호화
“$5$” sha256 암호화
"$sha1" sha1crypt
"$md5" 썬 MD5
“$1$” MD5 암호화
"_" bsdicrypt(BSDI 확장 DES)
(빈 문자열) 큰 비밀번호
(빈 문자열) 복호화(레거시 DES)
“$3$” 신대만달러

(복어는 다음 과 $2$같거나 $2a$이를 기반으로 할 수 있습니다.위키피디아 크립트(유닉스).)

그래서 $6$의미는 입니다 SHA-512.

시스템에서 사용하는 것이 전달됩니다.pam_unix PAM 모듈.

최신 버전의 Ubuntu에 대한 기본 설정은 다음과 같습니다 /etc/pam.d/common-password.

password        [success=1 default=ignore]      pam_unix.so obscure sha512

즉, 다음에 비밀번호를 변경할 때 계정이 NIS/LDAP/Kerberos 등이 아닌 로컬 계정이라고 가정하면 SHA-512를 사용하여 해시됩니다.

또한보십시오:

관련 정보