리눅스 운영체제에서의 사용자 등록정보 저장경로는 아래와 같다.
/etc/passwd
- 사용자의 패스워드를 알고자 할때에는 shadow password를 사용한다.
- useradd 명령을 이용하면 해당 루트 안에 등록이 된다.
- 사용자의 직접 수정이 가능하다.
# cat /etc/passwd
해당 명령어를 입력하면 등록정보가 출력된다. 등록정보의 형식은 다음과 같다.
root : x : 0 : 0 : root : /root : /bin/bash
계정명: 암호 : UID : GID : 주석 : 홈디렉토리 : 쉘
예시는 root 계정의 등록정보이다.
/etc/shadow
- 사용자의 패스워드와 암호정책 정보가 기입되어있다.
# cat /etc/shadow
ora12c:$6 $bo580c3Q$ te9……9f2S9Bq/:18162:0:99999:7:::
계정 : 암호 : 최종변경일 : 암호최소사용일: 암호최대유효기간 : 암호 만료까지 경고기간 : 암호 만료 뒤 계정 폐쇠까지 기간 : 계정이 만료일 : 예비
위 예시에서,
$6 : 해시 알고리즘을 표현한다. 해시를 제조한 법을 말하며, 이 알고리즘을 알면 해시값을 풀어 암호를 알아낼 수 있다.
$bo580c3Q$ : salt. 사용자 간 같은 암호를 사용하는 경우를 대비해 부여되는 값이다.
te9……9f2S9Bq/ : salt와 암호를 합친 것의 해시값을 말한다.
예를 들어 비밀번호가 abc123이면, 해시값은 $bo580c3Q$abc123을 이용해 만든다.
pwconv(pwunconv) 명령을 이용해 활성/비활성화 할 수 있다.
change 명령으로 이용 내용을 수정할 수 있다.
유저 그룹 usergroup.
그룹에는 권한들을 다르게 부여할 수 있다.
/etc/group 에 그룹 정보가 저장된다.
# groupadd 명령어를 이용해 그룹을 추가할 수 있다.
# cat /etc/group
root : x : 0 :
그룹명 : 암호 : GID : 소속 계정
위 예시는 루트 그룹의 정보이다.
한 계정은 여러 그룹에 속할 수 있으며, 기본 소속 그룹은 /etc/passwd 파일에 등록된다.
# groupadd
-g : 생성할 그룹의 GID 번호를 지정한다. 미할당 시 1000번 이상의 중복되지 않은 값으로 자동할당된다.
-r : 1000번 이하의 GID 번호를 자동할당한다. 1000번 이하의 번호는 시스템이 daemon이나 관리목적으로 사용하므로 사용하지 않는 쪽을 선호한다.
-o : 기존에 등록된 그룹과 중복된 번호 할당을 가능하게 한다.
#groupadd -g 2000 st
해당 명령어는 st라는 그룹을 생성하고, 해당 그룹의 GID는 2000으로 지정한다는 뜻이다.
# groupdel
그룹을 삭제하는 명령어이다. 그룹명을 포함하지 않으면 진행되지 않는다.
# groupdel st
st라는 그룹을 삭제한다는 명령어이다.
사용자를 그룹에 등록하기 전에는 반드시 해당 그룹을 먼저 생성해둬야한다. 그러지 않으며 사용자 관리의 난이도가 상승하게 된다.
# useradd
-u : UID 지정
-g : GID 혹은 그룹명으로 그룹을 지정. (미지정시의 default 설정은 그룹명=계정명이다.)
-d : 홈디렉토리 지정 (미지정시의 default 설정은 /home/계정명 이다.)
-G : 보조그룹 지정
-D : 기본 설정 확인 및 변경
-s : 쉘 지정
로그인이 필요 없는 관리용 계정은 쉘을 /sbin/nologin으로 설정한다.
# useradd -g st st01
st01이라는 사용자를 st그룹으로 지정해 생성한다.
# userdel
계정 삭제.
-r 옵션을 필수적으로 권장한다.
-r : 계정에 귀속된 홈디렉토리와 mailbox 등을 모두 사용한다.
* 특별한 사용자 생성 옵션 *
-M : 메일 전용 계정을 생성한다. 홈 디렉토리가 생성되지 않는다.
-r : 999번 이하의 UID를 자동으로 할당하게 한다. 999이하의 UID는 서비스를 위한 더미계정으로, 보통 실 사용자가 없는 계정들이다. 이때 쉘은 /sbin/nologin 으로 지정한다. 홈 디렉토리가 생성되지 않는다.
# passwd
암호 변경 커맨드를 말한다. 관리자는 다른 사용자의 암호를 임의 변경할 수 있다.
단, 다른 사용자의 암호를 확인할 수는 없다.
# passwd st01
st01의 암호를 바꾸게 된다. 이후 새 암호를 입력하라는 창이 업로드 된다.
# usermod
사용자 정보의 수정을 위한 커맨드이다.
-g : 그룹 변경
-G : 그룹 추가
-s: 쉘 변경
-u : UID 변경
-l : 계정 변경 (--login). -d, -m도 같이 사용된다.
-d : 홈디렉토리 변경 (--home)
-m : 지정한 홈디렉토리 생성 및 파일 이전. -d와 함께 쓰인다. (--move-home)
계정의 잠금과 해제
# usermod
-L : lock (--lock)
-U : unlock (--unlock)
#passwd
-l : lock
-u : unlock
-S : 잠금 확인
계정 Lock 정보는 /etc/shadow 에서 확인 가능하다.
# chage
-l : 패스워드 설정 내용 확인
-M : 패스워드 만료일 (# passwd -n)
-W : 만료일 이전 경고 기간 (# passwd -w)
-I : 만료 이후 계정을 잠그는 기간 (#passwd -i)
-E : 패스워드 만료 날짜(YYYY/MM/DD), 해당 날짜 이후 계정이 잠긴다.
-d : 패스워드를 강제로 변경하는 날짜. 해당 날짜 이후로 패스워드가 강제로 변경된다.
-m : 패스워드의 최소 유효기간. 불필요한 변경을 막을 수 있다.
'프로그램' 카테고리의 다른 글
리눅스 정리 - 파일 시스템과 파티션 (0) | 2025.01.21 |
---|---|
리눅스 정리 - 파일구조와 퍼미션 (0) | 2025.01.14 |
Linux Vi에디터 (0) | 2025.01.09 |
리눅스 정리 - 기본 명령어 (0) | 2025.01.06 |
VMware로 Linux 설치하기 (0) | 2025.01.05 |