it-swarm-ko.tech

루트 사용자도 삭제할 수없는 파일 생성 방법

루트 사용자도 삭제할 수없는 파일을 만드는 방법은 무엇입니까?

13
Kumar

간단한 대답 : 당신은 할 수 없습니다. 루트는 모든 것을 할 수 있습니다.

"i"속성을 chattr (적어도 ext {2,3,4}에있는 경우)으로 설정하면 파일을 변경할 수 없지만 루트는 속성 설정을 해제하고 파일을 삭제할 수 있습니다.

더 복잡하고 추악한 해결 방법 : 루트로 변경할 수없는 디렉토리를 원격 서버에두고 NFS 또는 SMB를 통해 마운트합니다. 서버가 로컬 루트 계정을 잠그는 쓰기 권한을 제공하지 않는 경우. 물론 로컬 루트 계정은 파일을 로컬로 복사하고, 원격 항목을 마운트 해제하고, 복사본을 제자리에 놓고 변경할 수 있습니다.

루트가 파일을 삭제하지 못하도록 잠글 수 없습니다. 파일을 그대로 유지하기 위해 루트를 신뢰할 수 없다면 기술적 문제가 아닌 사회적 문제가있는 것입니다.

33
tante

CD-ROM에 넣으세요! ;)

(댓글이어야하지만 댓글을 달 수 없습니다 ...)

34
laurent

읽기 전용 파일 시스템에 파일을 넣으십시오. 이것은 원격 FS 루트가 더 이상 루트가 아닌 경우, CD-ROM 또는 쓰기 방지 할 수있는 이동식 장치 (예 : SD 카드) 일 수 있습니다.

15
mouviciel

오래 전에 SELFDESTRUCT라는 파일을 삭제하려고하면 호출 프로세스가 종료되는 커널 패치 (2.2.ancient)를 작성했습니다. 이것은 우발적 인 "rm -rf *"로부터 보호되었습니다.

2
pjc50

chattr +i를 사용하여 파일을 변경 불가능하게 만들 수 있습니다.

물론 루트 액세스 권한이있는 숙련 된 사용자는 chattr -i를 사용하여 변경 불가능한 속성을 제거한 다음 파일을 삭제할 수 있지만 여기에 나열된 액세스를 차단하려는 다른 시도도 취소 할 수 있습니다.

나는 chattr 이 작업을 수행하는 올바른 Unix 방법이라고 주장합니다.

1
jeremyjjbrown