防止域名被恶意解析

1、何为域名恶意解析

外部未知的域名持有者,将域名解析到非其所持有的服务器公网IP上,间接或直接形成损害他人利益的行为。nginx

2、借刀杀人

域名的恶意解析,能够用于借刀杀人。 这个手法很骚,轻则能够将对手的SEO排名拉低,重则可让工信部封杀其站点。git

具体实现条件以下:github

  • 未备案的域名或已被接入工信部黑名单的域名
  • 获取要攻击的站点,其源服务器使用的公网IP
  • 确认要攻击的网站80端口和443端口能够直接用IP直接访问
  • 将黑域名解析到该公网IP

危害以下:bash

  • 不一样域名解析到同个站点,真身域名权重被下降,SEO排名被假域名挤占
  • 非法域名解析,致使源服务器被工信部封杀,网站中止服务

3、解决方法

将无效域名的HTTP请求,所有拒绝响应服务器

如下是个人我的站点的nginx配置网站

server{
    listen 80 default_server;
    server_name _;
    access_log off;
    return 444;
}

server{
    listen 443  default_server;
    server_name _;
    ssl_certificate   cert/www.wangxiaokai.vip.pem;
    ssl_certificate_key  cert/www.wangxiaokai.vip.key;
    access_log off;
    return 444;
} 
复制代码

3.1 筛选无效域名

server_name _;
复制代码

这个表明的就是无效域名,_符号能够用-!@#代替,均可以达到相同的效果。ui

3.2 不记录访问日志

access_log off;
复制代码

访问日志是须要存储空间的,若是没有设置自动清理脚本,也是能够把服务器存储空间打爆的。spa

3.3 不处理无效域名的请求

return 444;
复制代码

444是Nginx服务器扩展的HTTP错误状态码,为非标准HTTP状态码。 它的做用是:服务器不向客户端返回任何信息,并关闭链接, 断开客户端和服务器的链接,防止恶意软件攻击威胁。日志

3.4 一些细节

这两个server模块,应该放在最前,优先处理。code


喜欢我文章的朋友,能够经过如下方式关注我:

相关文章
相关标签/搜索