Jupyterhub с selinux

Я пытаюсь развернуть jupyterhub на centos 7 с включенным selinux. Я выбираю Sudospawner для создания новых серверов ноутбуков jupyter. Когда я пытаюсь войти в jupyterhub, selinux регистрирует следующую ошибку: процесс не запускается:

python3.4[17888]: pam_selinux(login:session): Error sending audit message.
python3.4[17888]: pam_keyinit(login:session): Unable to change GID to 1000 temporarily
python3.4[17888]: pam_keyinit(login:session): Unable to change GID to 1000 temporarily
dbus[633]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.1187" (uid=1003 pid=17888 comm="/usr/bin/python3.4 /usr/bin/jupyterhub ") interface="org.freedesktop.login1.Manager" member="CreateSession" error name="(unset)" requested_reply="0" destination="org.freedesktop.login1" (uid=0 pid=632 comm="/usr/lib/systemd/systemd-logind ")
dbus-daemon[633]: dbus[633]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.1187" (uid=1003 pid=17888 comm="/usr/bin/python3.4 /usr/bin/jupyterhub ") interface="org.freedesktop.login1.Manager" member="CreateSession" error name="(unset)" requested_reply="0" destination="org.freedesktop.login1" (uid=0 pid=632 comm="/usr/lib/systemd/systemd-logind ")
python3.4[17888]: pam_systemd(login:session): Failed to create session: Access denied

Я получаю эту ошибку, даже когда запускаю jupyterhub как root. Когда я отключаю selinux, все работает нормально.

Как мне настроить selinux, чтобы Sudospawner мог устанавливать uid и запускать ноутбук-сервер в контексте пользователя?

0
задан 26 March 2017 в 12:53
1 ответ

Первое, что вам нужно сделать, это собрать все соответствующие сообщения SELinux. Переведите вашу систему в разрешающий режим

setenforce 0

Используйте приложение как обычно, а затем просмотрите сообщения, связанные с SELinux, в /var/log/audit/audit.log*

grep denied /var/log/audit/audit.log*

. Вы можете передать результаты в различные утилиты, чтобы получить представление о том, что требуется

grep denied /var/log/audit/audit.log* | audit2why

Анализ, который может быть полезным. Он может предложить вам настроить различные логические значения. Вы также можете просмотреть результаты через audit2allow

grep denied /var/log/audit/audit.log* | audit2allow

. Это также скажет вам, что вам нужно сделать. Вы можете создать локальный модуль

grep denied /var/log/audit/audit.log* | audit2allow -M local-module

, а затем использовать его

semodule -i local-module.pp

. Не забудьте вернуть SELinux в принудительное исполнение.

1
ответ дан 4 December 2019 в 16:19

Теги

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