SELinux
Fedora CoreOS viene con SELinux habilitado en modo reforzado.
Cambios de directiva
Fedora CoreOS admite el cambio de valores booleanos de directiva y la adición de módulos SELinux. Sin embargo, no incluimos semanage y no hay ningún componente en Butane ni soporte directo en Ignition para realizar estas operaciones. Consulte fedora-coreos-tracker#701 para obtener más detalles.
Aquí hay un ejemplo para poner un booleano de SELinux a través de una unidad systemd que ejecuta en cada arranque:
variant: fcos
version: 1.7.0
systemd:
units:
- name: setsebool.service
enabled: true
contents: |
[Service]
Type=oneshot
ExecStart=setsebool container_manage_cgroup true
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Restablecer la directiva SELinux a lo predeterminado
Si encuentras un defecto inesperado de SELinux, puede ser debido a la modificación de la directiva local.
systemd-resolved[755]: Enlace simbólico incorrecto /run/systemd/resolve/stub-resolv.conf: Permiso denegado
audit[755]: AVC avc: denegado { create } para pid=755 comm="systemd-resolve" name=".#stub-resolv.confc418434d59d7d93a" scontext=system_u:system_r:systemd_resolved_t:s0 tcontext=system_u:object_r:systemd_resolved_var_run_t:s0 tclass=lnk_file permissive=0
Puede comprobar el estado de la directiva SELinux con:
$ sudo ostree admin config-diff | grep -E 'selinux/.*/policy'
M selinux/targeted/active/policy.linked
M selinux/targeted/active/policy.kern
M selinux/targeted/policy/policy.31
A selinux/targeted/policy/policy.30
Si esta instrucción devuelve un listado de apuntes entonces su directiva de SELinux ha sido modificada desde lo predeterminado.
Tiene dos opciones para restablecer la directiva de SELinux a lo predeterminado:
-
Re-desplegar el sistema desde el último artefacto de Fedora CoreOS.
-
Restaurar manualmente la directiva por defecto
Para restaurar a la directiva por defecto:
-
Realice un respaldo de su directiva actual:
sudo cp -al /etc/selinux{,.bak} -
Restaure la directiva por defecto de SELinux:
sudo rsync --archive --links --verbose --delete /usr/etc/selinux/ /etc/selinux/Tras esta instrucción, la salida desde
sudo ostree admin config-diff | grep -E 'selinux/.*/policy'no indicaría más que la directiva está modificada. -
Finalmente, recargue la directiva de SELinux o reinicie su sistema:
sudo semodule -R
Inhabilitar SELinux
No admite inhabilitar SELinux en Fedora CoreOS. Consulte rpm-ostree#971. Consulte además la discusión en fedora-coreos-docs#439.
Ajustes de SELinux en modo permisivo
No recomendamos configurar todo el sistema en modo permisivo (i.e. set enforce 0). En su lugar, puede configurar SELinux como permisivo para una sola aplicación creando un Módulo de directivas de CIL.
Por ejemplo para el dominio wireguard_t:
$ cat permissive-wireguard.cil
(typepermissive wireguard_t)
Entonces puedes cargar este módulo con:
sudo semodule -i permissive-wireguard.cil
Y quitarlo una vez que este no se necesita más con:
sudo semodule -r permissive-wireguard
Además consulte la discusión en fedora-coreos-docs#439.
Want to help? Learn how to contribute to Fedora Docs ›