24.5. systemd 실패 문제 해결 IMA 정책 로드
systemd가 /etc/ima/ima-policy 를 로드하지 않으면 시스템이 중단되고 systemd[1] 오류가 표시됩니다. 실행 정지.
[ 5.829882] ima: policy update failed [ 5.830094] ima: signed policy file (specified as an absolute pathname) required [!!!!!!] Failed to load IMA policy. … [ 5.859994] systemd[1]: Freezing execution.
[ 5.829882] ima: policy update failed
[ 5.830094] ima: signed policy file (specified as an absolute pathname) required
[!!!!!!] Failed to load IMA policy.
…
[ 5.859994] systemd[1]: Freezing execution.
시스템을 복구하는 데 사용할 수 있는 세 가지 방법이 있습니다.
24.5.1. Secure Boot 해제 링크 복사링크가 클립보드에 복사되었습니다!
서명되지 않았기 때문에 정책을 로드할 수 없는 경우 다음 예와 유사한 오류가 표시될 수 있습니다.
이 문제를 해결하려면 Secure Boot를 일시적으로 끄고 UEFI 시스템의 사용자 정의 서명된 IMA 정책 배포를 수행하여 문제를 해결할 수 있습니다.
24.5.2. init=/bin/bash 커널 매개변수로 시스템 부팅 링크 복사링크가 클립보드에 복사되었습니다!
init=/bin/bash 커널 매개변수를 사용하여 시스템을 부팅하려면 다음 단계를 사용합니다.
-
부트로더 항목을 수정하고
init=/bin/bash커널 매개변수를 추가합니다. 쉘에 액세스한 후 쓰기 권한으로 시스템을 다시 마운트합니다.
mount -o remount,rw /
# mount -o remount,rw /Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/ima/ima-policy의 이름을/etc/ima/ima-policy.bak로 변경합니다.mv /etc/ima/ima-policy /etc/ima/ima-policy.bak
# mv /etc/ima/ima-policy /etc/ima/ima-policy.bakCopy to Clipboard Copied! Toggle word wrap Toggle overflow 시스템을 재부팅합니다.
echo 1 > /proc/sys/kernel/sysrq printf "s\nb" > /proc/sysrq-trigger
# echo 1 > /proc/sys/kernel/sysrq # printf "s\nb" > /proc/sysrq-triggerCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/ima/ima-policy.bak의 모든 문제를 해결하고 정책을 로드할 수 있는지 확인합니다.echo /etc/ima/ima-policy.bak >> /sys/kernel/security/integrity/ima/policy
# echo /etc/ima/ima-policy.bak >> /sys/kernel/security/integrity/ima/policyCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/ima/ima-policy.bak의 이름을/etc/ima/ima-policy로 변경합니다.mv /etc/ima/ima-policy.bak /etc/ima/ima-policy
# mv /etc/ima/ima-policy.bak /etc/ima/ima-policyCopy to Clipboard Copied! Toggle word wrap Toggle overflow
24.5.3. initcall_blacklist=init_ima 커널 매개변수로 시스템 부팅 링크 복사링크가 클립보드에 복사되었습니다!
시스템이 중단된 경우 systemd[1]: 실행 해제, initcall_blacklist=init_ima 커널 매개변수로 시스템을 부팅하여 IMA 정책을 비활성화할 수 있습니다.
-
부트 로더 항목을 수정하고
initcall_blacklist=init_ima커널 매개변수를 추가합니다. /etc/ima/ima-policy의 이름을/etc/ima/ima-policy.bak로 변경합니다.mv /etc/ima/ima-policy /etc/ima/ima-policy.bak
# mv /etc/ima/ima-policy /etc/ima/ima-policy.bakCopy to Clipboard Copied! Toggle word wrap Toggle overflow 시스템을 재부팅합니다.
systemctl reboot
# systemctl rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/ima/ima-policy.bak의 모든 문제를 해결하고 정책을 로드할 수 있는지 확인합니다.echo /etc/ima/ima-policy.bak >> /sys/kernel/security/integrity/ima/policy
# echo /etc/ima/ima-policy.bak >> /sys/kernel/security/integrity/ima/policyCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/ima/ima-policy.bak의 이름을/etc/ima/ima-policy로 변경합니다.mv /etc/ima/ima-policy.bak /etc/ima/ima-policy
# mv /etc/ima/ima-policy.bak /etc/ima/ima-policyCopy to Clipboard Copied! Toggle word wrap Toggle overflow