IT이야기/유용한 IT 지식

리눅스 권한

무지개 보드 2023. 1. 18. 21:32
반응형

리눅스는 권한(Permission) 관리를 통해 자신의 파일 또는 디렉토리를 더 강력하게 보호하고 제어하는 기능을 제공합니다.

 

소유자 권한, 그룹 권한, 일반 사용자 권한으로 나누어지는데요.

 

특수한 경우에 사용할 수 있는 Set-UID / Set-GID / Sticky bit 라는 권한 설정 또한 가능합니다.

 

오늘은 간단하게 리눅스의 권한에 대해 살펴보겠습니다.

 

 

 

Linux Permission


d r w x r - x r - x

이러한 문자를 디렉토리 내 파일 확인을 하다 보신 적 있으시죠?

 

각 문자를 이렇게 끊어서 보시면 됩니다.

 

d  /  r w x r - x r- -

 

먼저 맨 앞의 d는 해당 파일이 일반 파일인지(-) , 디렉토리(d)를 의미하는지를 나타냅니다.

파일 타입에 따라 관리되는 방식이 크게 달라지죠.

디렉토리일 경우 변경/삭제하는데도 여러 옵션과 권한을 요구합니다.

 

 

파란색의 rwx는파일 소유자의 권한을 의미합니다.

이때 r은 read(4) , w는 write(2), x는 execute(1) 을 의미하는데요.

옆에 괄호로 적은 숫자는 문자를 이진수로 표현할 때 의미하는 바가 됩니다.

rwx 권한을 가진다면 읽기, 쓰기, 실행 권한 모두를 가진 것이지요.

 

 

초록색의 r-x는 그룹의 권한을 의미하며, 해당 그룹에 속한 사용자는 모두 명시된 권한을 사용할 수 있습니다.

이 때는 읽기 및 실행 권한만을 소유한 것이겠죠.

 

 

노란색의 r--는 기타 다른 사용자의 권한을 의미합니다.

소유자도, 그룹에 속한 사용자도 아닌 경우로 이 때는 읽기 권한만을 소유한 것입니다.

 

 

소유자 또는 root 계정은 해당 파일의 권한을 변경할 수 있습니다.

 

chmod [option] [permission] [file]

chown [소유자]:[그룹] [file]

 

chmod 옵션은 해당 파일의 권한을 변경할 수 있는 명령어 입니다.

 

소유자가 일반 사용자 또는 그룹에 대한 권한을 변경하고자 할 때 사용할 수 있습니다.

이 때 접근권한을 2진수로 간단하게 표현할 수 있는데요.

아까 말씀드린 read = 4 / write = 2 / execute = 1 을 기억하셔야합니다.

 

chmod 754 file.txt

이렇게 설정하게 되면 파일의 권한이 어떻게 될까요?

 

-rwxr-xr-w 로 변경됩니다.

숫자 하나마다 순서대로 소유자/그룹/사용자 에 대한 권한을 설정하게 됩니다.

부여하고 싶은 권한이 있으면 그 권한에 해당하는 숫자를 더하고,

부여하지 말아야 하는 권한이 있다면 반대로 그 권한에 해당하는 숫자를 더하지 않으면 됩니다.

 

아주 간단하죠?

 

 

또한 파일 소유자 및 그룹을 변경하고 싶은 경우에는

chown

명령어를 사용하시면 됩니다.

 

chown 소유자:그룹 파일명

 

하나의 파일에는 다음과 같이 간단하게 사용 가능하며 원하는 소유자와 그룹으로 변경할 수 있습니다.

이 또한 다양한 옵션이 존재하니 상황에 맞게 사용하시면 됩니다.

 

 


 

 

linux에는 소유자, 그룹, 다른 사용자를 위한 읽기, 쓰기, 실행 권한을 제어 가능하나 추가 특수한 경우를 위한 권한이 존재합니다.

 

 

  • ​Set-UID 권한 비트

파일에 해당 비트가 설정되면 사용자가 파일을 실행했을 때 해당 사용자 권한이 아닌 소유자 권한으로 실행됩니다.

ls -l로 확인 시 소유자 실행 권한이 s 로 표기되어있습니다.

-rwsr-xr-x       file

chmod u+s file 명령어 또는 숫자 방식으로 설정할때는 가장 앞에 4를 붙여주어 설정합니다. (ex, chmod 4755 file)

 

 


 

 

  •  Set-GID 권한 비트

사용자의 그룹이 아닌 해당 파일의 그룹으로 실행됩니다.

-rwxrwsr-x     file

chmod g+s file 명령어 또는 숫자 방식으로 설정할 때는 가장 앞에 2를 붙여주어 설정합니다. (ex, chmod 2755 file)

 


 

 

  • Sticky 비트

디렉토리에만 적용이 가능합니다.

모든 사용자가 접근 가능하나, 삭제는 원하지 않을 경우 이를 사용하며, 삭제는 오직 파일을 소유한 소유자만 삭제 가능합니다.

Sticky 비트는 t / T 로 표기되며, 사용자의 실행 권한이 있을 경우 t / 실행 권한이 없을 경우 T 로 표기됩니다.

 

drwxr-xr-t  dir

 

chmod o+t dir 명령어 또는 숫자 방식으로 설정할 때는 가장 앞에 1을 붙여주어 설정합니다. (ex, chmod 1755 dir)

 

 

 

 

 

 

 


 

 

오늘은 간단하게 권한에 대해 살펴보았습니다.

 

리눅스의 최고 장점을 잘 이용하여 파일마다 적절하게 권한을 설정해 데이터를 보호하는 모두가 되길 바랍니다.

반응형