관리자는 /etc/fstab 파일을 편집할 수 있지만 관리자는 fstab 파일을 편집할 수 없기를 원합니다.
두 관리자 모두 다른 모든 관리 작업에 액세스해야 합니다.
가능합니까?
나는 "sudo"가 액세스를 허용하는 파일을 어떻게든 설정해야 한다고 가정합니다. 아니면 관리자가 아닌 계정을 만든 다음 fstab-access라는 그룹을 만들고 해당 그룹에 사용자 중 한 명을 추가하고 해당 그룹에 대한 권한을 설정합니까? 나는 올바른 길을 가고 있습니까?
답변1
그들에게 모든 것에 대한 액세스 권한을 부여하면 분명히 모든 베팅이 취소됩니다. 그러나 사용자가 다른 항목을 편집하지 않고도 특정 파일을 편집하도록 허용할 수 있습니다. 예를 들어:
user ALL = sudoedit /etc/fstab
사용자는 /etc/fstab만 편집할 수 있습니다.
답변2
사용자에게 편집만 허용하려는 경우 /etc/fstab
다음과 같은 다양한 방법을 사용할 수 있습니다.
- 액세스 제어 목록이 활성화되어 있는지 확인
acl
하고(항목의 옵션) ./etc/fstab
/
setfacl -m user:joe:rw /etc/fstab
sudoers
규칙 추가 : 실행visudo
및 줄 추가joe ALL = sudoedit /etc/fstab
누가 무엇을 할 수 있는지 감사하기 쉽기 때문에 sudo 접근 방식을 권장합니다.
그러나 사용자에게 편집을 허용하면 /etc/fstab
setuid 루트 바이너리가 이식된 외부 또는 루프 파일 시스템을 마운트할 수 있는 항목을 추가하여 간접적으로 루트 권한을 얻을 수 있습니다.
사용자에게만 편집을 허용하는 것은 다소 이상합니다 fstab
. 사용자가 이동식 장치를 마운트할 수 있도록 하려면 다음을 사용하세요.pmount
(또는 데스크톱 환경에 의존).
사용자가 허용 목록에 없는 명령을 루트로 실행하도록 허용하는 경우("기타 모든 관리 작업") 해당 사용자가 특정 파일을 편집하는 것을 방지할 수 없습니다. 어느 시점에서는 이 사람들을 신뢰할지 결정해야 합니다. 귀하의 컴퓨터를 관리할 수 있는 사람을 신뢰하지 않는다면 권한을 부여하지 마십시오(다른 컴퓨터, 가상 머신 등을 사용하도록 허용). 당신이 정말로 그들을 신뢰한다면, 루트로 만들고 특정 파일이 금지되어 있다고 말하십시오.
답변3
관리자가 사용해야 할 모든 유틸리티를 열거하려고 한다면 한동안 키보드 앞에 앉아 있어야 할 것입니다.
기술적으로 이러한 욕구는리눅스 기능개발되었습니다. 원하는 작업을 수행하려면 사용자에게 특정 기능을 부여한 다음 fstab
제한된 user2에게 동일한 쓰기 권한을 부여하지 않고 user1에게만 쓰기 권한(ACL 또는 기타 수단을 통해)을 부여할 수 있습니다(user2에 CAP_CHOWN 또는 CAP_DAC_OVERRIDE가 없는지 확인). , 그러나 현재 기능 상태(사용자 공간이 어떻게 개발되었는지 측면에서)를 고려하면 아마도 가치보다 작업이 더 많을 것입니다.
책임을 "루트 역할" 시나리오로 전환할 수 없으면 다양한 작업에 루트 계정을 사용하는 것으로 제한됩니다. 이로 인해 다른 사용자에게 필요한 모든 가능한 도구를 시스템에 알려주는 앞서 언급한 문제가 발생합니다(간접적으로 조작하지 않기를 바랍니다 fstab
).
특정 사용자를 관리자로 신뢰할 수 있는지 결정하는 것이 더 좋습니다.