리눅스 setenforce
IT 위키
더 많은 작업
SELinux의 동작 모드를 Enforcing 또는 Permissive로 바꾼다.
- 변경은 즉시 적용되지만 재부팅하면 /etc/selinux/config의 설정으로 돌아간다.
- SELinux가 Disabled 상태이면 사용할 수 없으며, Disabled로 전환할 수도 없다.
- 경로 : /usr/sbin/setenforce
- 패키지 : libselinux-utils
- root 권한이 필요하다.
# setenforce [Enforcing | Permissive | 1 | 0]
- 1 또는 Enforcing : Enforcing 모드로 전환한다. 정책 위반을 차단한다.
- 0 또는 Permissive : Permissive 모드로 전환한다. 정책 위반을 차단하지 않고 기록만 한다.
- /etc/selinux/config 파일의 SELINUX= 값을 enforcing, permissive, disabled 중 하나로 수정하고 재부팅한다.
- 부트 로더의 커널 매개변수로 enforcing=0(Permissive로 부팅) 또는 selinux=0(SELinux 비활성화)을 지정할 수도 있다.
# 문제 분석을 위해 일시적으로 Permissive 모드로 바꾸고 확인한다. # setenforce 0 # getenforce Permissive # 다시 Enforcing 모드로 되돌린다. # setenforce 1 # 재부팅 후에도 Permissive를 유지하도록 설정 파일을 수정한다. # sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config # SELinux가 비활성화된 상태에서 실행하면 오류가 난다. # setenforce 1 setenforce: SELinux is disabled
- setenforce 0은 Permissive, setenforce 1은 Enforcing이라는 점이 자주 출제된다.
- setenforce로는 Disabled로 전환할 수 없으며, 재부팅 후에는 /etc/selinux/config의 값이 적용된다.
- 서비스가 SELinux 때문에 동작하지 않을 때는 모드를 끄기보다 불리언(setsebool -P)이나 파일 컨텍스트(semanage fcontext, restorecon)를 조정하는 것이 바람직하다.
- SELinux
- getenforce 명령어 : 현재 SELinux 모드를 출력한다.
- GRUB
- 리눅스 시스템 보안