IPのためにSSL証明書を発行する

2159 ワード

転載は文章の出所を明記してください:tlayan.me/get-ssl-cer…

に質問


昨日「公共DNSサーバー整理」という文章を書いたとき、Cloudflare公共DNSサービスの公式サイトにアクセスしたら、なんと「https://1.1.1.1”!
寡聞ですが、「https」方式でパブリックネットワークIPにアクセスするのは生まれて初めてです(もちろんCF DNSのもう一つのIPもhttps方式でアクセスしています:」https://1.0.0.1「).複数のブラウザを使用してテストした場合、これは正当な要求アドレスとみなされます.証明書を表示するには、DigiCertによって発行された正当な証明書です.
次の事実を明確にすることができます.
  • 1.1.1.1はIPに違いない.
  • .1はトップドメイン名接尾辞(TLD)ではありません.
  • 1.1.1.1はドメイン名/ホスト名(FQDN)ではない.
  • は普段httpsでIPにアクセスすることはめったにありません.

  • IPに合法的なSSL証明書を発行することができますか?

    に答える


    superuserのウェブサイトでは、このような疑問があります.Why does my browser think thathttps://1.1.1.1 is secure?.ネットユーザーの答えによると、公網IPに証明書を発行することができるが、珍しい.
    IPのために証明書を発行することができることを確認して、引き続き資料を調べて、以下の情報を見つけます:
  • 証明書に署名できるIPはパブリックネットワークIPのみである.
  • はOV証明書しか発行できません.企業名の正当性を検証し、whois情報に基づいてIPの所有権を検証します.

  • 第二条によると、個人はIPのために証明書を申請することができない.IP所有権がなければ、企業や機関がクラウドメーカーから取得したIPも証明書を申請できません.使用権がありますが、所有権がありません.ドメイン名はIP(相対)よりも入手しやすく、1つのドメイン名が複数のIPに対応できるため、IPのために証明書を申請することは極めて少ない.

    テスト


    その理由を明らかにして、次に理論と一致するかどうかを検証します.

    Let's Encrypt


    まず、証明書を無料で取得するLet's Encryptcertbotツールを出して、IPに証明書を発行してみてください.出力は以下の通りです.
    [root@xxxx ~]# certbot certonly --standalone -d xxx.xxx.xxx.xxx
    Requested name xxx.xxx.xxx.xxx is an IP address. The Let's Encrypt certificate authority will not issue certificates for a bare IP address.
    

    結論:Let's EncryptはIPのために証明書を発行することができません!

    DigiCert


    次に、証明書発行機関から取得してみます.DigiCertの注文ページでは、ホスト名の欄から入力データに対するフィードバックは以下の通りです.
  • 公網IP結論:公網IPはSSL証明書を取得することができる!
  • イントラネットIP結論:イントラネットIPのためにSSL証明書を発行することはできません!
  • ドメイン名の結論:間違いなく問題ない
  • テスト結果は理論と一致した(支払いと後続のステップは検証されていない).

    リファレンス

  • superuser: Why does my browser think that https://1.1.1.1 is secure?
  • LeaderSSL: Issuing SSL certificate for an IP address
  • DV型、OV型、EV型証明書の主な違い