linux 사용자 패스워드

반응형

안녕하세요. 오늘은 사용자 패스워드에 대해 포스트 해보려고 합니다.

저번 포스트에 사용자 계정을 만들면서 그 계정을 사용하기 위해서는 패스워드 지정이 필요하다고 잠깐 말씀드렸었는데 이 패스워드에 대해 조금 더 자세히 설명하려고 합니다.


저번에 만든 user1 계정을 통해서 보겠습니다.

패스워드를 보는 방법은 vi /etc/shadow 입니다.


vi를 통해서 보시면


user1:$6$e.ggCFrd$...:17036:0:99999:7: : :


각 계정당 이런식으로 문자와 숫자가 얽힌 걸 보실 수 있을겁니다.

구분은 : 로 하시면 되는데

왼쪽부터


사용자 이름

사용자 패스워드

패스워드 생성일자 (Unix timestamp)

패스워드 최소 사용일

패스워드 최대 사용일

패스워드 경고 일

패스워드 비활성화 기간 (빈칸)

사용자 계정 만료일 (빈칸)


이렇게 보시면 될 것 같습니다.

패스워드 생성일자는 계정의 패스워드를 지정한 날짜가 아닌 1970년 1월 1일 기준으로 현재까지의 일수로 계산을 합니다.


중요한건 패스워드인데.. 분명 본인은 패스워드를 저렇게하지 않았는데 이상하고 복잡한 문자열들이 보이는군요.


저게 뭐나면 hash 함수 라고 부릅니다. 리눅스에서는 암호화 기법으로 hash 함수를 쓰는데 hash 함수는 입력에 대한 규칙이 없이 랜덤으로 암호를 뽑아내는데 단방향 함수이기 때문에 한번 hash 함수로 바꾸면 기존의 평문으로 복구가 불가능합니다 ㄷㄷ; 대신 어떠한 평문이라도 같은 평문이면 hash함수 값도 같은 값으로 나오죠. hash 함수의 또 하나의 특징은 평문의 길이가 짧은 길든 항상 같은 길이로 나온다는 것..! 정리하면


hash 함수는?


- 평문 --> 암호화

- 단방향 함수

- 평문이 같으면 해시값도 같은 값이 나온다

- 평문의 길이와 상관없이 항상 같은 길이의 해시값이 나온다


이 hash 함수의 반대되는 것도 있는데 그것은 '암호화'라고 불립니다.

암호화의 특징은 평문을 암호화로 바꾸고 다시 평문으로 바꿀 수 있습니다. key를 이용해서 말이죠. 또한 hash함수와 달리 키에 따라서 생성되는 암호문이 다르게 나오며 길이에 따라서도 암호문의 길이가 다르게 나옵니다..

ex)

korea --> HP3817z5ZuQ=   (key : 1234)

korea --> FlnV5SxC5wc=   (key : 1)


즉, 암호화의 공식은

평문--(key)--> 암호문 --(key)--> 평문

이렇게 볼 수 있겠네요!


마지막으로, 패스워드 정책이라고 있는데요. 사용자 패스워드 정책 확인하는 명령은 다음과 같습니다.


chage -l <user name>



위에서부터 차례대로 설명드리면


Last password change : 마지막으로 패스워드 바꾼 날짜

Password expires : 패스워드 만료일 (never)

Passowrd inactive : 패스워드 비활성일 (nerver)

Account expires : 계정 만료일 (nerver)

Minimum ~ : 패스워드 변경 최소 기간

Maximum ~ : 패스워드 사용 가능 기간 (99999)

Number of days warning ~ : 패스워드 기간 만료 경고 기간 (7일)


chage -l 옵션을 사용하면 정책을 수정할 수 있습니다.


전체 사용자에 대한 패스워드 정책 설정은 여기서 하시면 됩니다!


/etc/default/useradd

/etc/login.defs


이상으로 사용자 패스워드에 대한 포스트를 마치겠습니다.



반응형

'OS > linux' 카테고리의 다른 글

linux 프로세스  (0) 2016.09.29
linux 특수권한  (0) 2016.09.29
linux 사용자와 그룹  (0) 2016.09.27
linux 파일의 권한  (0) 2016.09.27
linux 파티션(분할)  (0) 2016.09.27
TAGS.

Comments