Edited at

さくらレンタルサーバーに独自SSL「Let's Encrypt」導入(Windows10編)

More than 1 year has passed since last update.

※2017年10月 追記

さくらレンタルサーバーがLet's Encryptに標準で対応しました!

https://www.sakura.ne.jp/function/freessl.html

下記のようなことをしなくてもコントロールパネルから設定可能です。

(嬉しいけど少し切ない)

※追記終わり


無料SSL証明書のLet's Encryptをさくらレンタルサーバーに導入してみたのでメモ。

root権限がないため、自分のPCで証明書を取得しサーバーに登録するという作業。

Linux環境が必要だが、Windows10でBashが使えるようになったのでWindowsのみでできた。


環境


  • さくらのレンタルサーバ(スタンダードプラン以上)

  • Windows10 「Bash on Ubuntu on Windows」


Bash on Ubuntu on Windowsをインストール

この記事がわかりやすい。初期設定もこの通りに。

Bash on Ubuntu on Windowsをインストールしてみよう!


Let's Encryptクライアントをインストール

公式から使用OSの手順通りにクライアントをインストールする

https://letsencrypt.jp/usage/install-certbot.html

早速Bashを起動してOSを確認

lsb_release -d

Ubuntu 14.04だった。

公式にあるコマンドを打ってしばらく待つ

wget https://dl.eff.org/certbot-auto

chmod a+x certbot-auto
./certbot-auto

apacheがない!というエラーが出たけどスルー。

使うのはレンタルサーバーだし。


SSL証明書取得

いよいよ証明書を取得する

./certbot-auto certonly --manual

以下流れ

メールアドレスを入力(色々な通知受信用)



規約に同意する



ドメイン名を入力



IPログ取得に同意する



するとこんな画面になる

キャプチャ.gif

①は、先ほど入力したドメイン名

②③はランダムな英数字

一旦Bashから離れる



サーバーにフォルダを作る


ドキュメントルート/.well-known/acme-challenge/


テキストファイルを作り「acme-challenge」フォルダに保存


ファイル名→②の英数字

ファイルの中身→③の英数字




Bashに戻り、エンターを押す。

無事に完了すると、その旨のメッセージとともに証明書の保存先が表示される。

IMPORTANT NOTES:

- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/ドメイン名/fullchain.pem.

確認してみる

sudo su

ls /etc/letsencrypt/live/ドメイン名/

cert.pem chain.pem fullchain.pem privkey.pem

の4ファイルが確認できる。

※エクスプローラで確認する場合は下記の場所を見る

C:\Users\ユーザー名\AppData\Local\lxss\rootfs\etc\letsencrypt\live\ドメイン名

デフォルトで表示されないので、フォルダーオプションにて


  • 「隠しファイル、隠しフォルダー、および隠しドライブを表示する」にチェック

  • 「保護されたオペレーティングシステムファイルを表示しない(推奨)」のチェックを外す


さくらのレンタルサーバにSSL証明書を登録

さくらのコントロールパネルへ。

以下流れ

ドメイン設定



SSL証明書欄の登録を押す



「SNI SSL を使用する」の横にある「証明書インストール」



秘密鍵をアップロードする。

「参照」から「privkey.pem」を選択してアップロード

…と思ったら秘密鍵が間違っていますと。Windowsだからシンボリックリンクきかないのね…

ということで、元ファイルを直接選択。無事いけた。

C:\Users\ユーザー名\AppData\Local\lxss\rootfs\etc\letsencrypt\archive\ドメイン名\privkey1.pem



証明書のインストール

「cert.pem(cert1.pem)」の内容を全部コピペ。



中間証明書のインストール

「chain.pem(chain1.pem)」の内容を全部コピペ

これで登録は完了!


SSLを有効にする

ドメイン設定へ戻る



4. SSLの利用をお選びください

「SNI SSLを利用する」にチェック

完了!

https://〜でアクセスできるようになる。

ブラウザのURLバーに鍵マークが無事表示された。


証明書の更新

証明書の有効期限は90日。

期限が切れる前に更新する必要がある。

残念ながら自動更新ができない。(さくらが対応してくれたらなー。)

更新するときは、再度SSL証明書取得から登録(更新)まで手動でやる。少し面倒だが、無料で手軽に独自SSLが使えるのは嬉しい。

シェルとタスクスケジューラで途中まで自動化できるような…

詳しくないのでわからないが更新するときチャレンジしてみる。


参考サイト