别让SSL证书暴露了你的网站服务器IP

一只好运の鱼
2023-05-28 / 1 评论 / 215 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2025年03月22日,已超过83天没有更新,若内容或图片失效,请留言反馈。

前言

我们在搭建网站时,通常会使用SSL证书搭配cdn使用,以保护源服务器IP不被泄露,但是小心SSL证书泄漏了你的服务器IP

原理

这里使用 B站UP主 epcdiy 的视频介绍原理

防范方法

1.禁止IP直接访问网站

server {

listen 80 default_server;

listen [::]:80 default_server;

server_name _;

return 444;

}

2.使用错误的测试证书(推荐) 表情

可以使用Myssl的测试证书生成工具
Test
然后在宝塔面板把证书全部换为这个测试证书,(CDN处的证书 无需 更换)

3.屏蔽Censys的扫描IP

Censys给出了用于扫描的IP段,因此,你只需要屏蔽如下 IP 即可:

162.142.125.0/24
167.94.138.0/24
167.94.145.0/24
167.94.146.0/24
167.248.133.0/24
192.35.168.0/23
2620:96:e000:b0cc:e::

但是,Censys 并不会删除已被记录的数据。如果你已经在 Censys 上发现了有关你服务的信息,请先更换公网 IP 后再这么做。

4.屏蔽 UA

Censys 也给出了用于扫描的 User Agent,请屏蔽它。你可以创建一个 block_censysua.conf 的文件:

if ($http_user_agent ~ "Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)")
{
     return 418;
}

然后在 nginx.conf 的 server 或者 location 中引用它

include  block_censysua.conf;

5.开放端口

请按需开放端口,如果你要建站,那么除了 80 443 端口,剩下的只需要开放你的 SSH 端口就可以了。如果你只用 VNC 登录,那 SSH 端口甚至都可以不开放。

另外,如果你使用了宝塔面板,请一定要修改默认登录端口 8888 ——因此受害的人不在少数。

6.DNS解析

如果你前边的措施都还没做,就已经为域名解析好了源站的 IP,请赶快删除解析。不少扫描解析记录的网站也会暴露你的源站地址,甚至都不需要 Censys 出场。

7.少去检测网站

检测网站往往会为你的每一次测试进行排行,而这就正好为攻击者提供了名单。更有甚者,会公布一些除了你没人知道的子域名,比如 myssl.com

Test

资料参考:

  1. 可爱可恨的扫描程序 Censys
  2. 别让SSL证书暴露了你的网站服务器IP
1

评论 (1)

取消
  1. 头像
    小熊 亚太地区
    Windows 10 · Google Chrome
    沙发

    好办法

    回复