← Documents Documentation/admin-guide/LSM/apparmor.rst GitHub 원문 ↗

Linux 6.18.37 · Administration / LSM

AppArmor

AppArmor profile 기반 MAC, Kconfig·boot parameter enable 방법과 project resource를 설명합니다.

Source pathDocumentation/admin-guide/LSM/apparmor.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

AppArmor

apparmor.rst:1-13

task profile과 unconfined DAC 상태를 설명합니다.

설정

apparmor.rst:14-39

Kconfig, CONFIG_LSM과 command-line enable·disable을 안내합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 ========
2 AppArmor
3 ========
4
5 What is AppArmor?
6 =================
7
8 AppArmor is MAC style security extension for the Linux kernel. It implements
9 a task centered policy, with task "profiles" being created and loaded
10 from user space. Tasks on the system that do not have a profile defined for
11 them run in an unconfined state which is equivalent to standard Linux DAC
12 permissions.
13
14 How to enable/disable
15 =====================
16
17 set ``CONFIG_SECURITY_APPARMOR=y``
18
19 If AppArmor should be selected as the default security module then set::
20
21 CONFIG_DEFAULT_SECURITY_APPARMOR=y
22
23 The CONFIG_LSM parameter manages the order and selection of LSMs.
24 Specify apparmor as the first "major" module (e.g. AppArmor, SELinux, Smack)
25 in the list.
26
27 Build the kernel
28
29 If AppArmor is not the default security module it can be enabled by passing
30 ``security=apparmor`` on the kernel's command line.
31
32 If AppArmor is the default security module it can be disabled by passing
33 ``apparmor=0, security=XXXX`` (where ``XXXX`` is valid security module), on the
34 kernel's command line.
35
36 For AppArmor to enforce any restrictions beyond standard Linux DAC permissions
37 policy must be loaded into the kernel from user space (see the Documentation
38 and tools links).
39
40 Documentation
41 =============
42
43 Documentation can be found on the wiki, linked below.
44
45 Links
46 =====
47
48 Mailing List - apparmor@lists.ubuntu.com
49
50 Wiki - http://wiki.apparmor.net
51
52 User space tools - https://gitlab.com/apparmor
53
54 Kernel module - git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor
55

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

AppArmor란 무엇인가

1-13

AppArmor는 Linux kernel용 MAC-style security extension입니다. task-centered policy를 구현하며 userspace에서 task profile을 만들어 load합니다.

profile이 정의되지 않은 task는 unconfined state로 실행되며 standard Linux DAC permission과 같습니다.

Enable·disable 방법

14-39

AppArmor를 build하려면 `CONFIG_SECURITY_APPARMOR=y`로 설정합니다.

default security module로 선택하려면 다음 값을 설정합니다.

 CONFIG_DEFAULT_SECURITY_APPARMOR=y

`CONFIG_LSM` parameter가 LSM 순서와 선택을 관리합니다. AppArmor, SELinux, Smack 같은 major module 중 `apparmor`를 list의 첫 major module로 지정하십시오.

kernel을 build한 뒤 AppArmor가 default가 아니라면 kernel command line에 `security=apparmor`를 전달해 enable할 수 있습니다.

AppArmor가 default라면 `apparmor=0, security=XXXX`로 disable할 수 있습니다. `XXXX`는 유효한 security module입니다.

standard Linux DAC를 넘어 restriction을 enforce하려면 userspace에서 kernel로 policy를 load해야 합니다.