LoginSignup
19
33

More than 5 years have passed since last update.

Let's Encrypt の設定(Windows Server)

Posted at

Let's Encrypt の設定(Windows Server)

謝辞

以下のサイトを参考にさせていただきました。
Let's EncryptでIIS上にSSLサイトを導入する方法(無料) | Web備忘録

実行環境

終始Windows Server内にて作業しました。(リモートにて)
OSはWindows Server 2016です。

Let's Encryptの導入

以下のサイトからzipファイルをダウンロード
https://github.com/Lone-Coder/letsencrypt-win-simple/releases
(執筆時、2017/10/27 現在 v1.9.7 beta9 が最新)
でしたが、Latest releaseのv1.9.6.2 を使いました。
また、v1.9.6からNew UXになっているらしく、他の解説サイトと微妙に画面遷移が変わっているようです。

image.png

画面下の方にスクロールするとDownloadsの見出しでファイルリストが並んでいます。

下の方にいくにつれて新しいようなので下の方をダウンロードします。
image.png

ファイルの解凍

ファイルを解凍すると以下のような状況になっていると思います。
image.png

ここからさきはコマンドプロンプトにて実行していきます

ローカルのWebサイトのフォルダ直下に、/.well-known/acme-challengeを作成します。
.well-known はエクスプローラーでは作成できないので、mkdir .well-known として作成します。
その下にacme-challengeを作成して、さきほどダウンロード・解凍したファイル「Web_Config.xml」を「web.config」とリネームして保存します。
image.png

これでLetsEncriptがこのフォルダにアクセスできるようになり準備が完了しました。

証明書を取得する

ここからは解凍したフォルダをカレントにしてコマンドプロンプトにて作業していきます。
まずは管理者権限でコマンドプロンプトを起動します。
その後、解凍したフォルダへカレントフォルダを変更します。
> cd c:^temp^

下記の書式で環境に合わせて letsencrypt.exe を実行します。

書式

letsencrypt --accepttos --manualhost <Webサイトの完全修飾ドメイン名> --webroot <ローカルのWebサイトのパス>
具体例
letsencrypt --accepttos --manualhost www.webbibouroku.com --webroot C:\hoge\webbibouroku

実行すると処理が始まり、初回の場合はメールアドレスの入力を求められますので入力して続行します。

メールアドレス入力のスクリーンショットを取りわすましたが、入力を求められたらアドレスを入れてください。

その後は証明書を作成するかなどのメニューが表示されます。

N: Create new certificate
W: [Legacy] Generate a certificate via WebDav and install it manually.
F: [Legacy] Generate a certificate via FTP/ FTPS and install it manually.
L: List scheduled renewals
R: Renew scheduled
S: Renew forced
C: Cancel scheduled renewal
X: Cancel *all* scheduled renewals
Q: Quit

image.png

Nを入力してEnter

 1: Single binding of an IIS site
 2: All bindings for a single IIS site
 3: All bindings for multiple IIS sites
 4: Manually input host names
 C: Cancel

Which kind of certificate would you like to create?:

と尋ねられますので、登録しているドメイン全部をまとめて証明書とりたい場合には3を入力します。

その後、証明書が作成されます。私の環境ではいかに作成されました。
C:\ProgramData\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org

その後、実行しているユーザー名を尋ねられますので、ログインしているユーザー名とパスワードを入力してください。

Do you want to specify the user the task will run as? (y/n): - yes

 Enter the username (Domain\username): administrator

 Enter the user's password: ************
 [INFO] Renewal scheduled 2,3,5 - renew after 2017/12/25 10:40:35 午前

これで処理が完了します。

最初からやり直したい場合いにはyを押せば最初のメニューに戻ります。

Would you like to start again? (y/n):

image.png

バインドメニューを表示すると、httpsの設定までも完了しています。

image.png

あとはhttps://xxxxx
でアクセスしてみて、正常にアクセスできたら成功です。

# 証明書の更新タスク

タスクスケジューラを起動し、左のツリーでタスクスケジューラライブラリを選択すると、タスクの一覧が中央に表示されます。その中に、letsencrypt-win-simple httpsacme-v01.api.letsencrypt.org という名前のタスクがあります。

image.png

19
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
33