コンピューター

CentOS8でLet's Encryptを導入する方法

更新日:

要旨

今回はCentOS8でLet's Encryptを導入して、無料でSSLを使用する方法について記述します。

実行環境等

Conoha VPS 1コアCPU 512MB

CentOS8 64bit

Apache

iMac

実施要領

以下rootユーザーで行います。

アップデートします。

Apacheのインストール

httpdの起動はまだ行わないでください。Let's Encrypt導入後に行います。

ファイアーウォールの設定

httpとhttpsの通信を許可します。

再読み込みします。

設定状況を確認します。

 

サーバーホスト名の設定

ここで、ServerNameを自分のドメイン名に変更します。

ServerName  www.example.com:80

上記のwww.example.comの部分を自分のドメイン名にします。

このままhttpdの起動は行わずに、次はLet's Encryptのインストール・設定等を行なっていきます。

 

certbotのサイトでLet's Encryptのインストール方法を確認します。Let's Encryptはcertbotと呼ばれています。

ここでは、CentOS8とApacheの組み合わせでのインストール要領について記述します。

httpdが起動してないことを確認してください。起動している場合は停止してください。

httpd.confファイルを編集します。

このファイルの最後に以下を追記します。

NameVirtualHost *:80

 

<VirtualHost *:80>

ServerAdmin root@example.com

DocumentRoot /var/www/html

ServerName example.com

</VirtualHost>

ここで、example.comは自分のドメイン名にしてください。

また、/var/www/htmlの部分はデフォルトから変更してある場合は、それに書き換えてください。

 

ここでhttpdを起動します。

状態を確認します。

サーバーを再起動させてもhttpdが自動起動するための設定を行います。

httpdが自動起動状態になったか確認します。

enabledと表示されれば自動起動状態設定完了です。

 

次のコマンドを実行してください。

Let's Encrypt設定のために各質問に答えて入力していきます。

聞かれるのは、メールアドレス(更新のお知らせ等がこのメールアドレス宛に送られてきますので、使用しているメールアドレスを設定します。)、規約に同意するか、httpsにリダイレクトするか、などです。

成功すれば、Congratulation!と表示されて、更新のためのコマンド等が表示されますので確認しておいてください。

 

この状態で、https://[ドメイン名]でブラウザで表示させて確認をします。

正常であれば、表示されます。

 

この際、サイトが「安全な接続ではありません。」と表示された場合の対処法を記述します。

/etc/httpd/conf/httpd-le-ssl.conf ファイルに設定されている、

SSLCertificateFileとSSLCertificateKeyFileのファイルパスを、

/etc/httpd/conf.d/ssl.confファイルの該当箇所に修正して保存する。

そしてhttpd.serviceをrestartする。コマンドは、以下の通り。

 

さらに、SSL証明書は約3ヶ月で有効期限が切れるので、更新を自動設定します。

更新するコマンドは、certbot-auto renewです。

シェルスクリプトにします。

/rootで作成します。

 

certbot.sh

このファイルを実行ファイルにします。

 

/root/cron.confを作成します。

cron.confを登録します。

登録されたか確認します。

/root/crontab.confのファイル内容が表示されていれば、正常に登録完了です。

上の例では、毎日の00時00分にSSL証明書の自動更新が行われます。

これで完了です。お疲れ様でした。

結言

今回は、CentOS8でLet's Encryptを導入して、無料でSSLを使用する方法について記述しました。

最後までお読みいただき、ありがとうございました。

 

-コンピューター
-,

Copyright© 投資イン東京 , 2020 All Rights Reserved.