- 1. 사용자 관리2023년 02월 13일 19시 45분 08초에 업로드 된 글입니다.작성자: 각수짱728x90반응형SMALL
사용자 관리 관련 파일
/etc/passwd
user x 27 27 MySQL Server:/var/lib/mysql /sbin/nologin 로그인명 사용x UID GID 주석(설명) 사용자
홈 디렉토리로그인 쉘 로그인명 각 사용자는 유일한 이름을 가지고 있어야 함(중복 허용X)
첫 문자는 영문자(._- 시스템에 따라 사용 가능)사용x (본 사용 목적 : 패스워드를 저장 부분) 현재 사용x
etc/shadow 파일에 따로 저장UID 로그인명은 중복이 X, but UID는 중복이 가능
시스템이 사용자를 식별하는 번호 (root의 권한을 가질 수도 있음)
일반사용자는 1000번 이상의 사용
normarlly 1000보다 작은 UID는 예약 UIDGID 해당 사용자가 속해있는 주 그룹의 GID 주석 일반적으로 사용자의 전체 이름을 써준다. 또는 연락처, 부서 등 로그인명만으로 사용자의 구분이 힘들 때 자세한 설명을 쓰는 부분 사용자 홈디렉토리 사용자의 홈디렉토리
'~'를 사용했을 떄 참조하는 부분로그인 쉘 사용자가 로그인할 때 실행되는 쉘을 지정 root 시스템에서 모든 권한을 가지고 있는 최고 권한 사용자
시스템 내의 보호되는 파일이나 퍼미션 등의 제한 사항에 대해 대부분 영향을 받지 않는다bin 시스템의 구동중인 바이너리 파일을 관리하기 위한 계정 daemon 백그라운드 프로세스에 대한 작업을 관리하는 시스템 계정 adm 시스템 로깅이나 특정 작업을 관리하는 시스템 계정 Ip 프린트를 위한 계정 gdm Gnpme Display 관리 서비스 계정 /etc/shadow
mysql !! 19398 1 2 3 4 5 6 7 8 9 1 로그인명 사용자의 로그인명 2 패스워드 필드 암호화되서 저장
대칭키 암호화 알고리즘(DES)을 이용한 Crypt 함수
$로 필드를 구분(패스워드 생성시 사용된 salt값을 저장
*LK* : 해당 사용자는 로그인 할 수 없는 lock이 걸린 사용자를 의미
공백 : 패스워드 입력 없이 로그인 할 수 있음
해시 함수
Windows의 암호저장 파일 경로 :
C:Windows/System32/config/SAM
1비트 H() → 64비트
1GB H() → 64비트3 마지막 변경일 1970/1/1 기준으로 패스워드를 변경한 날짜까지 count ex)19326 = 1970/1/1->19326일지남 4 MIN 패스워드 변경 후 최소 사용 기간 (패스워드 변경 후 설정 MIN 이 지날 때까지 재변경 불가) 5 MAX 패스워드 변경 후 최대 사용 기간
지정된 MAX값 이내에 변경 패스워드 사용 가능6 WARN 패스워드 만기일 이전에 사용자에게 경고 메세지를 전달할 날짜 지정 7 Inactive 비활성화 사용자
휴면 계정 설정 (설정 날짜만큼 로그인 활동이 없으면 Lock 계정 (휴면계정)으로 변경됨)
ex) 7일로 설정하면 해당 사용자가 7일 이내에 로긍니하지 않을시 해당 계정을 locking하게 한다8 Expire 패스워드 만기일 설정
해당 날짜에 자동으로 계정 locking
→로그인 불가 (관리자에 의해 lock 해제 필요)9 Reserved 예약필드
현재는 사용 x<패스워드 생성>
- Password → H() → 암호문 1 → crypt(Salt값 추가 + 암호문 1) → 암호문 2
- salt 값 : 운영체제에서 random 하게 만들어내는 값
- why? 같은 암호를 사용하는 두 사용자의 암호값 혼란을 막기 위해
<로그인 시 패스워드 확인>
- 패스워드 → H() → 암호문 1 → crypt(shadow파일의 Salt값 + 암호문 1) → 암호문 2
/etc/group
- 사용자가 속한 그룹의 대한 정보를 담고 있는 파일
- 리눅스에서는 시스템 내의 각 사용자가 최소한 한 그룹에 속해야 하며, 사용자들은 주 그룹을 참조한다.
- 그룹은 주 그룹과 보조 그룹으로 나눠지며 주 그룹은 /etc/passwd의 GID 필드에 정의되고, 보조 그룹은 /etc/group 마지막 필드에 정의된다.
root x 0 그룹 이름 패스워드 GID 사용자 목록 그룹이름 그룹의 이름 패스워드 하위 버전과의 호환성을 위해 제공되는 필드로 현재는 사용하지 않지만 사용이 불가능한 것은 아니다 GID 해당하는 그룹을 구분하는 번호 사용자 목록 해당 그룹을 보조 그룹으로써 참조하는 사용자들의 로그인명을 작성
사용자 및 그룹 관리 명령어
사용자 관리 명령어
- useradd : 사용자를 추가하는 명령어
- ex) useradd [옵션] [아규먼트] [사용자이름]
- ex) useradd -m test1
- useradd test2
- useradd -u 2000 -g 1000 -m -d /sjb/test3 -s /bin/csh -c "Test Uset" test3
- useradd -d /sjb/test4 -m -u 0 -o -g 1000 -s /bin/bash -c "Test User" -k /etc/skel test4
- test4 사용자 추가
홈 디렉토리는 /sjb/test4
uid 0
gid 1000
로그인 쉘은 /bin/bash
주석은 Test User
스켈 디렉토리는 /sjb- 기본적으로 /etc/skel로 지정되어 있다.
skeleton의 약자로 사용자의 홈 디렉토리가 생성될 때
홈 디렉토리에 추가되야 하는 기본 파일들을 저장한 디렉토리
홈 디렉토리가 추가될 때 skel 디렉토리의 파일들을 복사 - *tip : 명령어를 이용해서 설정가능하고 파일을 수정해서도 설정 가능한 경우
명령어를 사용하는 걸 권장한다.
- 기본적으로 /etc/skel로 지정되어 있다.
- test4 사용자 추가
- 기본값 변경할 때는
useradd -D [추가옵션]로 변경 가능, 추가옵션은 홈디렉토리만 빼고 비슷하다.
[옵션] [아규먼트] [사용자 이름] -u UID를 지정(normally set unique) -g 주 그룹의 GID 설정 -G 보조 그룹의 GID 설정 -d 홈 디렉토리 -m 홈 디렉토리 지정 시 홈 디렉토리가 존재하지 X 경우 해당 디렉토리를 자동으로 생성하도록 하는 옵션 -s 로그인 쉘 설정 -c 주석(사용자에 대한 설명) -f 휴면 계정 전환 날짜 지정 -e 만료일 지정 - usermod : 사용자 정보를 변경하는 명령어
- useradd 명령어에서 사용했던 옵션과 똑같다.
[옵션] [아규먼트] [사용자 이름] -u UID를 지정(normally set unique) -g 주 그룹의 GID 설정 -G 보조 그룹의 GID 설정 -d 홈 디렉토리 -s 로그인 쉘 설정 -c 주석(사용자에 대한 설명) -f 휴면 계정 전환 날짜 지정 -e 만료일 지정 - userdel : 사용자를 제거하는 명령어
[옵션] [사용자 이름] -r 해당 사용자가 사용하던 홈 디렉토리도 같이 삭제 그룹 관리 명령어
- groupadd : 그룹을 추가할 때 사용하는 명령어
groupadd -g 그룹의 GID 지정 -o GID 중복 설정 가능하게 하는 옵션 - groupmod : 그룹 정보를 수정할 때 사용하는 명령어
groupmod -g 그룹의 GID 지정 -o GID 중복 설정 가능하게 하는 옵션 - groupdel : 그룹을 제거할 때 사용하는 명령어
groupdel 그룹을 제거할 때 사용하는 명령어
패스워드 관련 파일 및 명령어
패스워드 정책
- 패스워드 정책 관련 파일
- /etc/security/pwquality.conf
- 대/소문자, 숫자, 특수문자를 혼용하여 8 글자 이상의 패스워드를 사용
- 동일 문자를 연속 4회 이상 사용하기 금지
- 패스워드 히스토리를 관리해 2~3개 이상 동일 패스워드를 사용 금지
- 패스워드 변경 주기를 설정 (패스워드 유효기간을 90일 이하로 설정)
- 사전에 나오는 쉬운 단어나 이름은 패스워드로 사용하지 못하도록 설정
- 기본 설정된 패스워드는 사용하지 못하도록 설정
- 초기 부여된 패스워드는 사용자 최초 접속 시 변경하도록 설정
패스워드 관련 파일
- shadow 관련 파일
- /etc/login.defs
패스워드 관련 명령어
passwd [사용자명] 해당 사용자의 패스워드 변경
사용자명을 입력하지 않으면 현재 사용자의 패스워드로 변경-n 패스워드 변경 후 최소 사용 기간 -x 패스워드 변경 후 최대 사용 기간 -w 패스워드 만기일 이전에 사용자에게 경고 메시지를 전달할 -f 최초 로그인시에 강제로 패스워드를 변경하도록 설정 -d shadow 파일의 패스워드 필드 값을 제거
passwd 입력 없이 로그인 가능-l 해당 사용자의 상태를 locking으로 변경 -s 해당 사용자의 현재 패스워드 설정 조회 728x90반응형LIST'리눅스 > 리눅스 고급' 카테고리의 다른 글
6. 디스크 관리와 RAID (실습) (0) 2023.02.15 6. 디스크 관리와 RAID (0) 2023.02.15 5. 디스크 관리 및 파일 시스템 (실습) (0) 2023.02.15 5. 디스크 관리 및 파일 시스템 (0) 2023.02.15 4. systemd (0) 2023.02.13 이전글이 없습니다.댓글