홈 > 서버 > 리눅스
리눅스

아파치 웹서버 사용자별 웹 디렉토리 설정

사랑으로 0 165

[Linux] 아파치 웹서버 사용자별 웹 디렉토리 설정

- Per-user web directories 

■ 환경

○ OSE : CentOS 7 minimal 
 Apache web server : 2.4.6

 아파치 웹 서버 설정

 사용자별 웹 디렉토리 사용하도록 설정 : vi  /etc/httpd/conf.d/userdir.conf

<IfModule  mod_userdir.c>
    UserDir  disabled  root
    UserDir  public_html
</IfModule> 

<Directory "/home/*/public_html">
    AllowOverride FileInfo AuthConfig Limit Indexes
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>

     - root에 대해서는 사용자 웹 디렉토리를 사용하지 않도록 해 보안위협을 예방한다. 
    
- Indexes 옵션을 제거해 외부 접속자가 임의의 파일에 접근하는 것을 예방한다.

 PHP 페이지를 위해 웹서버 설정파일에 index.php 추가 : vi  /etc/httpd/conf/httpd.conf

<IfModule  dir_module>

    DirectoryIndex  index.html  index.php

</IfModule> 

 SELinux 설정 : 웹서버가 사용자별 웹 디렉토리에 접근할 수 있도록 권한을 설정한다.
    - 상태확인 : getsebool  httpd_enable_homedirs
       -- 확인결과 : httpd_enable_homedirs --> off
    - 상태설정 : setsebool -P httpd_enable_homedirs  on 
    - 상태확인 : getsebool  httpd_enable_homedirs
       -- 확인결과 : httpd_enable_homedirs --> on

 아파치 웹서버 재시작
    - service httpd restart

 사용자별 웹 디렉토리 설정
 접근권한 설정
    - mkdir  /home/www/public_html
    - chmod  711  /home/www
    - chmod  755  /home/www/public_html

 SELinux 설정 : 웹서버가 사용자의 컨텐츠에 대한 접근을 할 수 있도록 설정한다.
    - 설정 : chcon  -R  -t  httpd_user_content_t  /home/www/public_html
    - 확인 : ls  -aldZ  /home/www/public_html
 
   ※ httpd가 httpd_t type으로 실행되며 httpd_user_content_t (typealias), httpd_sys_content_t type으로
      설정된 파일만 접근할 수 있다.

0 Comments
Service
등록된 이벤트가 없습니다.
글이 없습니다.
글이 없습니다.
Comment
글이 없습니다.
Banner
등록된 배너가 없습니다.
000.0000.0000
월-금 : 9:30 ~ 17:30, 토/일/공휴일 휴무
런치타임 : 12:30 ~ 13:30

Bank Info

국민은행 000000-00-000000
기업은행 000-000000-00-000
예금주 홍길동
Facebook Twitter GooglePlus KakaoStory KakaoTalk NaverBand