Linux 권한 중 속성에 대해 알아보자
#which cat 은 위치경로를 알고 싶을때 사용한다.
rwx r-x r-x 를 통해 755 라는것을 알 수 있다.
#chmod u+s /bin/cat : user의 x자리에 s가 들어온다. cat을 소유한 root로 동작.
위에 출력 값을 통해 바뀐것을 알 수 있다.
SetUID
- SetUID를 잘 이용하면 시스템 운영에 도움이 되지만 잘못사용될 경우 root 권한을 악용하거나,
탈취하는 방법으로 사용될 수 있기 때문에 꼭 필요한 파일에서만 설정해야 한다.
- 평소 SetUID가 설정된 파일을 문서화하여 관리하거나 기억하는것이 중요하다.
bin 디렉토리에 위치한 SetUID가 설정된 파일의 목록을 가지고 있는 파일 생성하기
#ls -l | grep "^-..[sS]" : grep으로 인해 첫번째 행의 시작이 - 이며 s나 S가 들어잇는 것을 출력한다.
cat 원상복구 시키기
#chmod u-s /bin/cat : 사용자 권한에 포함된 s를 빼겠다.
#mkdir /practice/SetGID : SetGID 디렉토리를 만든다.
#cd /practice/SetGID : SetGID 로 이동
#touch file1 : SetGID에 file-1의 파일을 생성
#ll : 생성한 파일의 소유권 확인(root root 인것을 알 수 있다)
#chmod 2755 /practice/SetGID
#chown root:BLACKPINK /practice/SetGID
#ll /practice
이렇게 설정을 해놓은 뒤 file2과 file3를 출력한다.
계정은 root 계정이지만 그룹은 BLACKPINK인 것을 알 수 있다.
기존 설정후
/practice/SetGID /practice/SetGID
소유권 root:root root:BLACKPINK
허가권 rwx r-x r-x rwx r-s r-x
file1(root:root) file2(root:BLACKPINK)
file3(root:BLACKPINK)
#cd /practice/SetGID
#ll
SetGID 디렉토리에 설정한 후 소유 그룹을 변경하게 되면,
해당 그룹에 속한 사용자들이 파일을 공유하거나 접근이 가능하도록
할 수 있다.
Sticky
- 모든 사용자가 모든 허가권(777)0을 가지고 있는 공유 디렉토리에 설정
- Sticky가 설정된 디렉토리에서는 "파일의 소유자"만 파일을 삭제할 수 있다.
기호 o+t (기타사용자other에 + t를 준다)
temp1과 temp2의 디렉토리를 만든다.
#ll /practice
drwxrwxrwx. 2 root root 4096 2018-09-05 12:07 temp1
drwxrwxrwt. 2 root root 4096 2018-09-05 12:07 temp2
기타사용자 허가권 필드에 x -> t로 바뀌게 된다.
file1은 777이라는 것을 알 수 있다 (rwx를 통해)
rm을 사용하려면 디렉토리에 쓰기 권한이 있어야 한다. 하지만 쓰기권한이 있다고 하더라도
Sticky가 있으면 삭제만큼은 절대 안된다.
root 계정은 무시할 수 있지만 일반 사용자들은 삭제가 안된다. 파일을 소유한 소유자만 삭제가 가능하다.
속성
- 허가권/소유권과는 다른 개념으로 파일을 관리할 수 있다.
#chattr : 속성 변경
+ 속성 부여
- 속성 제거
#lsattr : 속성 확인
file1에 아무 속성이 없다.
#chattr +i file1 : file1에 i속성을 부여한다.
i 속성(immutable) : 파일의 이름 변경, 내용 수정, 삭제 등 변경이 불가능하도록 만드는 속성
i속성이 부여됐기 때문에 삭제를 할 수 없다고 출력한다.
#chattr -i file1 : i 속성 제거
#lsattr file1 : 속성 확인
#chattr +a file1: a 속성 추가
a 속성( append only / 추가만 가능) : 기본값은 i 속성과 동일하나 추가되는 형태만 허용한다
마찬가지로 삭제를 할 수 없다고 출력
하지만 위에 사진과 같이 a로 인해 추가는 할 수 있다.
'Linux' 카테고리의 다른 글
Linux 패스워드 정책 (0) | 2018.01.31 |
---|---|
Linux (ACL , sudo) (0) | 2018.01.30 |
Linux 소유권,허가권,UMASK (0) | 2018.01.26 |
Linux 소유권 허가권 (0) | 2018.01.26 |
Linux 사용자 계정 관리2 (0) | 2018.01.25 |