nginx 도 난 방지 체인 튜 토리 얼 nginx 이미지 도 난 방지 체인 상세 설명
일반적으로 자주 사용 하 는 방법 은 server 나 location 세그먼트 에 가입 하 는 것 입 니 다!valid_referers none blocked www.hihi123.com hihi123.com;
아래 의 예 를 들 어 none 은 빈 길 을 표시 합 니 다. 즉, 직접 방문 하 는 것 입 니 다. 예 를 들 어 브 라 우 저 에서 그림 Blocked 를 열 면 방화벽 에 표 시 된 길 을 표시 합 니 다 servernames 는 도 메 인 이름 입 니 다.0.5.33 이후 버 전에 서 는 모든 2 급 도 메 인 이름 을 *. hihi 123. com 으로 표시 할 수 있 습 니 다.
1. 서로 다른 파일 형식 에 대한
location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv)$ {
valid_referers none blocked *.765h.com 765h.com;
if ($invalid_referer) {
#rewrite ^/ http://www.765h.com/error.html;
return 403;
}
}
첫 번 째 줄: wma | gif | jpg | png | swf | flv
wma, gif, jpg, png, swf, flv 접미사 파일 에 대한 방 범 체인 두 번 째 줄 을 표시 합 니 다.그림 일 수도 있어 요.
2. 서로 다른 디 렉 터 리 에 대해
location /img/ {
root /data/img/;
valid_referers none blocked *.765h.com 765h.com;
if ($invalid_referer) {
rewrite ^/ http://www.765h.com/images/error.gif;
#return 403;
}
}
이상 은 nginx 자체 의 도 난 방지 체인 기능 입 니 다.
3. nginx 의 제3자 모듈 ngxhttp_accesskey_module 에서 파일 을 다운로드 하 는 도 난 방지 체인 을 실현 합 니 다.
Nginx 와 nginx - http - access 모듈 설치
#tar zxvf nginx-0.7.61.tar.gz
#cd nginx-0.7.61/
#tar xvfz nginx-accesskey-2.0.3.tar.gz
#cd nginx-accesskey-2.0.3
#vi config
# HTTP_MODULES="$HTTP_MODULES $HTTP_ACCESSKEY_MODULE" HTTP_MODULES="$HTTP_MODULES ngx_http_accesskey_module" ( bug)
#./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/root/nginx-accesskey-2.0.3
컴 파일 에 성공 하면 주 프로필 에 다음 과 같은 코드 를 추가 합 니 다:
server{
.....
location /download {
accesskey on;
accesskey_hashmethod md5;
accesskey_arg "key";
accesskey_signature "mypass$remote_addr";
}
}
/ 다운 로드 가 다운로드 한 디 렉 터 리 입 니 다.
프론트 데스크 톱 phop 에서 발생 하 는 다운로드 경로 형식 은:
1. http: / / * * * * * *. com / download / 1. zip? key = 이렇게 접근 이 인자 와 같 지 않 을 때 다른 사용자 가 열 었 을 때 나타 납 니 다: 403
NginxHttpAccessKeyModule 제3자 모듈, 실현 방법 은 다음 과 같 습 니 다.
1. Nginx HttpAccessKeyModule 모듈 파일 다운로드: Nginx - accesskey - 2.0.3. tar. gz;
2. 이 파일 의 압축 을 풀 고 nginx - accesskey - 2.0.3 의 config 파일 을 찾 습 니 다.이 파일 편집: "$HTTP ACCESSKEY MODULE" 를 "ngx http accesskey module" 로 바 꿉 니 다.
3. 인자 로 nginx 를 다시 컴 파일 합 니 다.
./configure --add-module=path/to/nginx-accesskey
4. nginx 의 conf 파일 을 수정 하고 다음 줄 을 추가 합 니 다.
location /download {
accesskey on;
accesskey_hashmethod md5;
accesskey_arg "key";
accesskey_signature "mypass$remote_addr";
}
그 중: accesskey 는 모듈 스위치 입 니 다.accesskey_hashmethod 는 암호 화 방식 MD5 또는 SHA - 1 입 니 다.accesskey_arg 는 url 의 키워드 인자 입 니 다.accesskey_signature 는 암호 화 값 입 니 다. my pass 와 방문 IP 로 구 성 된 문자열 입 니 다.
테스트 스 크 립 트 download. php 에 접근:
$ipkey= md5("mypass".$_SERVER['REMOTE_ADDR']);
$output_add_key="$ipkey.">download_add_key
";
$output_org_url="download_org_path
";
echo $output_add_key;
echo $output_org_url;
?>
첫 번 째 download 방문add_key 링크 는 정상적으로 다운로드 할 수 있 습 니 다. 두 번 째 링크 downloadorg_path 는 403 Forbidden 오 류 를 되 돌려 줍 니 다.
번 거 로 움 을 두려워 하지 않 고 조건 부 로 이 루어 진다 면 Nginx HttpAccessKeyModule 이라는 것 을 추천 합 니 다.
그의 실행 방식 은 내 download 디 렉 터 리 아래 file. zip 파일 이 있 는 것 과 같다.대응 하 는 URI 는...http://www.765h.com/download/file.zip사용 ngxhttp_accesskey_모듈 모듈 후http://www.765h.com/download/file.zip?key=09093abeac094. 주어진 키 값 이 정확 해야만 다운로드 디 렉 터 리 의 file. zip 를 다운로드 할 수 있 습 니 다.또한 키 값 은 사용자 의 IP 와 관련 된 것 이기 때문에 도 난 을 피 할 수 있 습 니 다.
Nginx HttpAccessKeyModule 은 이제 천둥 도 막 을 수 있다 고 하 니 한번 시도 해 보 세 요.
다운로드: Nginx 0.8.51 안정 판 다운로드: nginx - 0.8.51, nginx / Windows - 0.8.51HttpAccessKeyModule 제3자 모듈 다운로드:http://wiki.nginx.org/images/5/51/Nginx-accesskey-2.0.3.tar.gz
회전:http://dansan.blogbus.com/logs/87953679.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.