【無料のSSL証明書】Let’s EncryptをCentOSに導入する手順②~証明書発行取得

CentOS

前回は無料で使える激アツのSSL証明書サービス「Let’s Encrypt」をCentOS6環境にインストールしてみした!

今回はその後の証明書の取得~自動更新の手順を解説します。

インストールがまだという方はこちらから!

上記ページでインストールが終わっているものとします

SSLサーバー証明書の取得

mod_sslインストール

#yum install -y mod_ssl

サーバ証明書の取得

cd /usr/local/
./certbot-auto certonly --webroot -w [外部アクセス可能なドメインルートのディレクトリパス] -d [ドメイン名] --email [メールアドレス] --no-bootstrap

※このコマンドを実行するサーバーが外部から指定するドメイン名でhttpアクセスできるようになっていること

※-wは正確にはapacheでいうDocumentRootではありません。ディレクトリパスの場所に一時ファイルを作成して外部からhttpアクセスされるのでそれが可能な場所を指定します

エラー発生

Skipping bootstrap because certbot-auto is deprecated on this system.
Your system is not supported by certbot-auto anymore.
Certbot cannot be installed.
Please visit https://certbot.eff.org/ to check for other alternatives.

インストールしなおそう

メールアドレス確認通知

メールアドレス確認通知
上記で指定したメールアドレスにメールアドレス確認のメールが届くので、リンクをクリックして確認完了させます。
今回の場合
——————————————-
差出人:Aaron Jue
件名:Please Confirm Your EFF Subscription
——————————————-

↑成功すると以下のファイルがつくられる

/etc/letsencrypt/live/ドメイン/cert.pem   サーバ証明書(公開鍵)公開鍵証明書 SSLCertificateFile ★ →発行会社につくってもらう

/etc/letsencrypt/live/ドメイン/privkey.pem 秘密鍵 SSLCertificateKeyFile ★ →パスフレーズが必要

/etc/letsencrypt/live/ドメイン/chain.pem  中間証明書 証明書チェーン SSLCertificateChainFile  ★ →発行会社から共通でもらえる

Webサーバー設定

ここではapacheを参考に

NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
        ServerName     【ドメイン】
        DocumentRoot 【ドキュメントルート】
        ServerAdmin    【メールアドレス】
        ErrorLog       logs/error.log
        TransferLog logs/access_log
                RewriteEngine on
                RewriteCond %{HTTP_HOST} ^【ドメイン】
                RewriteRule ^/(.*)$ https://【ドメイン】/$1 [R=301,L]

</VirtualHost>

<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/letsencrypt/live/【ドメイン】/cert.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/【ドメイン】/privkey.pem
        SSLCertificateChainFile /etc/letsencrypt/live/【ドメイン】/chain.pem
        ServerName     【ドメイン】
        DocumentRoot 【ドキュメントルート】
        ServerAdmin    【メールアドレス】
        ErrorLog       logs/error.log
        TransferLog logs/access_log
</VirtualHost>

更新をcron登録

火曜の16時実行の例

 0 16 * * 2 /usr/local/certbot-auto renew --post-hook "sudo service httpd restart"

テスト更新

以下のコマンドでSSL証明書更新のテストができる

sudo certbot renew --dry-run

参考にしたサイト

https://mobiletent.jp/centos6-apache-letsencrypt/

https://linux-svr.com/tips/SSL%E8%A8%BC%E6%98%8E%E6%9B%B8/33.php

コメント

タイトルとURLをコピーしました