反向代理是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。而恶意反向代理也就是指恶意山寨克隆一个一模一样的网站,而这种反向代理操作起来十分简单,无需任何网站程序,只需配置Nginx的反向代理即可操作,因此有不少网站因此被克隆,造成损失,今天就给大家说一下,如何阻止网站被恶意反向代理制造镜像网站?
一般来说,这种是对方通过反向代理方式实现了对自己网站文件的抓取甚至缓存到了对方服务器上,可找到对方代理服务器ip地址进行屏蔽:
例,您的域名是www.abc.com,对方网站是www.abc.com.hdtmail.com
以下用三种方式来查找对方服务器的真实ip,前提是对方是采取的实时代理,而不是已经将您的文件缓存到他自己的服务器,并取消了代理,
1.在根目录建立一个123.php,写入以下代码
";
echo "ip2:".$_SERVER["HTTP_X_FORWARDED_FOR"];
?>
然后访问http://www.abc.com.hdtmail.com/123.php
以上两个参数是获取对方服务器ip地址,
如果涉及了代理服务器,则ip1后面ip地址是对方服务器的ip
如果未涉及代理服务器,则ip2后面ip地址是对方服务器的ip
PS:如果这种方式访问不到文件,那是因为对方进行了一些限制措施,所以访问不到文件。可以尝试第2种。
2.可以在网站根目录下建立123.asp,写入以下代码:
<%
Response.write"ip1:"&Request.ServerVariables("HTTP_X_FORWARDED_FOR")&""
Response.write"ip2:"&Request.ServerVariables("REMOTE_ADDR")
%>
然后访问http://www.abc.com.hdtmail.com/123.asp
以上两个参数是获取对方服务器ip地址,
如果涉及了代理服务器,则ip1后面ip地址是对方服务器的ip
如果未涉及代理服务器,则ip2后面ip地址是对方服务器的ip
PS:如果以上两种方式都无法访问到文件,可能对方服务器对新增文件也进行了判断禁止访问,可直接在已存在的文件上修改。
3.在已有的index.php,index.asp等文件第一行中加入方法1,2中的代码,然后访问http://www.abc.com.hdtmail.com/index.asp,或http://www.abc.com.hdtmail.com/index.php,和方式1,2一样获取到对方服务器ip地址,然后按照以下屏蔽ip的教程进行屏蔽:
虚拟主机屏蔽ip: faq.myhostadmin.net/faq/listagent.asp?unid=681
vps/服务器屏蔽ip: faq.myhostadmin.net/faq/listagent.asp?unid=822
完成屏蔽ip之后,再访问对方域名,如果无法显示您的网站内容了,则说明屏蔽正常,接着删除123.asp/123.php或自己文件中刚刚添加的代码。
PS:如果对方已经将抓取过的页面缓存到服务器,则无法屏蔽,只能考虑更换自身网站文件名或者适当改版网站内容。
以上就是全部内容,希望对你有所帮助。
|