메뉴 건너뛰기

CentOS

Ubuntu에서는 파일 권한과 아파치 설정만 하면 바로 파일 접근이 가능합니다.

 

그런데 CentOS에서는 별도 건드린것도 없고 파일 권한 자체도 755라든지 읽기 가능한 권한으로

 

설정했는데도 불구하고 안되는 경우가 있어요ㅠㅠ

(아파치 설치 후 아무 설정도 하지 않음)

 

안되는 이유는 SELinux 때문인데요

 

기본적으로 CentOS에서는 SELinux 설정이 enforcing이 되어있어 보안이 활성화되어있습니다.

 

(SELinux 확인 위치)

 

#vi /etc/selinux/config

 

 

이를 사용 안함으로 하면 편리하게 해결할 수 지만!!

(config 파일을 열어 disabled로 변경

 

이는 기본적으로 설정해놓은 보안을 해지하므로 실 업무에는 별로 추천하지 않을 것이라고

생각되므로 내가 원하는 파일에 접근 가능하도록 권한을 부여하는 방법을 이제부터 설명하도록 하겠습니다.

 

 

접근을하려고 하는 파일 경로가 /var/www/html/test.xml

이라고 하고 작업을 하도록 하겠습니다. (root 권한으로 작업하고 apache 권한으로 변경)

 

 

#cd /var/www/html

# ls -Z

 

 

이렇게 하면 분명 해당 파일에 대해 권한이 

unconfined_u:object_r:httpd_sys_content_t:s0 되어 있는 것을 확인할 수 있습니다.

(ls -Z는 보안 환경을 같이 보여주는 명령어입니다)

 

이를 아래 명령어를 통해 변경을 해주면 되겠습니다.

 

 

#chcon -R -h -t httpd_sys_content_t ./test.xml 

 

 

이 명령어를 수행하게 되면 보안 권한이

system_u:object_r:httpd_sys_content_t:s0 변경되고 이렇게되면 접근이 가능해집니다 ^^



출처: http://blog.engintruder.com/133 [I.K.Picture & IT Info.]

위로