问题:
已经发布的应用被漏扫后。发现应用或系统漏洞,如果应用改动成本高可以通过增加waf防护的补充手段来进行安全加固。这里举例说明应用不做改动的情况下,进行waf防护的方案。
解决方案及步骤:
1、订购配置waf服务,这里我们那拿电信云waf举例(应用就部署在ctyun上选择比较方便)。
详细配置可以参考cyun,waf的配置。通过更换canme域名解析将请求转到waf服务器,再将请求从waf过滤后转回到应用服务器。这里使用新的端口8888避免对原有应用的修改。
2、配置nginx限制非域名访问。
3、在防火墙上(这里是ctyun的安全组配置)关闭原有应用端口放入比如这里是8080。
4、配置新的服务端口比如这里是8888,放入8888替代原有8080端口(这样不影响原有应用),nginx部署两个server
server1 deafult 侦听8888端口,限制非域名访问。
server2 abcd.com 侦听8888端口,遇到请求反向代理到同服务其8080端口,比如127.0.0.1:8080这里就不用再用公网ip或者域名了避免了再次经过waf清洗流量。
详细nginx配置见下
server {
listen 8888 default; #server1
server_name _; #没有域名直接返回404
return 403;
}
server {
listen 8888; #server2
server_name abcd.com; #和域名一致
location / { #所有请求转入原有应用
proxy_pass http://127.0.0.1:8080; #这里一定使用127.0.0.1 如果使用主机地址就会与
防火墙限制8080冲突而被限制不能放入
}