CentOS8のLAMPサーバーをLet’s EncryptでHTTPS化
さくらVPSでカスタムインストールしたCentOS8(以下、CentOS8Server)に作成したLAMPサーバーをLet’s Encryptを導入してHTTPS化しました。
◎Let’s Encryptのダウンロード
- Let’s Encryptをgit経由で「/var」ディレクトリ以下にダウンロードしました。
# cd /var/ # git clone https://github.com/letsencrypt/letsencrypt #
◎Let’s Encryptの設定
- Let’s Encryptを利用して、サーバ証明書を取得する際に使うコマンド(certbot-auto)を使用して、必要なプログラムのインストールと初期設定(【E-mail】と【domain】の設定)を行いました。
# cd /var/letsencrypt/ # ./certbot-auto : Installed: python3-virtualenv-15.1.0-18.module_el8.0.0+33+0a10c0e1.noarch python36-3.6.8-2.module_el8.0.0+33+0a10c0e1.x86_64 python36-devel-3.6.8-2.module_el8.0.0+33+0a10c0e1.x86_64 augeas-libs-1.10.1-8.el8.x86_64 libffi-devel-3.1-18.el8.x86_64 platform-python-devel-3.6.8-4.el8_0.x86_64 python-rpm-macros-3-37.el8.noarch python3-pip-9.0.3-13.el8.noarch python3-rpm-generators-5-4.el8.noarch python3-setuptools-39.2.0-4.el8.noarch : Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): 【E-Mailを入力】 : No names were found in your configuration files. Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' to cancel): 【domainを入力】 : #
- 証明書の発行
# systemctl stop httpd # ./certbot-auto certonly -a standalone -d 【domainを入力】 #
- Apacheの「/etc/httpd/conf.d/ssl.conf」を編集してVirtual Hostの設定を行いました。
# cd /etc/httpd/conf.d/ # cp ssl.conf ssl.conf.org # nano ssl.conf #
- 以下のVirtualHost設定を追加しました。
NameVirtualHost *:443 <VirtualHost *:443> ServerAdmin 【E-Mail】 DocumentRoot /var/www/html ServerName 【domain】 SSLEngine on SSLCertificateFile /etc/letsencrypt/live/【domain】/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/【domain】/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/【domain】/chain.pem </VirtualHost>
- 以下のVirtualHost設定を追加しました。
- firewallにHTTPSを追加しました。
# firewall-cmd --permanent --add-service=https # firewall-cmd --reload # firewall-cmd --list-all : services: cockpit dhcpv6-client ftp http https ssh : #
- systemctlコマンドでApacheを起動しました。
# systemctl start httpd
- iMacのブラウザから「https://(CentOS8ServerのIP)/」にアクセスして、「index.html」の内容が「http://」の場合と同様に表示されることを確認しました。
- cronで証明書の自動更新を設定して、Let’s EncryptによるLAMPサーバーのHTTPS化を終了しました。
# crontab -e #
- cronには、以下のような設定を行いました。
0 10 1,15 * * /var/letsencrypt/certbot-auto renew --agree-tos && service httpd reload
- 備忘メモ:「ESC→コマンドモード 」「:wq→保存して終了 」「:q→保存せずに終了 」
- cronには、以下のような設定を行いました。
<= さくらVPS【CentOS8】phpMyAdmin | | | さくらVPS【CentOS8】DokuWiki => |