You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guides/security/learning_selinux.md
+12-12Lines changed: 12 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,9 +21,9 @@ Before starting, you should know that SELinux is mainly intended for RHEL distri
21
21
22
22
**SELinux** (Security Enhanced Linux) is a Mandatory Access Control system.
23
23
24
-
Before the appearance of MAC systems, standard access management security was based on **DAC** (**D**iscretionary **A**ccess **C**ontrol) systems. An application, or a daemon, operated with **UID** or **SUID** (**S**et **O**wner **U**ser **I**d) rights, which made it possible to evaluate permissions (on files, sockets, and other processes...) according to this user. This operation does not sufficiently limit the rights of a program that is corrupted, potentially allowing it to access the subsystems of the operating system.
24
+
Before the appearance of MAC systems, standard access management security was based on **DAC** (**D**iscretionary **A**ccess **C**ontrol) systems. An application, or a daemon, operated with **UID** or **SUID** (**S**et **O**wner **U**ser **I**d) rights, which made it possible to evaluate permissions (on files, sockets, and other processes...) according to this user. This operation does not sufficiently limit the rights of a corrupted program, potentially allowing it to access the subsystems of the operating system.
25
25
26
-
A MAC system reinforces the separation of confidentiality and integrity information in the system to achieve a containment system. The containment system is independent of the traditional rights system and there is no notion of a superuser.
26
+
A MAC system reinforces the separation of confidentiality and integrity information to achieve a containment system. The containment system is independent of the traditional rights system and there is no notion of a superuser.
27
27
28
28
With each system call, the kernel queries SELinux to see if it allows the action to be performed.
29
29
@@ -39,15 +39,15 @@ The SELinux security context is defined by the trio **identity**+**role**+**doma
39
39
40
40
The identity of a user depends directly on his Linux account. An identity is assigned one or more roles, but to each role corresponds to one domain, and only one.
41
41
42
-
It is according to the domain of the security context (and thus the role) that the rights of a user on a resource are evaluated.
42
+
It is according to the domain of the security context (and thus the role) that user's rights on a resource are evaluated.
43
43
44
44

45
45
46
-
The terms "domain" and "type" are similar. Typically "domain" is used when referring to a process, while "type" refers to an object.
46
+
The terms "domain" and "type" are similar. Typically "domain" refers to a process, while "type" refers to an object.
47
47
48
48
The naming convention is: **user_u:role_r:type_t**.
49
49
50
-
The security context is assigned to a user at the time of his connection, according to his roles. The security context of a file is defined by the `chcon` (**ch**ange **con**text) command, which we will see later in this document.
50
+
The security context is assigned to a user during their connection, according to their roles. The security context of a file is defined by the `chcon` (**ch**ange **con**text) command, which we will see later in this document.
51
51
52
52
Consider the following pieces of the SELinux puzzle:
53
53
@@ -64,7 +64,7 @@ The rights of a process depend on its security context.
64
64
65
65
By default, the security context of the process is defined by the context of the user (identity + role + domain) who launches it.
66
66
67
-
A domain being a specific type (in the SELinux sense) linked to a process and inherited (normally) from the user who launched it, its rights are expressed in terms of authorization or refusal on types linked to objects:
67
+
A domain is a specific type (in the SELinux sense) linked to a process and inherited (normally) from the user who launched it. Its rights are expressed in terms of authorization or refusal on types linked to objects:
68
68
69
69
A process whose context has security __domain D__ can access objects of __type T__.
70
70
@@ -82,7 +82,7 @@ This mechanism is essential since it restricts the rights of a process as much a
82
82
83
83
## Management
84
84
85
-
The `semanage` command is used to manage SELinux rules.
85
+
The `semanage` command manages SELinux rules.
86
86
87
87
```
88
88
semanage [object_type] [options]
@@ -97,9 +97,9 @@ $ semanage boolean -l
97
97
| Options | Observations |
98
98
|---------|-------------------|
99
99
| -a | Adds an object |
100
-
| -d |Delete an object |
101
-
| -m |Modify an object |
102
-
| -l |List the objects |
100
+
| -d |Deletes an object |
101
+
| -m |Modifies an object |
102
+
| -l |Lists the objects |
103
103
104
104
The `semanage` command may not be installed by default under Rocky Linux.
0 commit comments