ACL이란?
접근제어목록(Access Control List)을 설정한 것으로, 파일이나 디렉토리에 특정 사용자나 그룹에게만 일정권한을 부여하는 것이다.
그럼 왜 ACL를 이용하여 접근 권한을 설정하는 이유는 무엇일까?
chmod명령어는 시스템에 존재하는 모든사용자에게 권한을 부여한다.
하지만 ACL기능을 이용하면 내가 원하는 특정 사용자에게 권한을 부여 할 수 있다.
특정 사용자에게 권한 주기
root 계정으로 /tmp 경로에 root.txt이라는 파일을 만들어보자
getfacl root.txt로 해당 파일의 정보(접근권한 정보등)를 확인해본다. 퍼미션이 770으로 설정된 상태라는 것을 알 수 있다.
u2이라는 계정으로 접속하여 root.txt에 접근한 결과 접근이 거부된 것을 알 수 있다. 이제 우리는 특정 사용자(u2)에게 접근권한을 주도록 하자.
setfacl -m user:u2:r root.txt명령어로 통하여 해당 u2라는 계젱에 읽기(r)권한을 부여하자.
권한 설정 후 다시 u2 계정으로 접속하여 root.txt파일에 접근한 결과 root.txt파일을 읽을 수 있게 된다.
root.txt 파일 정보를 확인 한 결과 u2:r--이라는 권한이 부여된 것을 알 수 있다.
디렉토리 폴더에 생기는 모든파일에 특정 사용자에게 권한을 부여하기
/tmp안에 mytemp라는 특정 디렉토리를 만든 후 이 디렉토리안에 생성하는 모든 파일을 특정사용자만 접근 하도록 설정을 해보자.
setfacl -m d:user:u2:rw /tmp로 설정을 하면 특정 사용자(u2)는 따로 권한 설정없이 모든 파일에 접근이 가능하다.
확인 결과 u2계정에 접속하여 mytemp안에 있는 아무 파일에 접근이 가능한 것을 알 수 있다.
권한 없애 주기
만약 특정사용자 권한을 없애주고 싶으면 -x user:u1 [파일이름]으로 설정해주면 권한을 없애 줄 수 있다.
또한 권한을 설정한 모든 사용자의 권한을 없애고 싶으면 --remove-all명령어를 이용하면 된다.
'LINUX 운영체제 보안' 카테고리의 다른 글
CentOS ping 무응답 설정 (0) | 2019.11.12 |
---|---|
파일암호화 - 비대칭키 암호화 생성 방법 (0) | 2019.10.28 |
리눅스 - SetUID, SetGID,Sticky Bit (0) | 2019.10.21 |
CentOS - find 명령어 사용하기 (0) | 2019.10.21 |
CentOS su, su - (1) | 2019.10.07 |
댓글