実はSSLを導入する費用はピンキリで提供している会社によっても値段が違いますし、SSLのタイプによっても違います。
(トピずれするので各社の料金体系やSSLタイプについては今回は割愛します。)
そんな中、無料でSSLを実現できる方法が公開されているのでご紹介します。
これは決して違法とかグレイな方法ではなく、ある団体がOpen sourceの流れでSSLもただで提供しちゃおうぜ ってことではじめられたサービスです。
名前はLet's Encryptといいます。
https://letsencrypt.org
今回はWindowsサーバに導入したのですが、超簡単でした。以下手順です。
1. 本体をダウンロード
下記サイトで最新のLetsencrypt-win-simple (zipファイル)をダウンロードします。
https://github.com/Lone-Coder/letsencrypt-win-simple/releases
2. zipファイルを解凍します。
3. 本体の実行ファイルをたたきます
コマンドラインで作業する必要があります。Windowsの検索窓で"cmd"と打つとコマンド入力画面が立ち上がります。
画面が立ち上がったら、cdコマンドを使って解凍したフォルダへ移動します。
コマンド例
[crayon]
cd C:\Users\xxxxxxxx\Downloads\letsencrypt-win-simple.V1.9.3
[/crayon]
移動したら下記のコマンドでLet's encryptを実行します。
[crayon]
LetsEncrypt
[/crayon]
4. 設定をすすめます
いくつかコマンドで聞かれることがありますが、基本Yesですすめます。
途中でSSL化をするサイトを選択させる質問があります。これはすでにIISで登録されかつhost nameが登録されれているサーバがリストされます。
※host name が登録されている必要があります。
SSL化したいサイトの番号を入力し、Enterを押します。
5.設定されたか確認します。
ステップ4で最後まで進むと設定は完了です。IISを立ち上げて、443ポートが設定されていることを確認します。
さらに、ブラウザでhttpsでアクセスしできることを確認します。
証明書の詳細を確認したい場合は、f12を押してDeveloperツールを立ち上げ、Securityタブをクリックします。
view certificateボタンを押すと登録情報が見えます。
リニューアルについて
Let's encryptは2017年5月12日現在、有効期間は3ヵ月となっているようです。有料のSSLは1年以上が普通なので、かなり短いですね。ということでリニューアルの方法をお教えします。
下記のコマンドをたたくだけです。
[crayon]
LetsEncrypt --renew
[/crayon]
これだけですが、マニュアルでやっているとおそらくいつか忘れるので、タスクスケジューラで定期的にたたくようにすればよいと思います。
ご利用にあたり注意点1
このLet's Encryptに関することではありませんが、先日オレオレ証明書をつかっていたサイトが最新ブラウザで突如みえなくなる という問題がありました。このLet's Encryptもこういう問題が絶対にないとは言い切れないので、この点をご理解の上、ご使用ください。
ご利用にあたり注意点2 -11/15/2017更新
Schedulerで動かす場合はパラメータに --emailaddress xxxx@xxx.com を追加してください。これを追加しないとpromptでemailアドレスを聞かれている状態でタスクが止まってしまい、永遠に終わらなくなってしまいます。