サブドメインを含めてマルチドメイン証明書でサイトを常時SSL化する手順
はじめに
ポートフォリオサイトを作成し、SSL化をするのにかなり手間取ったため、手順を記録しておく。今回はSAN(Subject Alternative Name)(マルチドメイン)証明書の方法を選択。ちなみにもう一つの方法としてワイルドカード証明書を使用する方法もある。個人的にはサブドメイン数も少ない場合はマルチドメイン証明書の方が簡単な気がする。
マルチドメイン(SANs)証明書はSAN(Subject Alternative Name)フィールドに複数のドメイン名(FQDN)を追加することで、最大250の異なるドメインのwebサイトを1枚のSSLサーバー証明書で保護できます。
ワイルドカードの場合、同一のドメイン配下であれば、複数の異なるサブドメイン(FQDN)について1つのライセンスでSSLサーバー証明書を導入できます。
マルチドメイン(SANs)証明書とワイルドカード証明書
使用環境
- ConoHaVPS
- windows10
- Let's Encrypt
Let's EncryptとSSL証明書のインストール
まずはサーバーへSSH接続を行いログインする
windows poewershellなどを使用。
mod_sslがインストールされているか確認
# httpd -M
ssl_module(shared)
:
:
:
と表記が並べばインストール済
ない場合は以下のコマンドを実行。
# yum install mod_ssl
インストールできたら下記を実行
# systemctl restart httpd
httpsプロトコルで使用するポート番号の443がfirewallで解放されているか確認
ちなみにConoHaVPSはデフォルトで解放されていないようなので注意!
下記コマンドで確認
# firewall-cmd --list-all
services: dhcpv6-client http https sshの欄にhttpsがあればOK
なければ下記を実行
# firewall-cmd --add-service=https --zone=public --permanent
firewallを再起動
# systemctl restart firewalld
Let's Encryptをインストール
# yum install certbot python2-certbot-apache
単一ドメインの場合
# certbot --apache -d test.com
サブドメインもある場合
# certbot --apache -d test.com -d sub.test.com
メールアドレスを入力する
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [メールアドレスを入力]
規約への同意
(Y)es/(N)o //agreeから変わってた気がする
Let's Encryptパートナーにemailを公開しても良いか同課の確認。公開しない場合はNを選択。
Would you be willing to share your email~~~~
(Yes)/(N)o
インストールは完了なのでhttpdを再起動する
# shistemctl restart httpd
証明書の詳細確認
SSL化したサイトにアクセスしてみてアドレス左横の南京錠マークをクリックしてみる。
そこから証明書をクリックすると証明書の情報が確認できる。
発行者がR3になっていればOK。
(少し前まではLet's Encryptだったらしい)
Let’s EncryptのSSL証明書の発行元表記が'R3'に変更される
参考
無料SSL証明書のLet’s EncryptでVPSサーバーの常時SSL化
ConoHa教室 Hello VPS ~WordPress公開までの道~
7時間目 SSL証明書をインストールしてサイトをSSL化する