SELinux: разрешить запуск сценария bash в строгом режиме - PullRequest
0 голосов
/ 06 сентября 2011

У меня есть сервер RHEL 5.5 с SELinux, установленным в режиме strict.В данный момент система находится в режиме permissive.Я пытаюсь написать простой сценарий оболочки, скажем setest.sh, и хочу явно запустить его из терминала bash.

В разрешающем режиме я могу это сделать, но он зарегистрирован как отклоненный в аудитеlogs:

Sep  6 12:49:58 rhel-vm-003 kern 5 kernel: type=1400 audit(1315293598.916:45417): 
avc:  denied  { execute_no_trans } for  pid=26602 comm="bash" path="/var/tmp/setest.sh"
dev=sda1 ino=1017036 scontext=system_u:system_r:sshd_t:s0-s0:c0.c1023
tcontext=system_u:object_r:test_policy_exec_t:s0 tclass=file

Это, очевидно, означает, что я не смогу запустить скрипт из консоли bash после переключения SELinux в принудительный режим.Какое правило перехода разрешить / домен я должен добавить в свои модули политики, чтобы оно могло работать при применении SELinux?

Regards,
Nagendra UM

1 Ответ

0 голосов
/ 30 декабря 2011

Когда я запускаю поиск в Интернете по запросу 'test_policy_exec_t', единственный удар, который я получаю, - это тема, поэтому я предполагаю, что вы создали собственный контекст. Просто измените контекст на что-то нормальное, и вы сможете запускать сценарии.

На моем сервере RHEL 5 с sepolicy по умолчанию следующее ничего не генерирует в журнале аудита.

 $ echo -e '#!/bin/sh\necho Hi!' > /var/tmp/setest.sh
 $ ls -Z /var/tmp/setest.sh
 -rw-r--r--  polgar users user_u:object_r:tmp_t            /var/tmp/setest.sh
 $ /var/tmp/setest.sh
 Hi!
...