【CentOS & Apache】Let’s Encryptの無料SSL証明書をインストールする

CentOS & Apacheの環境へLet’s Encryptの無料SSL証明書をインストールし、SSL(https)通信を実現する手順をメモします。

環境:CentOS 7.8, Apache/2.4.6

1. Apacheの設定ファイルを編集する。

# vi /etc/httpd/conf/httpd.conf

viインサートモードでファイルの任意の箇所へ以下の内容を追記する。
(hoge.comの箇所へ実際のドメイン名を入力してください)

<VirtualHost *:80>
ServerAdmin root@hoge.com
DocumentRoot /var/www/html
ServerName hoge.com
</VirtualHost>

Apacheを再起動する

# systemctl restart httpd

2. Apacheの拡張モジュール「mod_ssl」をインストールする

# yum -y install mod_ssl

3. Let’s Encrypt証明書をインストールする

cerbotというソフトをインストール

# yum -y install certbot python2-certbot-apache

完了したら、

cerbotコマンドを実行
(hoge.comの箇所へ実際のドメイン名を入力してください)

# certbot --apache -d hoge.cm

以下の項目へそれぞれ入力、Enterを押して実行を進めます。

  • Enter email address メールアドレスの入力
  • (A)gree/(C)ancel: 規約の同意 (Aを入力)
  • (Y)es/(N)o:Let’s Encryptパートナーにメールアドレスを公開 (必要なければNを入力)

以下のメッセージが表示されると証明書のインストール成功です!
Congratulations! You have successfully enabled https://hoge.com

httpsでのサイトアクセスが可能になっているはずです。
(通常のhttpアクセスもhttpsへリダイレクトされるようになります)

ブラウザのアドレスバー隣の鍵マークを開くと、有効な証明書が確認出来ます。

(Let’s Encryptの無料SSL証明書の有効期限は通常3ヶ月です)

「このサイトにアクセスできません」と出た場合
サーバーでファイヤーウォール(firewall)を有効にしている場合、
サービスとしてhttpsが許可されていない可能性があります。

以下の記事を参考に、httpsを許可してください。

【CentOS7】ファイヤーウォール(firewall)にSSL通信を許可する方法

Follow me!