Centos8: Selinux блокирует запуск службы Samba

Запуск моей службы Samba4 с помощью systemctl заблокирован. Журнал аудита показывает:

type=AVC msg=audit(1606428851.446:87): avc:  denied  { execute } for  pid=1748 comm="(samba)" 
name="samba" dev="dm-0" ino=1462831 scontext=system_u:system_r:init_t:s0 
tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=0

Установка политики Selinux на «разрешающую» решает проблему .... но это не полное решение.

Samba была собрана локально. Это не репо-пакет. Как я понимаю, мне нужно вручную включить его исполняемый путь в Selinux. Но как я могу это сделать?

Файл определения службы выглядит так:

[Unit]
Description=Samba Active Directory Domain Controller
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/samba/sbin/samba -D
PIDFile=/usr/local/samba/var/run/samba.pid
ExecReload=/bin/kill -HUP $MAINPID

[Install]
WantedBy=multi-user.target
0
задан 29 November 2020 в 23:21
1 ответ

В дополнение к ручной компиляции Samba (почему??!?) вы также переместили вместо копирования двоичный файл на место в /usr/local. Таким образом, он сохранил свой тип SELinux user_home_t, применяемый к файлам в домашних каталогах пользователей.

Простой restorecon это исправит.

Конечно, поскольку вы собрали Samba вручную (опять же, ПОЧЕМУ?), многие другие ее файлы будут находиться в местах, которые SELinux не ожидает, поэтому у вас, вероятно, возникнут дополнительные проблемы.

1
ответ дан 29 November 2020 в 20:40

Теги

Похожие вопросы