나는 학생입니다. 소스에서 컴파일하는 전략을 사용하고 싶습니다.
정책을 컴파일한 후 다음과 같은 오류 메시지가 나타납니다.
SELinux 정책을 어떻게 컴파일하고 적용하는지 알려주세요.
systemd[1]: Unable to fix SELinux security context of /run/systemd/journal/dev-log: Permission denied
systemd[1]: Unable to fix SELinux security context of /run/systemd/journal/socket: Permission denied
:
systemd-journald[529]: Faild to open /run/systemd/journal/kernelseqnum, ignoring: Permission denied
:
audit: backlog limit exceeded
audit: backlog limit exceeded
audit: backlog limit exceeded
audit: backlog limit exceeded
audit: backlog limit exceeded
:
제가 실행한 프로그램은 아래와 같습니다.
Fedora 26 (linux4.11.8-300)
1) yumdownloader --source selinux-policy
2) rpm -ivh selinux-policy-3.13.1-260.8.fc26.src.rpm
3) rpmbuild -bi ~/rpmbuild/SPEC/selinux-policy.spec --define "BUILD_STRICT 0" --define "BUILD_MLS 0"
4) cd ~/rpmbuild/BUILD/selinux-3.13.1/
5) vi build.conf
----
TYPE = mcs
NAME = test
DISTRO = redhat
UNK_PERMS = allow
DIRECT_INITRC = y
MONOLITHIC = n
UBAC = n
CUSTOM_BUILDOPT =
MLS_SENS = 16
MLS_CATS = 1024
MCS_CATS = 1024
QUIET = n
----
6) make install-src
7) cd /etc/selinux/test/src/policy
8) make load
9) touch /.autorelabel
10) edit /etc/selinux/config file
11) reboot
12) "audit:backlog limit exceeded" continues to be outputted
버퍼 크기를 늘렸지만 변경되지 않았습니다.
/etc/audit/audit.rules
# Set buffer size
-b 8192
답변1
여기에서 볼 수 있듯이 실제로 정책을 컴파일하고 설치하지 않습니다.
정책을 컴파일하려면 다음을 수행합니다.
- yumdownloader --source selinux-policy
- rpm -ivh selinux-policy-3.13.1-260.8.fc26.src.rpm
- rpm 빌드-bp~/rpmbuild/SPEC/selinux-policy.spec --define "BUILD_STRICT 0" --define "BUILD_MLS 0" #Fedora 패치를 사용하여 코드 패치
- CD ~/rpmbuild/BUILD/selinux-3.13.1/
- vi build.conf
TYPE = mcs NAME = test DISTRO = redhat UNK_PERMS = allow DIRECT_INITRC = y MONOLITHIC = n UBAC = n CUSTOM_BUILDOPT = MLS_SENS = 16 MLS_CATS = 1024 MCS_CATS = 1024 QUIET = n
- 구성
- 만들다
- make install 설치 헤더 파일 만들기
- 짐을 싣다
- touch/.autorelabel
- /etc/selinux/config 파일을 편집합니다.
- 재시작