@kyanny's blog

My thoughts, my life. Views/opinions are my own.

イントラネット SSL

イントラネット内のウェブサーバーに SSL/TLS 接続したい場合、グローバルサインやデジサートのような認証局(CA:Certification Authority)から証明書を発行できるか?

=> (今はもう)できない。

イントラネット名、IPアドレスでの証明書の発行はできますか? | FujiSSL-安心・安全の純国産格安SSLサーバ証明書

できません。

CAブラウザフォーラムの決議によりパプリックな認証局(CA)は外部で検証できないホスト名を使ったイントラネット名またはIPアドレスを使用するSSL証明書を2016年10月1日以降発行できなくなりました。

これは業界全体の標準でありFujiSSL独自のものではありません。

↑の根拠は、この辺に書いてある

cabforum.org

  1. What are in the Baseline Requirements?

Examples of practices covered in the Baseline Requirements include: ... Certificates with a SAN or Common Name (CN) field containing a Reserved IP Address or Internal Server Name are being phased out and such certificates will no longer be valid after October 2016.

cabforum.org

↑ここから PDF を読むのが確実だが、日本語訳もある↓

CA/ブラウザフォーラム パブリック証明書の発行および管理に関する基本要件v.1.0

9.2.1 Subject Alternative Name エクステンション

本要件の発効日以降、予約 IP アドレスまたは内部サーバ名を含む subjectAlternativeName エク ステンションまたは サブジェクト コモンネーム フィールドを備えた証明書を発行する前に、 CA は、かかる証明書の使用を CA/ブラウザフォーラムでは推奨していないこと、およびその 運用が 2016 年 10 月までに廃止されることを申請者に通知するものとする(SHALL)。また、 発効日以降、CA は、予約 IP アドレスまたは内部サーバ名を含む subjectAlternativeName エク ステンションまたは サブジェクト コモンネーム フィールドを備えた、有効期限日が 2015 年 11 月 1 日以降の証明書を発行しないものとする(SHALL NOT)。2016 年 10 月 1 日以降、 CA は、subjectAlternativeName エクステンションまたは サブジェクト コモンネーム フィール ドに予約 IP アドレスまたは内部サーバ名が含まれている、すべての有効期限内の証明書を失効 するものとする(SHALL)。

Can I request a certificate for an intranet name or IP address? | SSL Certificates - GoDaddy Help SG

What are my alternatives if I want to use an IP address?

Instead of securing IP addresses and intranet names, you should reconfigure servers to use Fully Qualified Domain Names (FQDNs), such as www.coolexample.com.

After configuring a FQDN to point to your IP address, you can generate a CSR for the domain name, and then request your certificate.

ドメインを取得してそのドメインに対する証明書を発行せよ、と。

では、自己署名証明書を発行して使うしかないのか?と思って調べるとこんなのが見つかった。これは一体?

社内限定サイトも専用SSLでセキュアな通信環境を構築 | GMOグローバルサインカレッジ

イントラネットSSL|GMOグローバルサイン【公式】

でもよく読むと、

イントラネットSSLでしたら、ブラウザごとにルート証明書の登録が必要になりますが、ホスト名でも設定ができ、ブラウザの警告を出さずに社内サイトでも通信を暗号化することができます。

と書いてあって、これは実質的に自己署名証明書を端末の証明書ストアにインストールしてまわるのと作業としては同じ(厳密にはおそらく、プライベート認証局を立ててその証明書を各端末にインストールし、ウェブサーバーで使う証明書はそのプライベート認証局から発行する、というのと同じなのだろう)。

つまり、結局は「FQDN に対する証明書を(信頼された)認証局から発行する」or「自己署名証明書を発行する」の二択。