본문 바로가기
서버 Server/웹서버

httpd.conf - 아파치 웹 서버 보안

by #XTRM 2021. 4. 22.
반응형

 

httpd.conf - 아파치 웹 서버 보안

 

>> 특정 IP(대역)를 사용하는 호스트 차단하기
# vi /usr/local/apache/conf/httpd.conf
 
<Directory /usr/local/apache/htdocs>
    Order Allow,Deny
    Deny from 192.168.1
    Allow from all
</Directory>
 
해당 디렉토리에 대한 192.168.1.0 ~ 254 IP의 접근 차단. Forbidden Error 출력.
 
 
>> 특정 IP(대역)을 사용하는 호스트만 허용하기
 # vi /usr/local/apache/conf/httpd.conf
 
<Directory /usr/local/apache/htdocs>
    Order Deny,Allow
    Allow from 192.168.1
    Deny from all
</Directory>
 
해당 디렉토리에 대한 192.168.1.0 ~ 254 IP의 접근만 허용
Order Deny,Allow : 마지막이 우선 Deny < Allow
 
 
>> 서버 사이드 파일 설정 (웹 페이지 차단)
# vi /usr/local/apache/conf/httpd.conf
 
<Files ~ "admin.php">  // <Files ~ ".ext$">
   Order Deny,Allow
   Deny from all
   Allow from 192.168.1.1
</Files>
 
해당 파일에 대한 192.168.1.1 IP의 접근만 허용
 
특정확장자를 서버사이드 언어로 설정
AddType application/x-httpd-php .php .inc .bak .old .c
 
 
>> 대용량 메모리 제한 설정

RLimitMEM 20000000
<Directory /usr/local/apache/htdocs/memory/>
    RLimitMEM 50000000
</Directory>
 
모든 디렉토리에 대한 사용가능 메모리 20MB
해당 디렉토리에 대한 사용가능 메모리 50MB
 
 
>> 폴더 접근 차단 (파일 리스트 출력 차단)
# vi /usr/local/apache/httpd.conf
 
<Directory "/usr/local/apache/htdocs">
   Options IncludesNoExec
</Directory>

 


 

웹 서버 운영시 특정 IP 허용 및 차단해야 되는 경우가 있습니다.  예를 들면 불가피하게 Admin 서비스와 일반 사용자 서비스를 한서버에서 동시에 운영해야 된다면,  Apache의 경우 아래와 같이 IP 차단 및 허용을 할 수 있습니다.

httpd.conf 파일 (가상 호스트를 사용한다면 httpd-vhost.conf)을 아래와 같이 수정해야 합니다.

 

- IP 차단

<directory /주소>
    Order deny,allow
    Deny from 10.10.10.0/24 //10.10.10.0 대역 c클래스 모두차단하기
    Deny from 10.10.20.1 // ip 한개 차단
    Allow from all
</directory>

 

- IP 허용

<directory /주소>
    Order deny,allow
    Allow from 10.10.10.0/24 //10.10.10.0 대역 c클래스 허용 하기
    Allow from 10.10.20.1 // ip 한개 허용
    Deny from all
</directory>

반응형

댓글