사용자 관리
useradd (opt) [생성한 usr]
: 리눅스의 사용자를 추가할 때 사용하는 명령-d
: 홈 디렉토리를 지정할 때 사용(기본경로 /home/usr)useradd username -d directory
-e
: 계정 사용 만료일자 지정 시 사용 -> 언제까지 사용할 수 있다.-f
: 계정 사용 유효일자 지정 시 사용 -> 며칠동안 사용할 수 있다.-g
: 그룹을 지정 시 사용(생략 시 사용자 계정과 동일한 그룹이 생성됨)useradd -g groupname username
-G
: 기본 그룹의 보조 그룹을 지정 시 사용
groups 명령을 통해 해당 사용자가 속한 그룹 확인 가능
cat /etc/groups
-> tester:x:1003:1003::/home/tester:/bin/bash
passwd (opt) [usr]
: 사용자 비밀번호(암호) 설정. 리눅스에서 비밀번호 없는 사용자 계정은 로그인 되지 않음.-l
: 사용자 패스워드에 잠금기능 설정passwd -l username
-> /etc/shadow에서 확인 시 암호 맨 앞에 !!가 표시됨.
-u
: 사용자 패스워드 잠금상태를 해제-d
: 사용자 패스워드를 제거(패스워드 없이 로그인)-n
: 패스워드 변경까지 최소 날짜 설정-x
: 패스워드 최대 사용 가능 날짜 설정-w
: 패스워드 만료 전 경고 날짜를 지정-e
: 다음 로그인 시 반드시 패스워드 재설정하도록 함
비밀번호 관리파일은 /etc/shadow
에서 비밀번호를 암호화해 파일에 저장 -> tester:암호화된 password:16785:0:99999:7:::
chage (opt) [usr]
: 사용자 패스워드 정보를 출력하거나 패스워드 관련 정보를 설정하는 명령어-l
: 사용자 패스워드 정보를 표시- 최근 암호 변경 날짜
- 암호 만료 일자
- 암호 만료 일자 유무
- 계정 만료 유무
- 최소 의무 사용 기간
- 최대 암호 사용 기간
- 암호 만료 전 경고 날짜
-d
: 사용자 패스워드 최근 변경 날짜를 수정-m
: 패스워드 변경까지 최소 날짜 설정-M
: 패스워드 최대 사용 가능 날짜 설정-W
: 패스워드 만료 전 경고 날짜를 지정-E
: 사용자 계정이 만기되는 날을 지정chage -m 3 -M 180 -W 30 tester
-> tester 사용자 패스워드 최소한 3일 사용, 최대 180일 사용, 암호 만료 전 30일 전부터 경고 메시지 표시
su (opt) [user]
: 현재 시스템에 로그인된 사용자 계정에서 다른 사용자 계정으로 바꾸어서 접속하는 명령. root 계정 접속 시 암호를 물어봄. root -> 일반 사용자 계정 변환 시 암호 묻지 않음.-c
: 쉘을 실행하지 않고 주어진 명령만을 수행. 사용자 전환은 하지 않은 상태에서 root 권한으로 1회 명령만 실행su root -c "실행할 명령"
-
,-l
: 지정한 사용자의 환경변수를 적용해 로그인su -root
=su -l root
su를 사용한 후 exit
입력 시 원래 계정으로 돌아감.
사용자 계정과 관련한 파일
/home
: 사용자 홈디렉토리/etc/group
: 사용자의 그룹 생성/etc/passwd
: 사용자 계정 id 및 패스워드 정보 기록/etc/shadow
: 계정 패스워드 등록/etc/default/useradd
와/etc/login.defs
: 사용자 계정 생성 시 위 파일 내용을 기본값으로 계정 생성
/etc/default/useradd
파일 내용 또는 useradd -D
- group = 100
- home = /home
- inactive = -1
- expire =
- shell = /bin/bash
- skel = /etc/skel
- create_mail_spool = yes
usermod (opt) [user]
: 사용자 쉘, 홈 디렉토리, 그룹, 사용자ID(uid), 그룹ID(gid) 등을 변경하는 명령어-d
: 사용자의 홈 디렉토리를 변경-m
: 사용자의 홈 디렉토리 변경 시 기존에 사용하던 파일 및 디렉토리를 옮겨줌mkdir [변경할 사용자 홈 directory]
-> 변경할 사용자 홈 디렉토리는 미리 존재해야 함.usermod -d [이동할 directory] -m [user]
-> 새 디렉토리로 홈 디렉토리를 변경하며 기존 파일을 새 디렉토리로 이동
-g
: 사용자의 그룹 변경usermod -g [group] [user]
-G
: 현재 그룹 외에 또 다른 그룹에 속하게 할 때 사용 -> 두 가지 이상의 그룹에 포함되게끔 하는 듯-s
: 사용자의 쉘 변경-u
: 사용자의 uid값 변경-l
: 사용자의 id 변경usermod -l [새 id] [기존 id]
-L
: 사용자 패스워드 lock-e
: 계정 만기일 변경usermod -e [YYYY-MM-DD] [user]
userdel (opt) [user]
: 사용자 삭제 명령-r
: 사용자의 홈 디렉토리 및 메일 관련 파일까지 제거userdel -r [usr]
rm -rf [directory]
그룹 관리
groupadd (opt) [group]
: 새 그룹을 생성하는 명령. 사용자를 등록하기 전 속할 그룹을 먼저 지정해줘야 함. 등록한 그룹은 /etc/group에 저장(그룹명: 패스워드: gid: 해당 그룹에 속한 사용자 목록)-g [group 번호]
: 특정 group 번호로 설정groupadd -g 1500 sample1
-> sample1의 그룹번호를 1500으로 설정. 다음 그룹 생성 시 1501, 1502….와 같이 그룹번호가 설정됨.
-r
: 0~499번대 사이로 group 번호 설정
/etc/gshadow
groupdel [group]
: 그룹을 삭제하는 명령(그룹에 속한 사용자가 있을 경우 사용자부터 제거 후 작업)