Help us understand the problem. What is going on with this article?

Let's Encrypt の設定(Windows Server)

More than 1 year has passed since last update.

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

sugasaki
個人的なメモが多いです。 書いてる事は個人の見解であり所属する組織の公式見解ではありません
https://sugasaki.com/
runners
スポーツで世界を良くしたいエンジニアチーム。応援navi、.finisher、run&といった製品開発をしています!
https://www.wantedly.com/projects/167082
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした