저는 Raspberry에서 ARM용 Fedora Server 28을 실행하고 있는데 Pi-Hole 설치 중에 SELinux가 "Force"로 설정되어 있다는 경고 메시지를 받았기 때문에 Pi-Hole 관리 페이지를 사용할 수 없었습니다.
이것이 실제로 그렇습니다.http://pi.hole/빈 페이지를 반환하고 SELinux를 비활성화하거나 /etc/sysconfig/selinux의 Pi-Hole 권한으로 설정하지 않으면 전혀 작동하지 않습니다.
문제는 Pi-Hole이 강제 상태에서 예상대로 작동하도록 허용하는 정책을 어떻게 만들 수 있느냐는 것입니다.
편집 #1
나는 이것을 찾았다질문:
기본 정책으로 시작하고 허용 모드에서 실행하여 수정해야 할 사항을 확인하세요. 그런 다음 전략을 수정하여 잠재적인 문제를 해결하세요. 그런 다음 다시 엄격한 시행을 시작합니다.
grep hole /var/log/audit/audit.log
많은 comm="php-cgi" 및 comm="dnsmasq" 거부를 출력합니다.
이것이 내 문제를 해결할 수 있을까요?
$ grep hole /var/log/audit/audit.log | audit2allow -M mypolicy
******************** IMPORTANT ***********************
To make this policy package active, execute:
# /usr/sbin/semodule -i mypolicy.pp
답변1
Pi-Hole의 GitHub에서:
Pi-hole은 다음 기술을 활용하는 광고 인식 DNS/웹 서버입니다.
dnsmasq - 경량 DNS 및 DHCP 서버
내 문제를 해결했습니다.
SELINUX=permissive
/etc/sysconfig/selinux에서
reboot
# grep dnsmasq_t /var/log/audit/audit.log | audit2allow -m dnscache > dnscache.te
# grep dnsmasq_t /var/log/audit/audit.log | audit2allow -M dnscache
semodule -i dnscache.pp
확인하다:
semodule -l | grep dns
그 다음에:
SELINUX=enforcing
/etc/sysconfig/selinux에서
reboot