zbinlin
V2EX  ›  Node.js

SNI detector,一个用于验证 SNI 服务器域名的 Node.js 命令行工具

  •  
  •   zbinlin · Nov 8, 2016 · 3230 views
    This topic created in 3475 days ago, the information mentioned may be changed or developed.

    当我们需要验证一个服务器上的 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 。

    2 replies    2016-11-23 19:57:34 +08:00
    zbinlin
        1
    zbinlin  
    OP
       Nov 8, 2016
    补充一个 npm 上的链接: https://www.npmjs.com/package/sni-detector
    ixinshang
        2
    ixinshang  
       Nov 23, 2016   ❤️ 1
    不错 想试试 感谢
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2555 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 16:06 · PVG 00:06 · LAX 09:06 · JFK 12:06
    ♥ Do have faith in what you're doing.