SNI detector,一个用于验证 SNI 服务器域名的 Node.js 命令行工具
发布于 7 年前 作者 zbinlin 4001 次浏览 来自 分享

当我们需要验证一个服务器上的 SNI 域名是否正常的时候,通常需要在浏览器或 openssl 来获取到证书,然后检查证书里相应的字段是否包含域名,但这种方式极为不便。

为了简化验证的过程,我使用 Nodejs 开发了一个小工具 sni-detector 用于验证指定服务 器上的 SNI 是否包含指定的测试域名。

使用方式非常简单,先使用 NPM 来安装:

npm install -g sni-detecotr

在安装成功后,就可以使用 sni-detect 命令来验证了。

使用 sni-detect --help 可以查看相应的参数说明,在此,我以测试域名 www.baidu.comimg.baidu.com 来验证 IP 为 14.215.177.52 的服务器为例:

sni-detect -t www.baidu.com,img.baidu.com 14.215.177.53

如果返回 14.215.177.52 OK 表明验证通过,如果返回 14.215.177.52 Failue 表明验证失败。 这里如果需要查看失败的详细信息,可以加上 --verbose 参数:

sni-detect -t www.baidu.com,img.baidu.com --verbose 14.215.177.53

PS :本工具仅支持 Node.js v6+

本工具也同时开源在 Github 上,欢迎提 issue 和 PR 。

回到顶部