selinux를 리눅스 우분투에 설치하는 것은 매우 쉽다.

하지만 한가지 명심 해야하는 것은 selinux의 차단률이 매우 높기 때문에 apt (Advanced Packaging Tool : 우분투의 고급 패키지 관리 툴)가 enforcing 상태에서는 제대로 동작하지 않는 다는 것이다.


만약 패키지 설치가 필요하다면 selinux의 상태를 enforcing에서 'permissive'로 바꾸어 주어야 마땅하다.

만약 그렇지 않다면 apt postinst(패키징 설치시 동작하는 필요 스크립트)가 제대로 작동 하지 못하고 리턴 오류가 연달아 발생할 것이다.

리눅스 우분투에서의 설치 방법은


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>

// 일반 레파시토리에서 selinux를 설치 한다.


user@user-test:~$ sudo apt install selinux


-> 콘솔창에서 사용권 계약에 대한 내용이 뜨면 '동의(Agree)'


// 하위 스크립트 오류 발생하니 dpkg --configure로 잡아줌


user@user-test:~$ sudo dpkg --configure -a


// 재부팅 한다.


user@user-test:~$ sudo reboot


// 재부팅 후 selinux가 enable (자동 양호) 상태인지를 확인한다.


user@user-test:~$ sestatus

    {
    SELinux status:                 enabled
    SELinuxfs mount:                /sys/fs/selinux
    SELinux root directory:         /etc/selinux
    Loaded policy name:             ubuntu
    Current mode:                   permissive
    Mode from config file:          permissive
    Policy MLS status:              enabled
    Policy deny_unknown status:     allowed
    Max kernel policy version:      30
    }
-> 상황목록이 위와 같이 제대로 뜨면 정상적으로 설치된 것이다.

// enforcing 으로 전환을 테스트 한다.

user@user-test:~$ sudo setenforce 1
user@user-test:~$ sestatus
    {
    SELinux status:                 enabled
    SELinuxfs mount:                /sys/fs/selinux
    SELinux root directory:         /etc/selinux
    Loaded policy name:             ubuntu
    Current mode:                   enforcing
    Mode from config file:          permissive
    Policy MLS status:              enabled
    Policy deny_unknown status:     allowed
    Max kernel policy version:      30
    }
-> 여기까지 했다면 귀하의 pc에는 selinux가 정상적으로 설치되고 작동 되고 있는 것이며 'setenforce 1' 명령으로 currunt mode가 'permissive'에서 'enforcing'으로 바뀐 것을 확인 할수가 있다.


     
하지만 명심해야 하는 것은 selinux가 깔려 있다고 해서 부팅시 곧바로 고급 차단 정책인 'enforcing'이 바로 작동 되는 것은 아니며,
permissive에서 enforcing으로 모드를 바꿔저야 완전한 차단 정책이 적용 되는 것이다.

뿐만 아니라 또 앞서 말했듯이 소프트웨어를 설치 하는 과정인 apt를 활용 하려면 'permissive' 로써 정책을 변경해 줘야만 한다.


enforcing -> permissive 변경 하는 방법



-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


user@user-test:~$ sudo setenforce 0 




영상을 통하여 확인해 보도록 하자.



도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


그리고 글에 부족한 점이 있거나 틀린 점, 더 궁금한 부분이 있는 것 같다면 꼭 댓글로 알려 주시 감사 하겠습니다.

         






+ Recent posts