저는 ACL을 사용하여 다양한 Apache 인스턴스와 다양한 관리자 그룹의 다양한 웹 루트에 대한 액세스를 제어합니다. admins-web22
특정 웹사이트의 관리자와 apache-web22
특정 Apache 인스턴스의 사용자를 위한 Unix 그룹이 있습니다 . 네트워크 루트에 설정된 권한은 다음과 같습니다.
# file: web22
# owner: root
# group: root
user::rwx
user:apache-web22:r-x
group::rwx
group:webmaster:rwx
group:admins-web22:rwx
mask::rwx
other::---
default:user::rwx
default:user:apache-web22:r-x
default:group::rwx
default:group:admins-web22:rwx
default:mask::rwx
default:other::r-x
fred
의 회원인 사용자가 있습니다 admins-web22
. 이 사용자는 위에서 설명한 대로 디렉터리에 대한 전체 읽기 및 쓰기 액세스 권한을 갖습니다. 이것은 잘 작동합니다. 그러나 이 사용자는 apache-web22
특정 파일 및 디렉터리에 대한 쓰기 권한을 부여할 수 없으며 이는 중요합니다(예: 웹 관리자가 Drupal용 업로드 디렉터리를 설정하려고 함). 명령 은 setfacl
"작업이 허용되지 않습니다"를 제공합니다.
제 질문은 누가 권한 부여를 사용할 수 있는지 setfacl
, 그리고 그룹의 사용자가 admins-web22
( ) 권한을 직접 변경하도록 하려면 어떻게 해야 합니까 apache-web22
?
저는 ext4 파티션인 Debian Wheezy를 실행하고 있습니다.
답변1
매뉴얼 setfacl
페이지에서는 누가 권한을 부여할 수 있는지 설명합니다.
파일 소유자 및 가능한 프로세스에는
CAP_FOWNER
파일의 ACL을 수정할 수 있는 권한이 부여됩니다. 이는 파일 모드에 액세스하는 데 필요한 권한과 유사합니다. (현재 Linux 시스템에서는 루트만이 이 기능을 가진 유일한CAP_FOWNER
사용자입니다.)
따라서 해당 사용자가 소유한 파일 fred
에만 사용할 수 있습니다 setfacl
. 특정 보안 요구 사항에 따라 구성원이 를 admins-web22
사용하여 실행하도록 허용할 수 있으며, 이를 통해 가 소유한 파일의 ACL을 변경할 수 있습니다.setfacl
apache-web22
sudo
apache-web22