RedHat 시스템관리 / / 2023. 3. 23. 14:30

SELinux ③setsebool, getsebool 명령어로 SELinux 정책 조정

반응형

 

 

setsebool 명령어

 

setsebool 명령어는 SELinux 정책 규칙을 활성화/비활성화 해서

 

애플리케이션 별로 선택적으로 조정할 수 있습니다.

 

 

 

이번 포스팅에서는 특정 사용자의 홈 디렉터리에 있는 웹 콘텐츠를 게시할 수 있도록

 

Apache 웹 서비스를 구성하겠습니다.

 

 

 

우선 Apache를 설치하고 방화벽도 열어둡시다.

 

 

# Apach 설치
dnf install -y httpd

# 방화벽 80포트 열고 재실행
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload


# Apach 실행
systemctl enable --now httpd

 

 

 

1. root: 설정 파일 편집

 

 

root 계정에서 /etc/httpd/conf.d/userdir.conf 파일을 편집해서

 

사용자가 홈 디렉터리에 있는 웹 콘텐츠를 게시할 수 있도록 합니다.

 

 

 

 

 

2. 사용자: index.html 파일 생성 및 권한 변경

 

 

useradd 명령어로 사용자 a를 만들고 로그인했습니다.

 

 

Apache에 게시할 html 파일을 a 사용자의 홈 디렉토리에 만듭니다.

 

 

 

 

 

 

Apache에서 이 디렉토리의 파일을 사용하려면

 

/home/student 디렉터리의 파일과 하위 디렉터리를 공유할 수 있어야 합니다.

 

 

 

 

권한이 700으로 되어있습니다.

 

디렉토리에 액세스할 수 있도록 /home/a 디렉토리 권한을 변경해봅시다.

 

chmod 711 ~
ls -ld ~

 

 

 

 

 

 

3. root: getsebool 명령어로 bool 확인,

setsebool 명령어로 bool 설정

 

 

 

다시 root 계정으로 돌아와서

 

httpd 서비스의 홈 디렉터리에 대한 액세스를 제한하는 부울이 있는지 확인합니다.

 

 

getsebool -a | grep home

 

 

 

 

httpd_enable_homedirs --> off

 

엑세스 제한 상태임을 볼 수 있습니다.

 

 

 

setsebool 명령을 사용해서 httpd 서비스의 홈 디렉터리에 영구적으로 액세스할 수 있도록 합시다.

 

 

 

setsebool -P httpd_enable_homedirs on

 

 

 

4. 웹 브라우저에서 확인

 

 

 

 

 

 

 

 

 

 

 

[위 내용은 Redhat의 공인 교육과정 내용 중 일부를 정리한 글입니다.]

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유