SELinux 위반을 피하기 위해 재귀 chown을 수행하는 방법

SELinux 위반을 피하기 위해 재귀 chown을 수행하는 방법

a.sh 스크립트에서:

chown -R root:group parent-folder/

chown -R root:group parent-folder/*

이 스크립트는 루트 사용자로 실행됩니다.

chown이 실행되면 다음 SELinux 위반이 표시됩니다.

chown :type=1400 audit(0.0:7):avc:deny{dac_override} for feature=1 scontext=u:r:scriptName:s0 tcontext=u:r:scriptName:s0 tclass=feature 허가=1

위의 dac_override를 방지하려면 어떻게 해야 합니까? (dac_override SE 정책을 적용하고 싶지는 않습니다.)

답변1

파일에 액세스하고 수정하려면 필요한 DAC 권한이 있는 사용자/그룹으로 프로세스를 실행해야 합니다. CAP_CHOWN해당 기능이 없으면 프로세스에서 파일 소유자를 변경할 수 없습니다 . 파일 소유자는 그룹을 프로세스가 속한 다른 그룹으로 변경할 수 있습니다. 또한 재귀에는 chown관련 디렉터리에 대한 (적어도) 검색 권한이 필요합니다.

자세한 내용은 매뉴얼 페이지를 참조하세요.chown(2)그리고capabilities(7).

관련 정보