[linux] 아파치 웹서버 사용시 무단 링크 방지법

페이지 정보

profile_image
작성자 로빈아빠
댓글 0건 조회 6,248회 작성일 09-12-11 12:51

본문

아파치 웹서버 사용시 무단 링크 방지법

현재 접속한 도메인을 체크해서 서버 관리자가 정해준 도메인명과 일치했을 경우, 링크를 허용하는 방법입니다.

아파치 웹서버 환경설정 파일인 "httpd.conf" 파일을 수정해 주시고 리로드 해주십시오.
<Directory /> Options FollowSymLinks AllowOverride None <IfModule mod_setenvif.c> SetEnvIF Referer "http://daum.net" pass // 도메인명을 코딩합니다. (즉, 설정한 도메인명과 현재 접속한 도메인명이 같을 경우 pass 를 반환합니다.) <FilesMatch ".(gif|jpg|png|bmp|zip|tar|rar|alz|a00|ace|jpg|jpeg|txt|GIF|JPG|BMP|ZIP|TAR|RAR|ALZ|A00|ACE|TXT|mp3|MP3|mpeg|MPEG|wav|WAV|asf|ASF|wmv|WMV|swf|SWF|exe|EXE)$"> // 무단 링크 방지할 파일 확장자를 코딩합니다. Order deny,allow deny from all allow from env=pass // pass 값이 존재할 경우 링크를 허용합니다. </FilesMatch> </IfModule> </Directory>

비슷한 방법으로 쿠키를 사용하는 것입니다.

다음의 설정내용을 httpd.conf에 명시하면 해당 쿠키값이 존재하지 않을경우 퍼미션을 허가하지 않는다.
이외에도 User-Agent 또는 Referer등을 체크하여 링크를 막을 수 도 있다.

SetEnvIf 모듈을 사용하여 httpd.conf 에 설정한다.
(웹서버에 요청이 들어올때 쿠키값으로 check 쿠키변수에 ok라는 값이 들어오면 true를 세팅한다.)

아파치에서 쿠키값을 가지고 있는 요청만을 처리하도록 하면 됨..
보통 버추얼 호스트나 웹 디렉토리 설정에서 allow 또는 deny 설정하는데, 아래와 같이 하면 쿠키값이 있는 요청만을 처리한다.

#무단링크방지 SetEnvIf Cookie check=ok true <Directory "해당디렉토리"> Options FollowSymLinks Includes ExecCGI Order allow,deny allow from env=true #<--- 이부분이 SetEnvIf에 의해 세팅된 변수만 허가함 </Directory>

댓글목록

등록된 댓글이 없습니다.