1firstboot_selinux(8)       SELinux Policy firstboot       firstboot_selinux(8)
2
3
4

NAME

6       firstboot_selinux  -  Security  Enhanced Linux Policy for the firstboot
7       processes
8

DESCRIPTION

10       Security-Enhanced Linux secures the firstboot  processes  via  flexible
11       mandatory access control.
12
13       The  firstboot processes execute with the firstboot_t SELinux type. You
14       can check if you have these processes running by executing the ps  com‐
15       mand with the -Z qualifier.
16
17       For example:
18
19       ps -eZ | grep firstboot_t
20
21
22

ENTRYPOINTS

24       The  firstboot_t  SELinux  type can be entered via the firstboot_exec_t
25       file type.
26
27       The default entrypoint paths for the firstboot_t domain are the follow‐
28       ing:
29
30       /usr/sbin/firstboot, /usr/share/firstboot/firstboot.py
31

PROCESS TYPES

33       SELinux defines process types (domains) for each process running on the
34       system
35
36       You can see the context of a process using the -Z option to ps
37
38       Policy governs the access confined processes have  to  files.   SELinux
39       firstboot  policy is very flexible allowing users to setup their first‐
40       boot processes in as secure a method as possible.
41
42       The following process types are defined for firstboot:
43
44       firstboot_t
45
46       Note: semanage permissive -a  firstboot_t  can  be  used  to  make  the
47       process  type  firstboot_t  permissive. SELinux does not deny access to
48       permissive process types, but the AVC (SELinux  denials)  messages  are
49       still generated.
50
51

BOOLEANS

53       SELinux  policy is customizable based on least access required.  first‐
54       boot policy is extremely flexible and has several booleans  that  allow
55       you to manipulate the policy and run firstboot with the tightest access
56       possible.
57
58
59
60       If you want to allow all daemons the ability to  read/write  terminals,
61       you must turn on the daemons_use_tty boolean. Disabled by default.
62
63       setsebool -P daemons_use_tty 1
64
65
66
67       If you want to deny user domains applications to map a memory region as
68       both executable and writable, this  is  dangerous  and  the  executable
69       should be reported in bugzilla, you must turn on the deny_execmem bool‐
70       ean. Enabled by default.
71
72       setsebool -P deny_execmem 1
73
74
75
76       If you want to deny any process from ptracing or  debugging  any  other
77       processes,  you  must  turn  on  the  deny_ptrace  boolean.  Enabled by
78       default.
79
80       setsebool -P deny_ptrace 1
81
82
83
84       If you want to allow any process  to  mmap  any  file  on  system  with
85       attribute  file_type,  you must turn on the domain_can_mmap_files bool‐
86       ean. Enabled by default.
87
88       setsebool -P domain_can_mmap_files 1
89
90
91
92       If you want to allow all domains write to kmsg_device, while kernel  is
93       executed  with  systemd.log_target=kmsg parameter, you must turn on the
94       domain_can_write_kmsg boolean. Disabled by default.
95
96       setsebool -P domain_can_write_kmsg 1
97
98
99
100       If you want to allow all domains to use other domains file descriptors,
101       you must turn on the domain_fd_use boolean. Enabled by default.
102
103       setsebool -P domain_fd_use 1
104
105
106
107       If  you  want to allow all domains to have the kernel load modules, you
108       must  turn  on  the  domain_kernel_load_modules  boolean.  Disabled  by
109       default.
110
111       setsebool -P domain_kernel_load_modules 1
112
113
114
115       If you want to allow all domains to execute in fips_mode, you must turn
116       on the fips_mode boolean. Enabled by default.
117
118       setsebool -P fips_mode 1
119
120
121
122       If you want to enable reading of urandom for all domains, you must turn
123       on the global_ssp boolean. Disabled by default.
124
125       setsebool -P global_ssp 1
126
127
128
129       If  you  want  to control the ability to mmap a low area of the address
130       space, as configured by /proc/sys/vm/mmap_min_addr, you  must  turn  on
131       the mmap_low_allowed boolean. Disabled by default.
132
133       setsebool -P mmap_low_allowed 1
134
135
136
137       If  you  want to allow confined applications to use nscd shared memory,
138       you must turn on the nscd_use_shm boolean. Disabled by default.
139
140       setsebool -P nscd_use_shm 1
141
142
143
144       If you want to disable kernel module loading,  you  must  turn  on  the
145       secure_mode_insmod boolean. Enabled by default.
146
147       setsebool -P secure_mode_insmod 1
148
149
150
151       If  you want to boolean to determine whether the system permits loading
152       policy, setting enforcing mode, and changing boolean values.  Set  this
153       to  true  and  you  have to reboot to set it back, you must turn on the
154       secure_mode_policyload boolean. Enabled by default.
155
156       setsebool -P secure_mode_policyload 1
157
158
159
160       If you want to allow unconfined executables to make their  heap  memory
161       executable.   Doing  this  is  a  really bad idea. Probably indicates a
162       badly coded executable, but could indicate an attack.  This  executable
163       should   be   reported  in  bugzilla,  you  must  turn  on  the  selin‐
164       uxuser_execheap boolean. Disabled by default.
165
166       setsebool -P selinuxuser_execheap 1
167
168
169
170       If you want to  allow  all  unconfined  executables  to  use  libraries
171       requiring  text  relocation  that  are not labeled textrel_shlib_t, you
172       must turn on the selinuxuser_execmod boolean. Enabled by default.
173
174       setsebool -P selinuxuser_execmod 1
175
176
177
178       If you want to allow unconfined executables to make  their  stack  exe‐
179       cutable.   This  should  never, ever be necessary. Probably indicates a
180       badly coded executable, but could indicate an attack.  This  executable
181       should  be reported in bugzilla, you must turn on the selinuxuser_exec‐
182       stack boolean. Enabled by default.
183
184       setsebool -P selinuxuser_execstack 1
185
186
187
188       If you want to support X userspace object manager, you must turn on the
189       xserver_object_manager boolean. Enabled by default.
190
191       setsebool -P xserver_object_manager 1
192
193
194

MANAGED FILES

196       The  SELinux process type firstboot_t can manage files labeled with the
197       following file types.  The paths listed are the default paths for these
198       file types.  Note the processes UID still need to have DAC permissions.
199
200       file_type
201
202            all files on the system
203
204

FILE CONTEXTS

206       SELinux requires files to have an extended attribute to define the file
207       type.
208
209       You can see the context of a file using the -Z option to ls
210
211       Policy governs the access  confined  processes  have  to  these  files.
212       SELinux firstboot policy is very flexible allowing users to setup their
213       firstboot processes in as secure a method as possible.
214
215       STANDARD FILE CONTEXT
216
217       SELinux defines the file context types for the firstboot, if you wanted
218       to store files with these types in a diffent paths, you need to execute
219       the semanage command  to  sepecify  alternate  labeling  and  then  use
220       restorecon to put the labels on disk.
221
222       semanage   fcontext   -a   -t   firstboot_etc_t  '/srv/myfirstboot_con‐
223       tent(/.*)?'
224       restorecon -R -v /srv/myfirstboot_content
225
226       Note: SELinux often uses regular expressions  to  specify  labels  that
227       match multiple files.
228
229       The following file types are defined for firstboot:
230
231
232
233       firstboot_etc_t
234
235       -  Set files with the firstboot_etc_t type, if you want to store first‐
236       boot files in the /etc directories.
237
238
239
240       firstboot_exec_t
241
242       - Set files with the firstboot_exec_t type, if you want  to  transition
243       an executable to the firstboot_t domain.
244
245
246       Paths:
247            /usr/sbin/firstboot, /usr/share/firstboot/firstboot.py
248
249
250       Note:  File context can be temporarily modified with the chcon command.
251       If you want to permanently change the file context you need to use  the
252       semanage fcontext command.  This will modify the SELinux labeling data‐
253       base.  You will need to use restorecon to apply the labels.
254
255

COMMANDS

257       semanage fcontext can also be used to manipulate default  file  context
258       mappings.
259
260       semanage  permissive  can  also  be used to manipulate whether or not a
261       process type is permissive.
262
263       semanage module can also be used to enable/disable/install/remove  pol‐
264       icy modules.
265
266       semanage boolean can also be used to manipulate the booleans
267
268
269       system-config-selinux is a GUI tool available to customize SELinux pol‐
270       icy settings.
271
272

AUTHOR

274       This manual page was auto-generated using sepolicy manpage .
275
276

SEE ALSO

278       selinux(8), firstboot(8), semanage(8), restorecon(8), chcon(1),  sepol‐
279       icy(8) , setsebool(8)
280
281
282
283firstboot                          19-04-25               firstboot_selinux(8)
Impressum