すでにSSLなしでは(80)では通信できている状態
CentOS release 6.10 (Final)
Apache/2.2.15
yum -y install centos-release-scl
yum -y install python27 python27-python-tools
cd /usr/bin
wget https://dl.eff.org/certbot-auto
chmod 755 certbot-auto
# scl enable python27 bash
# python -V
Python 2.7.13
certbot-auto certonly --webroot -w /var/www/html/example.com -d www.example.com,example.com -m info@example.com
ここまでは下記サイトを参考にさせていただきました。
https://qiita.com/mindwood/items/4f09da35fa9ffff6f53d
SSL関連の設定を3つのファイルに分ける。
/etc/httpd/conf.d/ssl.conf
ssl.conf → SSLの共通設定
ssl.www.example.com.conf → https://www.example.com 用の設定
ssl.example.com.conf → https://example.com 用の設定
apacheはconf.d以下に配置された「.conf」ファイルをhttpd.confにインクルードするので追加の設定は新たにファイルをこしらえたほうがすっきりします。
まず、ssl.confをコピーします。
cp ssl.conf ssl.www.example.com.conf
ssl.confの設定
ssl.confには、wwwとwwwなしで使う共通設定のみ残します。
NameVirtualHost *:443 を追記する(どこでもいい。迷ったら一番最後)
次は、www.example.com.confの設定。
www.example.com.confからssl.confに残した部分を削除。
以下の部分を修正
↓
「DocumentRoot」と「ServerName」の項目を有効にする。
DocumentRoot "/var/www/html/example.com" #環境に合わせて修正する
ServerName www.example.com:443 #環境に合わせて修正する
下記も修正
#SSLProtocol all -SSLv2
↓
SSLProtocol all -SSLv2 -SSLv3
#SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES
↓
SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES!RC4
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
↓
SSLCertificateFile /etc/letsencrypt/live/www.example.com/cert.pem
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
↓
SSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
#SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt
↓
SSLCertificateChainFile /etc/letsencrypt/live/www.example.com/chain.pem
設定を確認。
apachectl configtest
syntax OK と表示されたらwww.example.com.confの設定は完了。
次にexample.com.confの設定をします。
cp www.example.com.conf example.com.conf
example.com.confの設定を修正。
設定を確認。
apachectl configtest
apacheリスタートします。
両方のSSL通信を確認する。
ここまでは下記サイトを参考にさせていただきました。
http://y-stream.blogspot.com/2011/09/apachessl.html
毎週土曜日の午前3時に更新チェック
# crontab -e
00 02 * * 5 scl enable python27 "bash -c \"certbot-auto renew --post-hook '/sbin/service httpd restart'\"" > /var/log/certbot.log 2>&1
ここまでは下記サイトを参考にさせていただきました。
https://qiita.com/mindwood/items/4f09da35fa9ffff6f53d
0 件のコメント:
コメントを投稿