Linux

Linux (ACL , sudo)

5_jinseok12 2018. 1. 30. 15:16
728x90

ACL (Access Control List / 접근 제어 목록)

 

- 파일에 특정한 사용자, 그룹에 특별한 권한을 부여하는 기능.

 

파일에 설정된 접근 제어 목록을 확인

- #getfacl [파일]

파일에 접근 제어 목록을 변경

- #setfacl[옵션][규칙][파일]

- m (modify)수정

- x  삭제

 


             규칙 

사용자
   (1) user:[UID]:rwx
   (2) u :[계정명]:7  rwx=7
  그룹
   (1) group:[GID]:rwx
   (2) g:[그룹명]:7
  기타사용자
   (1) other:rwx
   (2) o:7

 

 

#cd /practice/test 로 이동한 뒤 #ll을 통해 저번에 만들어 놓은 디렉토리들을 확인한다.

 

 

#getfacl S-LV01 을 출력한 값.

file : S-LV01       -> ls -l 허가권/소유권

owner : root       -> 소유 계정

group : S-GROUP-> 소유 그룹

user ::---            -> 사용자 허가권

group::rwx          -> 그룹 허가권

other ::---           -> 기타 사용자 허가권

 

#setfacl -m user:I-USER1:rwx S-LV1
-> 사용자 계정(user) I-USER1 계정이 S-LV1 디렉토리에 모든권한(rwx)을 갖도록 설정한다.

+가 있으면 추가된 기능이 있는것이다. 접근제어목록을 확인해볼 필요가 있다

 

 

I-USER1의 계정이 S-LV02, S-LV03 디렉토리에 접근이 가능하도록 설정한다.

S-LV02 에는 읽기와 실행만 가능하도록

S-LV03 에는 쓰기와 실행만 가능하도록 설정한다.

위에 사진과 같이 +가 되는것을 확인할 수 있다. 

 

I-GROUP에  속해있는 S-LV04 디렉토리의 모든 권한을 가지도록 설정

I-GROUP에  속해있는 S-LV05 디렉토리의 모든 권한을 가지도록 설정

(cd/x , touch/w , ls/x)를 통해 확인해본다.

 

 

sudo (Substitute User Do / Super User Do)


(1) 다른 사용자의 권한으로 명령어를 실행한다
(2) 슈퍼 유저(root)의 권한으로 명령어를 실행한다
   - 특정 계정에게 명령어 사용 권한을 부여한다

   /etc/sdoers // sudo 주 설정 파일

 

 


sudo 권한 설정 방법

(1)#vi /etc/sudoers // vi 편집기를 사용
   장점: vim으로 편집이 가능하기 때문에 보기가 편함
   단점: 오타나 잘못된 문법을 사용해도 저장이 되어 찾기가 힘들다
(2)#visudo  // vi 편집기를 사용(명령어)
   장점: 오타나 잘못된 문법을 확인할 수 있다
   단점: 가독성이 떨어진다 (일반vi사용)

 

UserManager의 계정을 만들어준다. 그런 후 vi /etc/sudoers을 입력한다.

 

 

UserManager라는 계정이 Server-A에서 NOPASSWD... 같이 실행한다.


세션을 추가한 후 UserManager 계정으로 로그인하여 sudo 명령어를 이용하여 등록된 명령어 실행하기
이때 패스워드 입력없이 실행되는 지 확인

 

 

 

 

이렇게 UserManager의 계정에서 useadd  TEST-100 을 입력하게 되면 허가 거부라고 뜬다.

이럴때 sudo[명령어]를 사용한다. sudo 는 root의 권한으로 명령어를 실행한다는 의미이다.

- 경고 메세지가 출력된 호 동의한다는 의미로 패스워드를 입력해야 명령어가 실행이 되며
  로그인 후 최소 1번 인증한 후에는 패스워드를 반복해서 입력하지 않아도 된다.

 

 

 

설정에 내용이 너무 길거나 복잡한 경우 사용할 수 있는 alias 지시어 사용

명령어 alias : Cmnd_Alias[이름]
계정   alias : User_Alias[이름]
//이외에 Hostname alias 등 여러가지 alias 종류가 있다

 

alias를 사용하지 않을 땐 위와 같이 입력하면 된다. 하지만 불필요하게 중복되는 것이 많기 때문에 alias를 사용하는 것을 추천한다.

 

 

특정 그룹에 sudo권한을 부여
 %[그룹명][호스트네임]=[옵션][명령어1]...[명령어N]
 
 BLACKPINK 그룹에 속한 계정이 시스템 종료 명령어를 사용할 수 있는 권한을 부여한다

 

 

반응형

'Linux' 카테고리의 다른 글

Linux 프로세스(백그라운드,포그라운드)  (1) 2018.02.01
Linux 패스워드 정책  (0) 2018.01.31
Linux 권한(속성)  (0) 2018.01.29
Linux 소유권,허가권,UMASK  (0) 2018.01.26
Linux 소유권 허가권  (0) 2018.01.26