防止域名被恶意解析
<h2 id="一何为域名恶意解析">一、何为域名恶意解析</h2><blockquote>
<p>外部未知的域名持有者,将域名解析到非其所持有的服务器<strong>公网IP</strong>上,间接或直接造成损害他人利益的行为。</p>
</blockquote>
<h2 id="二借刀杀人">二、借刀杀人</h2>
<p>域名的恶意解析,可以用于借刀杀人。<br>
这个手法很骚,轻则可以将对手的SEO排名拉低,重则可以让工信部封杀其站点。</p>
<p><strong>具体实现条件如下:</strong></p>
<ul>
<li>未备案的域名或已被接入工信部黑名单的域名</li>
<li>获取要攻击的站点,其源服务器使用的公网IP</li>
<li>确认要攻击的网站80端口和443端口可以直接用IP直接访问</li>
<li>将黑域名解析到该公网IP</li>
</ul>
<p><strong>危害如下:</strong></p>
<ul>
<li>不同域名解析到同个站点,真身域名权重被降低,SEO排名被假域名挤占</li>
<li>非法域名解析,导致源服务器被工信部封杀,网站停止服务</li>
</ul>
<h2 id="三解决方法">三、解决方法</h2>
<blockquote>
<p>将无效域名的HTTP请求,全部拒绝响应</p>
</blockquote>
<p>以下是我的个人站点的nginx配置</p>
<pre><code>server{
listen 80 default_server;
server_name _;
access_log off;
return 444;
}
server{
listen 443default_server;
server_name _;
ssl_certificate cert/www.wangxiaokai.vip.pem;
ssl_certificate_keycert/www.wangxiaokai.vip.key;
access_log off;
return 444;
}
</code></pre>
<h3 id="31-筛选无效域名">3.1 筛选无效域名</h3>
<pre><code>server_name _;
</code></pre>
<p>这个代表的就是无效域名,<code>_</code>符号可以用<code>-</code>或<code>!@#</code>代替,都可以达到相同的效果。</p>
<h3 id="32-不记录访问日志">3.2 不记录访问日志</h3>
<pre><code>access_log off;
</code></pre>
<p>访问日志是需要存储空间的,如果没有设置自动清理脚本,也是可以把服务器存储空间打爆的。</p>
<h3 id="33-不处理无效域名的请求">3.3 不处理无效域名的请求</h3>
<pre><code>return 444;
</code></pre>
<p>444是Nginx服务器扩展的HTTP错误状态码,为非标准HTTP状态码。<br>
它的作用是:<strong>服务器不向客户端返回任何信息,并关闭连接, 断开客户端和服务器的连接,防止恶意软件攻击威胁。</strong></p>
<h3 id="34-一些细节">3.4 一些细节</h3>
<p>这两个server模块,应该放在最前,优先处理。</p>
</div>
<div id="MySignature" role="contentinfo">
<hr style="margin-top: 30px">
<p>
<strong>最近笔者在整理第一本电子书书稿《前端面试手册》,有兴趣的同学可以关注下~</strong>
</p>
<p style="margin-top: 20px; margin-bottom: 20px">
喜欢我文章的朋友,可以通过以下方式关注我:
</p>
<ul>
<li><strong>「star」</strong> 或 <strong>「watch」</strong> 我的GitHub blog</li>
<li>RSS订阅我的个人博客:</li>
</ul>
<img src="https://img2018.cnblogs.com/blog/718206/201908/718206-20190808234850902-481673533.png" alt="wall的个人博客"><br><br>
来源:https://www.cnblogs.com/walls/p/11324567.html
頁:
[1]