AppArmor는 프로필을 프로세스와 어떻게 일치시키나요?

AppArmor는 프로필을 프로세스와 어떻게 일치시키나요?

AppArmor 프로필을 프로세스와 어떤 방식으로 일치시킬 수 있나요? 하나는 경로 기반인 것 같습니다(예: 실행 /sbin/dhclient시 적용되는 구성 파일 ). 그러나 이는 구성 파일 에 존재하기 /sbin/dhclient때문입니까 , 아니면 이름이 지정되는 방식 때문입니까 ?/sbin/dhclientsbin.dhclientsbin.dhclient

또한 경로 기반이 아닌 프로필 일치(예: docker-default프로필)의 경우 AppArmor는 프로필을 적용할 프로세스를 어떻게 알 수 있나요?

답변1

AppArmor 구성 파일이 명령의 잘못된 경로를 파일 이름으로 사용하는 것은 단순한 규칙입니다. ~에서man 7 apparmor:

전통적으로 구성 파일은 filename 아래의 파일에 저장되며 , 구성 파일을 보다 쉽게 ​​관리할 수 있도록 경로 이름 ( root 제외 ) 에서 in 을 바꾸는 /etc/apparmor.d/것이 관례입니다 (예: 구성 파일 이름은 )././/usr/sbin/nscdusr.sbin.nscd

프로필 이름에 파일 glob이 포함되어 있으면 해당 glob과 일치하는 파일에 적용됩니다. ~에서AppArmor 핵심 전략 참조:

AppArmor는 첨부 사양을 사용하여 구성 파일에 첨부할 실행 파일을 결정합니다. 대체 프로필 이름이 제공되지 않으면 첨부 사양이 프로필 이름으로도 사용됩니다. 첨부 사양이 지정되지 않으면 프로필 이름을 제공해야 합니다.

AppArmor에서는 프로필 이름이 매우 중요합니다. 사용자가 프로필 규칙 세트와 연결할 수 있는 이름을 제공할 뿐만 아니라 태그 지정, ipc에도 사용되며 이름이 첨부 사양인 경우 프로필이 첨부되는 실행 파일을 결정합니다.

관련 정보