2015-01-21 12 views
1

Я использую Debian 6 с включенным SELinux.Невозможно скомпилировать Debian RefPolicy для SELinux

Теперь я просто хочу изменить политику по умолчанию и сделать свою политику активной политикой. Для этого я загрузил reflolicy debian и попытался скомпилировать его.

Похоже, rolemap файл не найден. Но rolemap определяется в Makefile.src.

Кроме того, синтаксический анализ /tmp/example.tmp файла не удался при 'introduce()' line:28.

Найти выход марки на ниже:

debian:/opt/policy-src/debian# make -f Makefile.src all Compiling default example module echo "ifdef(\`""example""_per_role_template',\`" > tmp/example.mod.role m4 
-D distro_debian -D direct_sysadm_daemon -D hide_broken_symptoms -D mls_num_sens=16 -D mls_num_cats=1024 -D mcs_num_cats=1024 -D mandatory_mcs rolemap | gawk '/^[[:blank:]]*[A-Za-z]/{ print "gen_require(type " $3 "; role " $1 ";)\nexample_per_role_template(" $2 "," $3 "," $1 ")" }' >> tmp/example.mod.role echo "')" >> tmp/example.mod.role echo "ifdef(\`""example""_per_userdomain_template',\`" >> tmp/example.mod.role echo "errprint(\`Warning: per_userdomain_templates have been renamed to per_role_templates (""example""_per_userdomain_template)'__endline__)" >> tmp/example.mod.role m4 -D distro_debian -D direct_sysadm_daemon -D hide_broken_symptoms -D mls_num_sens=16 -D mls_num_cats=1024 -D mcs_num_cats=1024 -D mandatory_mcs rolemap | gawk '/^[[:blank:]]*[A-Za-z]/{ print "gen_require(type " $3 "; role " $1 ";)\nexample_per_userdomain_template(" $2 "," $3 "," $1 ")" }' >> tmp/example.mod.role echo "')" >> tmp/example.mod.role m4 -D distro_debian -D direct_sysadm_daemon -D hide_broken_symptoms -D mls_num_sens=16 -D mls_num_cats=1024 -D mcs_num_cats=1024 -D mandatory_mcs -s tmp/all_interfaces.conf example.te tmp/example.mod.role > tmp/example.tmp /usr/bin/checkmodule -m tmp/example.tmp -o tmp/example.mod /usr/bin/checkmodule: loading policy configuration from tmp/example.tmp tmp/all_interfaces.conf":28:ERROR 'Building a policy module, but no module specification found. ' at token 'interface' on line 28: interface(myapp_domtrans, 
# /usr/bin/checkmodule: error(s) encountered while parsing configuration make: *** [tmp/example.mod] Error 1 

Как я могу скомпилировать эту политику?

ответ

0

Чтобы добавить my-policy в refpolicy debian, вам необходимо работать с refpolicy (исходные источники) и пакетом debian (содержит файлы примеров).

См. how to work with debian sources. Вместо make вы должны использовать инструменты сборки Debian.

Шаг за шагом:

  • файлы исходного кода для Debian 6 selinux-policy-default
  • запустить dpkg-source -x refpolicy_0.2.20100524-7+squeeze1.dsc
  • Гото "refpolicy-0.2.20100524" каталог и сделать ваши изменения
  • построить новый пакет в Debian dpkg-buildpackage
  • установить новую упаковку dpkg -i ../selinux-policy-default_0.2.20100524-7+squeeze1_all.deb