본문 바로가기

리눅스

lsattr 명령어와 chattr 명령어 - 파일 속성 설정

반응형

lsattr 명령어와 chattr 명령어 - 파일 속성 설정

chattr 사용 형식

명령어 위치 : /usr/bin/chattr

사용 형식 : chattr [-RV] [-v 설정버전] [+-=설정모드] 대상 파일들

 

chattr에서 사용하는 [설정모드]는 다음과 같습니다.

  • + : 지정한 속성을 부여합니다 (+기호가 사용되면 지정한 속성을 부여한다는 의미입니다)
  • - : 지정한 속성을 제거합니다( -기호가 사용되면 부여된 속성을 제거한다는 의미입니다)
  • = : 원래 파일이 가지고 있던 그 속성만을 유지하게 합니다.

그리고 chattr에서의 -RVv옵션에 대한 설명은 다음과 같습니다.

  • -R : 서브디렉토리이하까지 그 속성을 변경할 수 있습니다.
  • -V : 자세한 출력모드를 제공합니다.
  • -v version : 지정된 파일에 버전을 설정할 수 있습니다.

또한 chattr명령어에서 무엇보다 중요한 것은 각 속성을 정확하게 이해하는 것입니다.

 

즉, chattr로 설정할 수 있는 파일(디렉토리)의 속성에는 다음과 같은 것들이 있습니다.

 

아래 각 속성의 의미를 정확하게 이해하시고 여러분들께서 관리하고 계시는 리눅스서버의 파일보안을 위하여 chattr로 설정(+)하시거나 또는 제거(-)하실 수 있습니다.

 

아래 속성의 의미를 파악하신 후에 이어지는 실제 사용예들을 보시기 바랍니다.

  • a 속성
    • 해당 파일을 추가만 할 수 있습니다. 당연히 root만이 속성변경이 가능합니다. 파일보안을 위해 주로 사용하는 속성입니다.
  • c 속성
    • 이 속성이 설정된 파일은 커널에 의해 디스크상에 자동적으로 압축된 상태로 저장이 되어 있습니다. 파일을 읽을 경우에는 압축을 해제한 상태로 되돌려주며 쓰기시에는 디스크에 저장하기 전에 파일을 압축합니다.
  • d 속성
    • 이 속성이 설정된 파일은 dump로 백업이 되지않습니다.
  • i 속성
    • 이 속성이 지정되어 있다면 해당파일의 변경, 삭제, 이름변경뿐 아니라 파일추가및 링크파일도 만들 수 없게 됩니다. 변경추가가 거의 없는 부팅관련 파일들에 설정하면 부팅이 되지않는 문제로 인한 시스템장애를 줄일 수 있습니다. 또한 a 속성과 함께 필자가 주로 사용하는 속성이기도 합니다.
  • s 속성
    • 이 속성이 설정된 파일은 파일삭제가 될 경우에 해당블럭이 모두 0으로 되어 버리고 디스크에 다시 쓰기가 발생합니다.
  • S 속성
    • 이 속성이 설정된 파일은 변경이 될 경우에 디스크동기화가 일어나는 효과를 그대로 누릴 수 있습니다.
  • u 속성
    • 이 속성을 가진 파일이 삭제가 되었을 경우에는 그 내용이 저장이 되며 삭제되기 전의 데이터로 복구가 가능해집니다.

따라서 chattr로 파일과 디렉토리의 속성을 지정하는 주된 이유는 허가되지않은 사용자가 파일의 변경을 못하게하는 설정을 하여 파일보안을 하기위한 것입니다.

사용 예시

lsattr /etc/sudoers
$ lsattr /etc/sudoers
----i----------- /etc/sudoers
chattr -i /etc/sudoers
lsattr /etc/sudoers
$ lsattr /etc/sudoers
---------------- /etc/sudoers
chattr +i /etc/sudoers
lsattr /etc/sudoers
$ lsattr /etc/sudoers
----i----------- /etc/sudoers

 

728x90
반응형