近日,在关注SEO时无意中看到一条信息:和自己服务器同IP的网站(域名)竟然有6个!这难道不应该是自己专属的吗?难道云服务器不是独立的吗?

从震惊中慢慢缓过神来,才意识到,原来是有人做了“恶意DNS解析”,将他们的域名恶意解析到了自己的服务器IP上。好在自己的服务器做了跨域限制,没有出现什么安全问题;但终究令人不爽,除了占用服务器带宽等资源,还将对SEO产生不良影响。

因此,亟需一些应对措施。
- 联系对方域名所有人,要求停止解析。
- 配置Nginx返回错误码。
- 配置
meta
跳转。
第一种方式显然不现实,因此,只能通过技术方式自己去解决。
Ngxin配置方式
配置代码如下:
nginxCopy code- 1
- 2
- 3
- 4
- 5
server {
listen 80 default_server;
server_name _;
return 404;
}
server {
listen 80 default_server;
server_name _;
return 404;
}
如果是HTTPS,配置如下:
nginxCopy code- 1
- 2
- 3
- 4
- 5
- 6
- 7
server {
listen 443 ssl default_server;
server_name _;
ssl_certificate /path/to/pem; # pem文件的路径
ssl_certificate_key /path/to/key; # key文件的路径
return 404;
}
server {
listen 443 ssl default_server;
server_name _;
ssl_certificate /path/to/pem; # pem文件的路径
ssl_certificate_key /path/to/key; # key文件的路径
return 404;
}
重启Nginx:
bashCopy code
- 1
nginx -s reload
nginx -s reload
以上,即可解决他人域名的恶意解析问题。效果如下:

注:之所以不是返回500而是404,是想要“告诉”搜索引擎,停止并删除该URL的索引。
meta跳转方式
在Nginx等服务器的应用根路径新建index.html,在header部分加入以下代码:
xmlCopy code- 1
<meta http-equiv="refresh" content="0; url=www.yourdomain.com"/>
以上,即可实现自动跳转。
更进一步,如果邪恶一点,可以将其重定向到某些不可描述的地址,以示惩罚。(手动狗头🐶……)
延伸……
正所谓“防人之心不可无”,基本、必要的安全防护措施还是很有必要的。此事给自己警醒:
- 严格的跨域策略。
- 白名单机制的重要性。
- 具备一些基本的运维知识。