質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

4回答

1443閲覧

SSLサーバ証明書について

s-lll

総合スコア7

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

0グッド

0クリップ

投稿2020/06/11 03:01

編集2020/06/11 03:02

前提・実現したいこと

SSLサーバー証明書について、疑問があります。
こちらにアクセスをするとアドレス部分に「保護されていない通信」と表示されています。
そこの部分をクリックしますと、「証明書」項目がありその中には、以下の記載がありました。
イメージ説明

SSLサーバー証明書を取得していないにも関わらず、コモンネームが既に登録されているのは何故なのでしょうか。
SSLサーバー証明書を取得していないということは、「SSLサーバー証明書が存在しません」のような表示になるのではないかと思いました。

試したこと

コモンネームSSLサーバー証明書について調べてみましたが、どうしてもここの部分の疑問が払拭出来ませんでした。

こちらの疑問につきまして、どなたかご助言頂けましたら幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

提示していただいてる証明書は「ワイルドカード証明書」というタイプでして、*.wp.xdomain.ne.jp にマッチする任意のホスト名に使える証明書です。maisumakunさんが指摘しているように、これはレンタルサーバー事業者が用意しているものですね。
一方エラーになっている理由は、aaaa12345.wp.xdomain.jp というホスト名は先のワイルドカードにマッチしない(.ne.jpと.jpの違い)からです。


追記しました。
レンタルサーバーは1台のサーバーに複数のホスト(ドメイン名)が同居しています。
www.example.jp,
www.example.com,
www.example.co.jp …が同居する場合、通常それぞれのホスト名に対応した証明書を導入します。これは利用者が持つ独自ドメインの場合はそうなります。

一方、xdomain.jpはレンタルサーバーが登録しているドメイン名でして、利用者はそのサブドメインを使う形になります。今回のaaaa12345.wp.xdomain.jpは、xdomain.jpのサブドメインです。
このようなケースでは、以下のようなサブドメインがついたサーバーが共存することになります。

lotno75.wp.xdomain.jp
oyakobousai.wp.xdomain.jp
breg.wp.xdomain.jp
yagischool.wp.xdomain.jp
...

この場合、それぞれのホスト名に対応した証明書を用意してもよいのですが、すべてに共通して使えるSSL証明書があれば便利です。そのような証明書は実際にあり、「ワイルドカード証明書」と呼ばれます。

*.wp.xdomain.jp に対応したワイルドカード証明書の場合、将来、
hogehoge.wp.xdomain.jp や
foo.wp.xdomain.jp がサーバーに追加されても、新たに証明書を登録しなくても、そのままSSL証明書として使えます。

ここまでは、一般論です。

今回のケースですと、「使えるはずなのにエラーになる」わけですが、その理由は下記の二点です。

(1) ワイルドカードにマッチしないホスト名である

aaaa12345.wp.xdomain.jp というホスト名に対応するワイルドカード証明書は、

*.wp.xdomain.jp

というコモンネームが必要ですが、サーバーにインストールされている証明書は、

*.wp.xdomain.ne.jp

です(.neが余計)。なので、ワイルドカードにはマッチせず、エラーになります。

(2) 証明書自体が正規のものでない

このサーバーにインストールされている証明書は正規の証明書ではなく、自己署名(オレオレ証明書)のようです。このため、仮にワイルドカードがマッチしていても、どのみちエラーになります。

投稿2020/06/11 03:43

編集2020/06/11 09:11
ockeghem

総合スコア11705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

s-lll

2020/06/11 03:58 編集

ご回答ありがとうございます。 >これはレンタルサーバー事業者が用意しているものですね。 こちらなのですが、レンタルサーバー事業者が、ドメイン(aaaa12345.wp.xdomain.jp)を作成した際に、デフォルトのSSLサーバー証明書を作成したドメインへ実装しているが、コモンネームには(aaaa12345.wp.xdomain.jp)こちらを登録していない為、証明書に記載されているコモンネームと作成したドメイン「aaaa12345.wp.xdomain.jp」のアドレスがマッチせずに、SSL通信が確立出来ていないといった形でしょうか...?
退会済みユーザー

退会済みユーザー

2020/06/11 10:39

なんでこんな証明書使ってるんですかね?不思議だ。。。
s-lll

2020/06/11 23:40

@ockeghemさん 追記頂きまして、ありがとうございます。 ご丁寧に教えて頂きましたおかげで、SSL証明書の疑問だった点が払拭できました。 毎度、ご親切に教えて頂き感謝です。 大変、勉強になりました。
guest

0

SSLサーバー証明書を取得していないにも関わらず、コモンネームが既に登録されているのは何故なのでしょうか。

レンタルサーバ側がデフォルト設定のを適用しているだけかと思います。

投稿2020/06/11 03:06

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

SSLサーバー証明書を取得していないにも関わらず、コモンネームが既に登録されているのは何故なのでしょうか。

アクセスして「保護されていない通信」と表示されているサイトと、今回の証明書にある wp.xdomain.ne.jp, *.wp.xdomain.ne.jp とが同じサーバに同居しているからです。
そのうえで、アクセスを受けたサーバが wp.xdomain.ne.jp, *.wp.xdomain.ne.jp のつもりで証明書をクライアントに提示してきていることになります。

SSLサーバー証明書を取得していないということは、「SSLサーバー証明書が存在しません」のような表示になるのではないかと思いました。

本来、複数のサイトを同じサーバで運用するケースであっても、アクセスされたサイトに応じて証明書を使い分ける機能が備わっています。( SNI )
しかし、今回アクセスしたサイト用の証明書がインストールされていないということで、サーバがデフォルトとして設定されている証明書を使う挙動になっているのでしょう。
※単にSNIを使っていないだけかも知れませんが

投稿2020/06/11 15:18

angel_p_57

総合スコア1681

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

s-lll

2020/06/11 23:43

ご回答ありがとうございます。 ご丁寧に教えて頂きましたおかげで、理解することができました。
guest

0

SSLサーバー証明書を取得していないということは、「SSLサーバー証明書が存在しません」のような表示になるのではないかと思いました。

webサーバ(apacheやnginx)でどのサーバー証明書を使用するのか?も設定項目のひとつですので、証明書ファイルがないとそもそもwebサーバが起動しません。
そのため、『「SSLサーバー証明書が存在しません」のような表示になる』状態が起こりえません。

通信がSSLで暗号化されることは、https:/***のサイトならばできています。
そのサーバが安全であるか証明されていること(公的認証局からだされた証明書を使っているか)は別のことです。

apacheでhttpsしたい場合はmod_sslを利用しますが、mod_sslインストール時に自己証明書が作成されています。

投稿2020/06/11 07:21

yukky1201

総合スコア2751

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

s-lll

2020/06/11 23:40 編集

ご回答ありがとうございます。 >証明書ファイルがないとそもそもwebサーバが起動しません。 こちらですが、webサーバーを起動するに当たっては、公的認証局から出された証明書(SSL証明書)を使用せずとも、自己証明書が作成される為、どこかのサイトにアクセスした際は、ホストはクライアントに必ずそのサーバーの証明書を提示しなければならないといった形でしょうか?
yukky1201

2020/06/12 02:49

apache + mod_ssl では自動的に自己証明書が作られますが、 私の操作したことがあるものとして、linixのnginxや、Windowsのiisは手動で自己証明書を作成して設定しなければなりませんでした。 もちろん公的証明書を取得してサーバ証明書とすることも可能です。 公的証明書を使うと、クライアント(ユーザ)はこのWebサーバは安全なんだなと認識できます。 (オンラインショップが自己証明書を使ってたら嫌ですよね)
s-lll

2020/06/12 07:50

ご返信ありがとうございます。 >公的証明書を使うと、クライアント(ユーザ)はこのWebサーバは安全なんだなと認識できます。 実質、証明書がないホストへのアクセスというのはあり得ないが、それが公的証明書でない場合は、クライアントが安全であると認識出来ずに、「保護されていない通信」などと警告が表示される、といった流れですね。 勉強になりました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問