12.13 Nginx防盗链;12.14 Nginx访问控制;12.15 Nginx解析php相关配置;12.16 Nginx代理

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

扩展:

502问题汇总  http://ask.apelearn.com/question/9109

location优先级 http://blog.lishiming.net/?p=100

12.13 Nginx防盗链

设定目录访问受限:

 1. 配置test.com网站目录防盗链编辑虚拟主机配置文件:

[root@hao-01 ~]# 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 ;

   if ($invalid_referer) {

       return 403;

   }

   access_log off;

}wKiom1mRn8bSV22OAABcDArdXN4602.png2. 检测nginx配置文件是否有错?

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

3. 重新加载nginx配置文件(非重启!):

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

4. 查看test.com网站目录下的静态文件

[root@hao-01 ~]# ls /data/wwwroot/test.com/

5. curl测试,通过百度网站访问test.com网站下的静态文件403受限

[root@hao-01 ~]# curl -e "http://www.baidu.com/1.txt" -x127.0.0.1:80 -I test.com/1.gifwKioL1mRncrw7WDDAAARAuiCDFo631.png

6. curl测试,通过test.com网站访问test.com网站下的静态文件200

[root@hao-01 ~]# curl -e "http://www.test.com/1.txt" -x127.0.0.1:80 -I test.com/1.jpgwKioL1mRneCCa45KAAAPax-4Lec582.png12.14 Nginx访问控制

1. 配置testt.com网站访问控制编辑虚拟主机配置文件:

[root@hao-01 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf

   location /hao/

   {

       allow 127.0.0.1;

       allow 127.168.211.128;

       deny all;

   }

wKiom1mRn-7jISM2AAAn1fx3_sE835.png

spacer.gif2. 检测nginx配置文件是否有错?

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

3. 重新加载nginx配置文件(非重启!):

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

4. 在test.com网站目录下,创建一个目录hao

[root@hao-01 ~]# mkdir /data/wwwroot/test.com/hao/

5. ...hao/目录下创建1.html文件,并追加内容

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

6. curl通过白名单127.0.0.1ip访问test.com网站下hao目录下的1.html文件: [root@hao-01 ~]# curl -x127.0.0.1:80 test.com/hao/1.html -IwKiom1mRoAGTjLhoAAANxz5V3t8413.png

spacer.gif

7. curl通过白名单192.168.211.128ip访问test.com网站下hao目录下的1.html文件: [root@hao-01 ~]# curl -x192.168.211.128:80 test.com/hao/1.html -I

spacer.gifwKioL1mRoBHhIN7qAAANxz5V3t8335.png

8. 添加一个虚拟网卡wKiom1mRoCOz5H1cAACBuFQDfvw345.png9. 重新自动获取ens37新网卡ip

[root@hao-01 ~]# dhclient ens37

10. 查看ens37新网卡ip

[root@hao-01 ~]# ifconfig ens3711. curl通过白名单192.168.211.132ip访问test.com网站下hao目录下的1.html文件:[root@hao-01 ~]# curl -x192.168.211.132:80 test.com/hao/1.html -IwKiom1mRoEyxsmu9AAAaOWt4EAE606.png11. curl通过白名单192.168.211.132ip访问test.com网站下hao目录下的1.html文件:[root@hao-01 ~]# curl -x192.168.211.132:80 test.com/hao/1.html -I

设定指定目录php文件解析受限

1. 配置test.com网站php文件防盗链编辑虚拟主机配置文件:

[root@hao-01 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf

增加内容:

location ~ .*(upload|image)/.*\.php$

{

deny all;

}

wKioL1mRoNSx9O2wAAA1hDZKz8g792.png

2. 在test.com网站目录下,创建一个目录upload/

[root@hao-01 ~]# mkdir /data/wwwroot/test.com/upload/

3. ...hao/目录下创建1.php文件,并追加内容

[root@hao-01 ~]# echo “111”>/data/wwwroot/test.com/upload/1.php

4. 检测nginx配置文件是否有错?

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

5. 重新加载nginx配置文件(非重启!):

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

6. curl访问test.com网站下upload目录下1.php文件 403受限:

[root@hao-01 ~]# curl -x192.168.211.132:80 test.com/upload/1.php -I

根据user_agent限制:

1. 编辑test.com虚拟主机配置文件:

[root@hao-01 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf

增加内容(deny all和return 403效果一样):

if ($http_user_agent ~* 'Spider/3.0|YoudaoBot|Tomato')

{

return 403;

}

wKiom1mRoV6xT9yGAAApI9EmQJM541.png

2. 检测nginx配置文件是否有错?

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

3. 重新加载nginx配置文件(非重启!):

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

4. curl 指定user_agenttomatoalsdkflsd,访问test.com网站 403受限

[root@hao-01 ~]# curl -A "tomatoalsdkflsd" -x127.0.0.1:80 test.com -IwKioL1mRoYPih0r6AAAOXIhxjJo732.png

spacer.gif12.15 Nginx解析php相关配置

1. 编辑test.com虚拟主机配置文件:

[root@hao-01 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf

增加内容(解析php相关内容):

(注意这行很重要,fcgi.sock保证路径存在:astcgi_pass unix:/tmp/php-fcgi.sock;

路径不对,访问错误会报502)

location ~ \.php$

{

include fastcgi_params;

fastcgi_pass unix:/tmp/php-fcgi.sock;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /data/wwwroot/test.com$fastcgi_script_name;

}

wKiom1mRoaKR2zftAABBAnNlZ0s122.png

2. 在test.com网站目录下创建1.php文件,并填写如下内容:

[root@hao-01 ~]# vim /data/wwwroot/test.com/1.php

添加内容(php相关配置)

<?php

phpinfo();

3. curl 访问test.com网站下的1.php文件:

[root@hao-01 ~]# curl -x127.0.0.1:80 test.com/1.php

502问题汇总  http://ask.apelearn.com/question/9109

12.16 Nginx代理

1. 进入...vhost目录下

[root@hao-01 ~]# cd /usr/local/nginx/conf/vhost

2. 创建proxy.conf文件,并写入代理配置:

[root@hao-01 vhost]# vim /usr/local/nginx/conf/vhost/proxy.conf

server

{

   listen 80;

   server_name baidu.com;

   location /

   {

       proxy_pass      http://111.13.101.208/;

       proxy_set_header Host   $host;

       proxy_set_header X-Real-IP      $remote_addr;

       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

   }

}

wKioL1mRocKw03c8AAAvhNgjn9Q803.png

3. curl访问远程baidu.com/robots.txt

[root@hao-01 vhost]# curl -x127.0.0.1:80 baidu.com/robots.txt

wKioL1mRojTDJe27AAAW5ji_Iqo911.png










本文转自 主内安详 51CTO博客,原文链接:http://blog.51cto.com/zhuneianxiang/1956200,如需转载请自行联系原作者
目录
相关文章
|
6天前
|
网络协议 网络虚拟化 数据安全/隐私保护
访问控制列表(ACL)配置
访问控制列表(ACL)配置
访问控制列表(ACL)配置
|
2天前
|
安全 Java 数据安全/隐私保护
如何配置 Java 安全管理器来避免访问控制异常
配置Java安全管理器以防止访问控制异常,需在启动JVM时通过 `-Djava.security.manager` 参数启用,并设置安全策略文件,定义权限规则,限制代码执行操作,确保应用安全。
ly~
|
27天前
|
消息中间件 搜索推荐 大数据
一般情况下在 RocketMQ 中添加 access key 的步骤: 一、确定配置文件位置 RocketMQ 的配置文件通常位于安装目录下的 conf 文件夹中。你需要找到 broker.conf 或相关的配置文件。 二、编辑配置文件 打开配置文件,查找与 ACL(访问控制列表)相关的配置部分。 在配置文件中添加以下内容:
大数据广泛应用于商业、金融、医疗和政府等多个领域。在商业上,它支持精准营销、客户细分及流失预测,并优化供应链管理;金融领域则利用大数据进行风险评估、市场预测及欺诈检测;医疗行业通过大数据预测疾病、提供个性化治疗;政府运用大数据进行城市规划和公共安全管理;工业领域则借助大数据进行设备维护、故障预测及质量控制。
ly~
29 2
|
1月前
|
Apache 数据安全/隐私保护
HAProxy的高级配置选项-ACL篇之基于源地址访问控制案例
这篇文章介绍了HAProxy的ACL(访问控制列表)功能,特别是如何基于源地址进行访问控制的高级配置选项,并通过实战案例展示了如何配置ACL规则以允许或阻止特定IP地址或IP范围的访问。
53 7
HAProxy的高级配置选项-ACL篇之基于源地址访问控制案例
|
1月前
|
Apache 数据安全/隐私保护
HAProxy的高级配置选项-ACL篇之基于策略的访问控制
这篇文章介绍了HAProxy的高级配置选项,特别是如何使用ACL(访问控制列表)进行基于策略的访问控制,通过实战案例展示了如何配置HAProxy以允许或拒绝来自特定源地址的访问。
48 6
HAProxy的高级配置选项-ACL篇之基于策略的访问控制
|
17天前
|
应用服务中间件 测试技术 nginx
Nginx入门 -- 解析Nginx中的基本概念:Keepalive
Nginx入门 -- 解析Nginx中的基本概念:Keepalive
50 0
|
1月前
|
开发框架 安全 应用服务中间件
【文件上传绕过】——解析漏洞_IIS7.0 | IIS7.5 | Nginx的解析漏洞
【文件上传绕过】——解析漏洞_IIS7.0 | IIS7.5 | Nginx的解析漏洞
106 9
|
1月前
|
NoSQL 关系型数据库 MySQL
HAProxy的高级配置选项-haproxy的四层负载及访问控制案例
这篇文章介绍了HAProxy的高级配置选项,特别是如何进行四层负载均衡和基于策略的访问控制。通过实战案例,展示了如何配置HAProxy以实现对特定IP地址的访问控制,以及如何通过四层负载均衡将流量分配到后端的MySQL和Redis服务。
112 6
|
3月前
|
缓存 负载均衡 应用服务中间件
nginx.conf 配置解析及常用配置
nginx.conf 配置解析及常用配置
79 6
|
2月前
|
安全 Nacos 数据库
【技术安全大揭秘】Nacos暴露公网后被非法访问?!6大安全加固秘籍,手把手教你如何保护数据库免遭恶意篡改,打造坚不可摧的微服务注册与配置中心!从限制公网访问到启用访问控制,全方位解析如何构建安全防护体系,让您从此告别数据安全风险!
【8月更文挑战第15天】Nacos是一款广受好评的微服务注册与配置中心,但其公网暴露可能引发数据库被非法访问甚至篡改的安全隐患。本文剖析此问题并提供解决方案,包括限制公网访问、启用HTTPS、加强数据库安全、配置访问控制及监控等,帮助开发者确保服务安全稳定运行。
192 0

推荐镜像

更多