天天看點

LNMP--通路控制

限制通路的方法:

有時候我們通過通路日志,能看到有幾個IP會不停的嘗試攻擊網站,需要去禁掉這幾個IP;或者去限定某些IP可以通路,其他IP均不許通路。比如:管理中心,隻要管理者通路,其他IP一律禁止通路。

通路控制比"使用者認證"要更安全。

配置方法:

編輯虛拟主機配置檔案

[root@LampLinux ~]# vim /usr/local/nginx/conf/vhosts/test.conf

修改下面配置(藍色為删除,紅色為新增): 

location ~ .*admin\.php$ {

        #auth_basic "LampLinux auth";

        #auth_basic_user_file /usr/local/nginx/conf/.htpasswd; (删除auth相關配置)

        allow 127.0.0.1;        

        deny all;                # 隻允許127.0.0.1通路,其他全部拒絕。

        include fastcgi_params;

        fastcgi_pass unix:/tmp/www.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME  /data/www$fastcgi_script_name;

    }

檢查并重加載

[root@LampLinux ~]# /usr/local/nginx/sbin/nginx -t

[root@LampLinux ~]# /usr/local/nginx/sbin/nginx -s reload

測驗:

[root@LampLinux ~]# curl -x127.0.0.1:80 www.test.com/admin.php -I

HTTP/1.1 200 OK

Server: nginx/1.6.2

Date: Wed, 12 Aug 2015 11:04:19 GMT

...

127.0.0.1通路管理中心可以通行。

[root@LampLinux ~]# curl -x192.168.137.11:80 www.test.com/admin.php -I

HTTP/1.1 403 Forbidden

Date: Wed, 12 Aug 2015 11:05:09 GMT

Content-Type: text/html

Content-Length: 168

Connection: keep-alive

192.168.137.11通路管理中心無法讀取。

[root@LampLinux ~]# curl -x192.168.137.11:80 www.test.com/forum.php -I

HTTP/1.1 200 OK

Date: Wed, 12 Aug 2015 11:06:33 GMT

192.168.137.11通路其他頁面不受限制。

僅僅是對admin.php做了403限制。

補充:

    我們也可以針對目錄做通路限制:

    location ~ /abc/ 

    {

        allow .....;

        deny .....;

     }

還可以針對全局,比如說整個網站不允許127.0.0.1通路,其他的都允許,

我們需要在整個網站配置裡面(即location上面一段結尾)加上deny 127.0.0.1;就可以了。

如果想要把192.168.137.*的這個網段都拒絕掉,接着寫入deny 192.168.137.0/24;就可以了。

配置内容如圖:

<a href="http://s3.51cto.com/wyfs02/M00/71/48/wKioL1XKvcuAULBIAAKY2ujsfC8067.jpg" target="_blank"></a>

版權聲明:原創作品,如需轉載,請注明出處。否則将追究

本文轉自 聽丶飛鳥說 51CTO部落格,原文連結:http://blog.51cto.com/286577399/1683923

法律責任

<a href="http://blog.51cto.com/search/result?q=%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6" target="_blank">通路控制</a>

繼續閱讀