[웹보안]Apache httpd.conf 보안 설정

2013. 10. 16. 14:47·Programing
반응형

아파치 기본 설정 파일인 httpd.conf 파일을 통해 보안을 강화 시킬 수 있다.

물론 웹서버 보안 프로그램을 사용해서 보안화 한다면 더욱 좋겠지만.. 기본적인 보안부터

시작하면 더 좋다고 생각한다.

 

------------------------------------------------------------------------------------

특정 IP 차단하기.. or 특정 IP 만 허용하기

------------------------------------------------------------------------------------

 

특정 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를 사용하는 호스트들은 기본 DocumentRoot인 htdocs 에 접근하지

못한다. 물론.. 그 밑에 까지 몽땅 다 차단된다!!

 

만약 192.168.1.1 IP를 사용하는 호스트가 익스플로러를 사용해 웹서버에 접근을 시도한다면..

창에 이렇게 뜬다.-_-)/

 

 

 

----------------------------------------------------------------------------------------

 

특정 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를 사용하는 호스트들만 htdocs 디렉토리에 접근할 수 있다.

사내에서만 사용하는 웹서버를 구축한다면 유용할 듯 싶다.

 

참고로 ' Order Deny,Allow ' 의 뜻은 Allow 설정을 먼저 확인하고 그 다음 Deny 설정을 확인한다.

즉.. 뒤에 것이 우선한다는 뜻이다.

 

예를 들자면

 

<Directory /usr/local/apache/htdocs>

Order Allow,Deny

Deny from all

Allow from 192.168.1.1

</Directory>

 

언뜻 보면 192.168.1.1 IP를 사용하는 호스트만 htdocs 디렉토리에 접근할 수 있을 듯 보이지만..

Order 옵션을 보면 Deny가 뒤에 있다. 즉 먼저 Deny 설정을 확인한다는 뜻인데.. Deny 설정은

Deny from all 로 되어있다. 즉 모두 차단하겠다라는 의미를 가진다.

암만 192.168.1.1 이 접근이 허용되있다고 하더라도 Deny 설정에 걸리기 때문에..가차없다-_-

 

다른 예를 한번 들어보면..

 

<Directory /usr/local/apache/htdocs>

Order Deny,Allow

Allow from all

Deny from 192.168.1.1

</Directory>

 

이렇게 설정을 했다면.. 192.168.1.1 을 사용하는 호스트도 htdocs 디렉토리에 접근이 가능하다.

Order 옵션을.. 어떻게 적용하느냐에 따라서 자신이 원하는 것을 이룰지 모르지만 그렇지 않을 경우도 있기때문에.. 잘 생각해보고 적용해야 한다!!

 

--------------------------------------------------------------------------------------

 

서버 사이드 파일 설정

 

서버 사이드란?

간단하게 "웹 서버측에서 하는 작업들"이라고 말할 수 있다. 여기서 말하는 작업이란 구체적으로

웹브라우저(클라이언트)에서 넘어온 자료를 데이터베이스에 저장한다든지 어떤 수학적인 계산을 하여 결과를 만들어 낸다는 것을 의미한다. 이런 작업을 담당하는 것이 웹 프로그램이다.

웹 프로그램의 종류는 PHP, ASP, JSP, Perl 등등.. 이 존재한다.

 

특정 파일에 대해서도 접근을 허용하거나 불허용할 수 있다.

예를 하나 들어보자. 제로보드를 사용하는 유저들이라면 잘 알겠지만.. 관리페이지를 들어가기

위해서는 admin.php 를 통해야 한다. 이 것을 한번 막아보자-_-a

 

# vi /usr/local/apache/conf/httpd.conf

.......

<Files ~ "admin.php">

Order Deny,Allow

Deny from all

Allow from 192.168.1.1

</Files>

.......

 

이렇게 설정하면 192.168.1.1 IP를 사용하는 호스트만 admin.php에 접근할 수 있다.

요것을 잘 응용하면 좋다-_-)b

 

.bak, .old 파일들과 같은 서버사이드 소스파일을 접근 못하게 하는것이 젤 좋다-_-)b

php를 사용하다 보면 따로 dbconn.php 파일을 생성해서 DB에 접근하는데 중요한 것은..

이 파일 소스안에 DB에 접근할 수 있는 계정, password 가 그대로 존재한다는 것이다.

이것을 백업 좀 하겠다고-_-.. dbconn.bak 이나 dbconn.old로 카피해서 같은 디렉토리에

집어넣었다면 웹에서 직접 소스로 접근이 가능하다-_-.. 겁내 위험한거다;;;

 

<Files ~ ".bak$">
Order allow,deny
Deny from all
</Files>

<Files ~ ".old$">
Order allow,deny
Deny from all
</Files>

 

요렇게 막자^-^)b

 

또는.. 특정확장자를 PHP와 같은 서버사이드 언어로 설정해 웹 서버에 소스를 그대로 보이지 않고 실행하도록 하는 방법이 있다.

 

AddType application/x-httpd-php .php .inc .bak .old .c

 

요 방법두 나쁘지는 않은듯..^^

 

--------------------------------------------------------------------------------------

 

출처 - http://blog.daum.net/9401ymk/7087666

반응형
저작자표시 (새창열림)

'Programing' 카테고리의 다른 글

[css] 모바일 웹 img 크기 조절 방법  (0) 2014.04.10
[Jsp]HttpServletRequest  (0) 2013.10.18
[Window]윈도우서버 배치파일 파일 복사 및 삭제  (0) 2013.06.21
JSP로 엑셀(Excel) 다운로드 파일만들기(한글깨짐,숫자포함)  (0) 2013.06.14
[JAVASRIPT]팝업창 닫고 새로운 창 열기  (0) 2013.05.23
'Programing' 카테고리의 다른 글
  • [css] 모바일 웹 img 크기 조절 방법
  • [Jsp]HttpServletRequest
  • [Window]윈도우서버 배치파일 파일 복사 및 삭제
  • JSP로 엑셀(Excel) 다운로드 파일만들기(한글깨짐,숫자포함)
애플자라
애플자라
    반응형
  • 애플자라
    애플자라
    애플자라
  • 전체
    오늘
    어제
    • 분류 전체보기 (659)
      • ChatGPT (2)
      • Linux (93)
      • Programing (92)
      • Flex, Laszlo (15)
      • Database (168)
      • Network (15)
      • Data (14)
      • Tips (120)
      • 여행★ (1)
      • Board (116)
      • 맛집탐방 (3)
      • 아이원츄 (12)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

    • Love&Smile
    • Husk's repository
    • StartUp
    • DSDSTUDIO Experimentals
    • 신선
    • DEV.SEULKI.KR[이슬기]
    • Live Bit Block
  • 공지사항

  • 인기 글

  • 태그

    Shell
    sql
    DATABASE
    데이터
    자동차
    server
    mssql
    테이블
    Oracle
    eclipse
    select
    설정
    apache
    table
    백업
    윈도우
    IP
    MySQL
    서버
    java
    리눅스
    파일
    오라클
    Excel
    DB
    delete
    Linux
    Windows
    tomcat
    Toad
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
애플자라
[웹보안]Apache httpd.conf 보안 설정
상단으로

티스토리툴바