]> git.ipfire.org Git - thirdparty/systemd.git/blob - units/systemd-machined.service.in
namespace: implicitly adds DeviceAllow= when RootImage= is set
[thirdparty/systemd.git] / units / systemd-machined.service.in
1 # SPDX-License-Identifier: LGPL-2.1+
2 #
3 # This file is part of systemd.
4 #
5 # systemd is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published by
7 # the Free Software Foundation; either version 2.1 of the License, or
8 # (at your option) any later version.
9
10 [Unit]
11 Description=Virtual Machine and Container Registration Service
12 Documentation=man:systemd-machined.service(8)
13 Documentation=https://www.freedesktop.org/wiki/Software/systemd/machined
14 Wants=machine.slice
15 After=machine.slice
16 RequiresMountsFor=/var/lib/machines
17
18 [Service]
19 ExecStart=@rootlibexecdir@/systemd-machined
20 BusName=org.freedesktop.machine1
21 WatchdogSec=3min
22 CapabilityBoundingSet=CAP_KILL CAP_SYS_PTRACE CAP_SYS_ADMIN CAP_SETGID CAP_SYS_CHROOT CAP_DAC_READ_SEARCH CAP_DAC_OVERRIDE CAP_CHOWN CAP_FOWNER CAP_FSETID CAP_MKNOD
23 MemoryDenyWriteExecute=yes
24 RestrictRealtime=yes
25 RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6
26 SystemCallFilter=@system-service @mount
27 SystemCallErrorNumber=EPERM
28 SystemCallArchitectures=native
29 LockPersonality=yes
30 IPAddressDeny=any
31
32 # Note that machined cannot be placed in a mount namespace, since it
33 # needs access to the host's mount namespace in order to implement the
34 # "machinectl bind" operation.