Linux

[Linux/리눅스] 04. 사용자 명령어 , 그룹 명령어 , su , sudo , 액세스 제한

reifier.tistory.com 으로 이전하였습니다. 2018. 12. 21. 13:01
반응형

사용자 및 그룹


사용자


시스템의 모든 프로세스는 특정 사용자로 실행된다.
모든 종류의 파일은 특정 사용자가 소유한다.
파일과 디렉토리에 대한 액세스는 사용자가 제한한다.

id 명령은 현재 로그인한 사용자에 대한 정보를 표시한다.
UID = 0~65535 까지의 범위이고 신규는 1000부터 할당된다.
GROUPS = 주 그룹이다. [ , ] 는 세컨더리 그룹이다. MAX 32 개 까지 가능하다.

파일/디렉토리 관련 사용자를 확인하기 위해서 ls -l 명령을 사용한다.

세 번째 열은 사용자 이름을 보여준다.


프로세스 정보를 확인하기 위해서 ps 명령을 사용한다.

프로세스와 연관된 사용자를 확인하기 위해서 u 옵션을 적용한다.

첫 번째 열은 사용자 이름을 보여준다.


root : UID를 username 으로 매핑한 것이다.

x : 암호화된 암호를 저장한 것이다.

    현재에는 /etc/shadow 파일에 저장된다.

0 : UID는 사용자 ID이며, 사용자를 식별하는 번호이다.

0 : GID는 사용자의 주 그룹 ID 이다.

~

cat /etc/passwd 명령을 통해 로컬 사용자에 대한 정보를 확인한다.


그룹


그룹에는 이름과 번호(GID)가 있다.


프라이머리 그룹

- (1 사용자) : (1 기본 그룹)

- 기본 그룹은 사용자가 만든 새 파일을 가진다.


세컨더리 그룹

- 사용자는 0개 이상의 보조 그룹에 속할 수 있다.

- /etc/group에서 그룹 항목의 마지막 필드에 나열된다.

- 보조 그룹은 사용자가 시스템에 있는 파일등에 대한 액세스 권한을 확인하는 데 사용된다.


wheel : 그룹 이름

10 : GID이다.

civic, boob : 소속 그룹원





슈퍼유저 액세스 권한 취득


root 사용자


모든 권한을 가진 슈퍼 유저이다.

Windows의 로컬 Administrator 계정과 비슷한 역할을 한다.

대부분의 장치는 root 로만 제어할 수 있다.

이동식 장치는 일반 사용자도 제어할 수 있다.


su 명령


su 명령을 사용하여 다른 사용자 계정으로 전환할 수 있다.


사용자 이름이 없거나, root 를 입력하면 root 계정을 의미한다.


su [ - ] <username>


- su username 명령은 로그인이 아닌 쉘 을 시작한다.

- su 는 현재 환경에서 로그인 하려는 계정의 쉘을 시작한다.


- su - username 명령은 로그인 쉘 을 시작한다.

- su - 는 로그인 하려는 계정의 쉘 환경을 설정한다.




sudo 명령


관리자 권한으로 수행한다.
/etc/sudoers
관리자가 등록해야만 한다.
su 명령에 비해 유리할 수 도 있다.





 

로컬 사용자 계정 관리


useradd 명령


- useradd username 명령은 /etc/passwd 의 기본값을 설정한다.


- useradd 명령은 기본적으로 암호를 설정하지 않는다.

암호를 설정될 때 까지 로그인 할 수 없다.


- 속성 규칙 /etc/login.defs 은 생성할 때만 사용된다.



usermod 명령


- usermod --help 명령으로 사용할 수 있는 명령을 확인한다.




userdel 명령


- userdel username 은 /etc/passwd 에서 사용자를 제거한다.

  하지만 홈 디렉토리는 그대로 유지한다.


- userdel -r username 은 사용자와 사용자의 홈 디렉토리 모두를 제거한다.



id 명령


- id 는 사용자 UID 번호 / 그룹 구성원을 포함한 사용자 정보를 표시한다.


- id username 은 username 사용자 정보를 표시한다.



passwd 명령


- passwd username을 사용하여 username 사용자의 암호를 설정할 수 있다.


- root 사용자는 암호를 어떤 값으로든 설정할 수 있다.



UID 범위


- UID 0 은 항상 root 에게 할당 된다.

- UID 1 ~ 200 은 시스템 프로세스에 정적으로 할당된 시스템 사용자 범위이다.

- UID 201 ~ 999는 파일 시스템에 파일을 소유하지 않은 시스템 프로세스에 사용되는 범위이다.
예 : 오라클 , 톰캣 , 자바 등등

- UID 1000+는 정규 사용자에게 할당되는 범위이다.




로컬 그룹 계정 관리


groupadd 명령


- groupadd groupname 은 /etc/login.defs 파일에 범위에서 사용 가능한 GID 를 사용한다.

- groupadd -g GID 옵션은 특정 GID 를 지정한다.
  자동으로 할당되기 때문에 잘 사용하지 않는다.

- groupadd -r groupname 옵션은 /etc/login.defs 파일에서 사용 가능한 범위에서 생성한다.



groupmod 명령


- groupmod 명령은 그룹 이름과 GID 매핑을 변경하는 데 사용된다.


- groupmod -n changename groupname 은 groupname 을 changename 으로 변경한다.


- groupmod -g GID groupname 은 groupname 의 GID 를 지정한다.




groupdel 명령


- groupdel 명령은 그룹을 제거한다.

- 그룹이 기존 사용자의 기본 그룹인 경우에는 제거하지 못할 수도 있다.
  userdel 과 마찬가지이다.



usermod 명령


- usermod -g groupname username 명령은

  username 을 groupname 으로 기본 그룹을 변경한다.


- usermod -aG groupname username 명령은

  username 을 groupname 으로 보조 그룹에 추가한다.





 

사용자 암호 관리


Shadow 암호 / 암호 정책


/etc/shadow 파일에서 암호 속성 변경 및 만료 기능 구현되어있다.



$6$5CygCo1Pvboac9qI$3yGfa0EZ. 7~ :


- 6 : 해시 알고리즘 ( 1 은 MD5 , 6 은 SHA-512 해시 )


5CygCo1Pvboac9qI  : 암호화 salt , 랜덤 선택 , 중복되지 않는다.


3yGfa0EZ. 7~ : : 암호화된 해시이다.




암호 속성 변경



- chage -d 0 username 명령은 다음 로그인 시 강제로 암호 갱신을 실행한다.


- chage -l username 명령은 사용자의 현재 설정이 나열된다.


- chage -E YYYY-MM-DD username 명령은 YYYY년 MM월 DD일 에 계정을 만료한다.


- chage -m <number> -M <number> -W <number> -I (대문자 i) <number> username


- m (Min days)    : 최소 사용 기간

- M (Max days)    : 최대 사용 기간

- W (Warn days)    : 사용기간 만료일에 근접할 시 경고/알림

예 : -W 7 은 계정 만료 7일전에 경고/알림

- I (Inactive) (i)    : 만료 후 잠금상태 대기

- l (List) (L)    : 사용자 계정의 설정을 표시

- d : 사용자가 비밀번호를 변경한 마지막 일자

- h : 도움말





액세스 제한


- chage 명령을 사용하여 계정 만료를 설정할 수 있다.

- 날짜가 만료하게 되면 사용자는 로그인 할 수 없다.

- usermod -L username 명령으로 username 사용자를 LOCK 할 수 있다.


- usermod -U username 명령으로 username 사용자를 UNLCOK 할 수 있다.


- usermod -s /sbin/nologin username 명령으로 쉘 연결을 바로 종료할 수 있다.






-M (max) : 최대 사용기간

-W (warn) : 사용기간 만료 몇 일전 경고 또는 알림.

-I (inactive) : 만료 후 잠금상태 대기 (일종의 유예기간)

-E [YYYY-MM-DD] : 사용자가 사용할 수 있는 계정의 유효기간

-l (list) : 사용자 계정의 현재 설정을 표시

-d 0 : 다음 로그인시 암호 업데이트를 강제 수행

-d : 사용자가 비밀번호를 변경한 마지막 일자

-h : 도움말



출처: http://kimttthhh.tistory.com/entry/사용자-계정-비밀번호-만료 [나만의 공간]

-M (max) : 최대 사용기간

-W (warn) : 사용기간 만료 몇 일전 경고 또는 알림.

-I (inactive) : 만료 후 잠금상태 대기 (일종의 유예기간)

-E [YYYY-MM-DD] : 사용자가 사용할 수 있는 계정의 유효기간

-l (list) : 사용자 계정의 현재 설정을 표시

-d 0 : 다음 로그인시 암호 업데이트를 강제 수행

-d : 사용자가 비밀번호를 변경한 마지막 일자

-h : 도움말



출처: http://kimttthhh.tistory.com/entry/사용자-계정-비밀번호-만료 [나만의 공간]

-m (min) : 최소 사용기간

-M (max) : 최대 사용기간

-W (warn) : 사용기간 만료 몇 일전 경고 또는 알림.

-I (inactive) : 만료 후 잠금상태 대기 (일종의 유예기간)

-E [YYYY-MM-DD] : 사용자가 사용할 수 있는 계정의 유효기간

-l (list) : 사용자 계정의 현재 설정을 표시

-d 0 : 다음 로그인시 암호 업데이트를 강제 수행

-d : 사용자가 비밀번호를 변경한 마지막 일자

-h : 도움말



출처: http://kimttthhh.tistory.com/entry/사용자-계정-비밀번호-만료 [나만의 공간]

반응형