Nginx 解决被恶意解析域名到自己服务器的 IP

2023-8-11 119 8/11

目的有两个、1、禁止通过IP访问我的网站。2、禁止通过其他域名访问我的网站。从而解决被其他人恶意解析域名到自己的的服务器 IP

什么是服务器IP被别人恶意解析域名

恶意解析域名是指非站长通过将域名A记录直接解析站长服务器的IP地址,从而得到一个在访问者眼中完全相同网站,这样会造成搜索引擎收录非站长的域名。

域名被恶意解析的危害

可能你感觉并不需要介意通过别人的域名访问到您的网站,但是

  • 这个域名是未备案域名呢,你是备案域名,机房和网监可没法区分这是不是你故意的,将来封IP、拔线,罚款都需要站长自己承担了。
    Nginx 解决被恶意解析域名到自己服务器的 IP

  • 这个域名是不友善的域名,比如曾经指向非法网站,就容易引发搜索引擎,浏览器,其他安全软件的惩罚,连带IP受到牵连。
    Nginx 解决被恶意解析域名到自己服务器的 IP

  • 域名本身确实没什么问题,但是使用非绑定域名,是一些广告联盟或者收费软件(比如一些博客主题,安全插件,功能性扩展等)所禁止的事项,会导致站点授权被封杀。

Nginx解决域名被人恶意解析

  1. 在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 。
  1. 一般做完上一步等着就好了,搜索引擎,浏览器,安全软件等发现这个域名一直无响应或者403后自然会解决这个域名。如果你想更快速的结局问题,可以向搜索引擎提交死链,向安全软件提交网站已经修复等。加快消除恶意域名在网络上对自己网站的影响。
- THE END -

非特殊说明,本博所有文章均为博主原创。