LNMP 구조 - Nginx 도 난 방지 체인, 접근 제어

4786 단어 LNMP 구조
Nginx 도 난 방지 체인
도 난 사슬 은 한 사이트 의 자원 (사진 이나 첨부 파일) 이 다른 사이트 에서 조회 와 다운 로드 를 허용 하지 않 고 제공 하 는 것 을 말한다. 특히 인기 자원 의 도 난 사슬 은 사이트 대역 폭 에 대한 소모 가 매우 크다.
프로필 수정
[root@dl-001 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf
............
location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$
{
    expires 7d;
    valid_referers none blocked server_names  *.test.com ;
     //  referer   
    if ($invalid_referer) {
        return 403;
    //if      :           ,   :403
    }
    access_log off;
}
..............

다시 불 러 오기
[root@dl-001 ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@dl-001 ~]# /usr/local/nginx/sbin/nginx -s reload

검출
[root@dl-001 ~]# curl -e "http://www.baidu.com/1.txt" -x127.0.0.1:80 -I test.com/baidu.png
HTTP/1.1 403 Forbidden
Server: nginx/1.12.1
Date: Mon, 14 Aug 2017 06:22:36 GMT
Content-Type: text/html
Content-Length: 169
Connection: keep-alive

설명: 비 화이트 리스트 에 있 는 refer 를 사용 하여 방문 하 는 것 은 제 한 됩 니 다!!
Nginx 접근 제어
접근 제어 즉 지정 한 IP 만 지정 한 디 렉 터 리 에 접근 할 수 있 도록 제한 합 니 다.
프로필 추가
[root@dl-001 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf 
……
location /admin/
    {
    allow 192.168.8.132;
    allow 127.0.0.1;
    deny all;
    //  IP   
    }
……

다시 불 러 오기
[root@dl-001 ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@dl-001 ~]# /usr/local/nginx/sbin/nginx -s reload

필요 한 디 렉 터 리 만 들 기
[root@dl-001 ~]# mkdir /data/wwwroot/test.com/admin

[root@dl-001 ~]#  echo “test,test”>/data/wwwroot/test.com/admin/1.html

테스트
[root@dl-001 ~]# curl -x127.0.0.1:80  test.com/admin/1.html
“test,test”

[root@dl-001 ~]# curl -x192.168.6.128:80  test.com/admin/1.html
“test,test”

//  !

접근 제어 - 정규 일치
location ~ .*(abc|image)/.*\.php$
{
        deny all;
}

접근 제어 - user에이전트 제한
if ($http_user_agent ~ 'Spider/3.0|YoudaoBot|Tomato')
{
      return 403;
}

설명: deny all 과 return 403 효과 가 같 음

좋은 웹페이지 즐겨찾기