目的有两个、1、禁止通过IP访问我的网站。2、禁止通过其他域名访问我的网站。从而解决被其他人恶意解析域名到自己的的服务器 IP
什么是服务器IP被别人恶意解析域名
恶意解析域名是指非站长通过将域名A记录直接解析站长服务器的IP地址,从而得到一个在访问者眼中完全相同网站,这样会造成搜索引擎收录非站长的域名。
域名被恶意解析的危害
可能你感觉并不需要介意通过别人的域名访问到您的网站,但是
- 这个域名是未备案域名呢,你是备案域名,机房和网监可没法区分这是不是你故意的,将来封IP、拔线,罚款都需要站长自己承担了。
-
这个域名是不友善的域名,比如曾经指向非法网站,就容易引发搜索引擎,浏览器,其他安全软件的惩罚,连带IP受到牵连。
-
域名本身确实没什么问题,但是使用非绑定域名,是一些广告联盟或者收费软件(比如一些博客主题,安全插件,功能性扩展等)所禁止的事项,会导致站点授权被封杀。
Nginx解决域名被人恶意解析
- 在Nginx配置文件的server项内增加一个,非指定域名访问跳转到域名页或者直接回报403的配置,(记得把自己同服务器上的所有网站域名都加进去)
server
{
listen 80 XXXXXXXXXXX;
listen 443 XXXXXXXXXX;
server_name XXXXXXXXXXX;
index XXXXXXXXXXX;
root XXXXXXX;
#一般将下方代码按自己需求修改后,插入在你网站上边这一坨配置的后面就行
#非指定域名访问回报444开始
if ($host !~* '^((www|img|pic|api)\.)?tjsky\.net$') {
return 444;
}
#非指定域名访问回报444结束
#你网站的其他配置
}
这个是什么意思呢?就是如果访问方提交的host不匹配后面的正则,既不是tjsky.net,也不是www、img、pic、api等子域时,则 Nginx 会阻断连接,也不作任何回复,相当于对方访问了一个完全不存在的网站。对于恶意扫描和恶意自动化爬虫,444可以显著减少他们的回访率。
- 注意:HTTP 444 并不是一个标准的 HTTP status code ,而是Nginx自己设立的状态码。
- 据说是当恶意提交的页面已经被搜索引擎索引后,对正常的搜索引擎爬虫,这个时候执行地址屏蔽,大量回报 403 比大量回报 444 直接不回复要对SEO要相对友好一点,搜索引擎会认为这只是特定页面问题,而不是整站的问题。所以可以把前边的 444 改成 403 。
- 一般做完上一步等着就好了,搜索引擎,浏览器,安全软件等发现这个域名一直无响应或者403后自然会解决这个域名。如果你想更快速的结局问题,可以向搜索引擎提交死链,向安全软件提交网站已经修复等。加快消除恶意域名在网络上对自己网站的影响。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END