当サイトはプロモーションが含まれています。

Let’s Encryptで証明書作成 2017年7月版

暗号化イメージ

過去、「Let’s Encryptが正式版になったので試してみました」や「Let’s EncryptでManual発行してみました」で度々取り上げた Let’s Encrypt ですが、筆者お仕事環境が CentOS 7 系が増えてきたので再度情報をまとめてみました。

今回は Webroot プラグイン、Standalone プラグイン、Manual プラグインでの取得を試してみました。

補足
以下、「CentOS 7.3.1611」上での操作となります。

クライアントのインストール

クライアントをインストールします。CentOS 7 系の場合、EPEL からインストールできます。

yum install epel-release
yum install --enablerepo=epel certbot

依存関係のパッケージもインストールされ、特に問題なく完了するものと思われます。(Apache プラグインは使用しないため、python-certbot-apache はインストールしていません)

Source:Certbot クライアントのインストール – Let’s Encrypt 総合ポータル

証明書の取得(Webroot プラグイン)

既に WEB サーバーが起動していて、停止せずに証明書を発行したい場合に Webroot プラグインを使用します。

certbot certonly --webroot -w /var/www/html -d example.com

Saving debug log to /var/log/letsencrypt/letsencrypt.log
# 初回のみ、メールアドレスの登録が求められます。有効期限の案内などが配信されます。
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel):<メールアドレス>
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org

# 初回のみ、利用規約への同意を求められます。
-------------------------------------------------------------------------------
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf. You must agree
in order to register with the ACME server at
https://acme-v01.api.letsencrypt.org/directory
-------------------------------------------------------------------------------
(A)gree/(C)ancel: A

# 初回のみ、メーリングリストへの参加可否を求められます。
-------------------------------------------------------------------------------
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about EFF and
our work to encrypt the web, protect its users and defend digital rights.
-------------------------------------------------------------------------------
(Y)es/(N)o: N

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Using the webroot path /var/www/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will
   expire on 2017-10-02. To obtain a new or tweaked version of this
   certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Source:https://free-ssl.jp/usage/#GetCertificate
Source:https://free-ssl.jp/docs/using.html#webroot

証明書の取得(Standalone プラグイン)

Standalone プラグインは、クライアント内蔵の WEB サーバーで認証を行うので、既に WEB サーバーが起動中の場合には一旦停止する必要があります。

certbot certonly --standalone -d example.com

Saving debug log to /var/log/letsencrypt/letsencrypt.log
...(略)
# 初回のみ、メールアドレスの登録、利用規約への同意、メーリングリストへの参加可否を求められます。(詳細は上記を参照してください)
...(略)
Obtaining a new certificate
Performing the following challenges:
tls-sni-01 challenge for example.com
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will
   expire on 2017-10-02. To obtain a new or tweaked version of this
   certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Source:https://free-ssl.jp/usage/#GetCertificate
Source:https://free-ssl.jp/docs/using.html#standalone

証明書の取得(Manual プラグイン)

証明書を発行するサーバーと導入するサーバーが別の場合や認証ステップを手動で実行したい場合に Manual プラグインを使用します。

certbot certonly --manual -d example.com

Saving debug log to /var/log/letsencrypt/letsencrypt.log
...(略)
# 初回のみ、メールアドレスの登録、利用規約への同意、メーリングリストへの参加可否を求められます。(詳細は上記を参照してください)
...(略)
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com

# IP アドレスを記録するよ!と確認されます。
-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o: Y

-------------------------------------------------------------------------------
Make sure your web server displays the following content at
http://example.com/.well-known/acme-challenge/(認証ファイル名) before continuing:

(認証ファイル内に記載する認証コード)

...(略)
Press Enter to Continue
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will
   expire on 2017-10-02. To obtain a new or tweaked version of this
   certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

設置した認証ファイルへはリダイレクトなどを介さないようにする必要があります。
うまく認証が通らない場合には、Let’s Encrypt のログを確認してください。

Source:https://free-ssl.jp/docs/using.html#manual