文書の過去の版を表示しています。
【AWS】>【EC2】>【Elastic IP】>【新しいアドレスの割り当て】 【アドレスの関連付け】、EC2のインスタンスを選択する
【AWS】>【EC2】>【セキュリティグループ】>【インバウンド】>【HTTPS】がなければ追加
今回はテスト用に、Freenomでドメインを取得。
など適当に。
Freenomのドメイン設定画面で、【Use DNS】を選び、EC2に割り当てた【Elastic IP】を入力する。
$ sudo mkdir /var/www/aaaa-test.tk $ sudo chown www:www /var/www/aaaa-test.tk $ sudo mkdir /var/www/bbbb-test.tk $ sudo chown www:www /var/www/bbbb-test.tk
適当なindex.htmlファイルをアップしておく。
index.html
<html> <body> aaaa-test.tk </body> </html>
$ sudoedit /etc/httpd/conf.d/vhost.conf # vhost.conf を貼り付け
vhost.conf
<VirtualHost _default_:80> DocumentRoot /var/www/html </VirtualHost> ############################## # aaaa-test.tk ############################## <VirtualHost *:80> ServerName aaaa-test.tk ServerAlias www.aaaa-test.tk DocumentRoot /var/www/aaaa-test.tk ServerAdmin 管理者のメールアドレス ErrorLog logs/aaaa-test.tk-error_log CustomLog logs/aaaa-test.tk-access_log combined <Directory "/var/www/aaaa-test.tk"> Options FollowSymLinks AllowOverride All </Directory> </VirtualHost> ############################## # bbbb-test.tk ############################## <VirtualHost *:80> ServerName bbbb-test.tk ServerAlias www.bbbb-test.tk DocumentRoot /var/www/bbbb-test.tk ServerAdmin 管理者のメールアドレス ErrorLog logs/bbbb-test.tk-error_log CustomLog logs/bbbb-test.tk-access_log combined <Directory "/var/www/bbbb-test.tk"> Options FollowSymLinks AllowOverride All </Directory> </VirtualHost>
# 構文チェック $ apachectl configtest # 再起動(graceful か restart) $ sudo apachectl graceful $ sudo apachectl restart
アクレスできるか確認
http://aaaa-test.tk/
http://bbbb-test.tk/
https://qiita.com/ariaki/items/174aacfc224d2af5f2ee
# Apacheのバージョン確認 $ httpd -v # opensslの確認 $ rpm -qa | grep openssl $ openssl version # mod_sslの確認 $ rpm -qa | grep mod_ssl # mod_sslのインストール $ sudo yum -y install mod_ssl
$ sudo yum install epel-release $ sudo yum install -y certbot python-certbot-apache # 何も指定しない場合、ドメインを選択肢から選ぶ $ sudo certbot # 予めドメインを指定して、実行する場合 $ sudo certbot certonly --webroot -w /var/www/aaaa-test.tk -d aaaa-test.tk $ sudo ls -la /etc/httpd/conf.d/ $ sudoedit /etc/httpd/conf.d/vhost-le-ssl.conf $ sudo ls -la /etc/letsencrypt/live/www.aaaa-test.tk/ # CN= の後ろがサーバ名と同じか確認 $ openssl x509 -in /etc/letsencrypt/archive/www.aaaa-test.tk/fullchain1.pem -noout -subject # バーチャルホストの設定を確認 $ sudoedit /etc/httpd/conf.d/vhost.conf # ssl用のバーチャルホストを設定 $ sudoedit /etc/httpd/conf.d/vhost-le-ssl.conf # logファイルに prefix「ssl_」をつける # wwwのあり・なしの統一(なしの場合の例) RewriteEngine on RewriteCond %{SERVER_NAME} =www.aaaa-test.tk RewriteRule ^ https://aaaa-test.tk%{REQUEST_URI} [END,NE,R=permanent] # 再起動 $ sudo apachectl restart
各アドレスにアクセスし、想定通りの動きをするか確認。
http://aaaa-test.tk/
http://www.aaaa-test.tk
https://aaaa-test.tk/
https://www.aaaa-test.tk/
https://qiita.com/mogya/items/f43334fd531888c4774f
$ sudo systemctl enable --now certbot-renew.timer # タイマー確認 $ sudo systemctl list-timers # 証明書更新後に自動でapacheの再起動 $ sudoedit /etc/sysconfig/certbot POST_HOOK="--post-hook 'apachectl graceful'" # 再起動 $ sudo apachectl restart # ログ $ sudo systemctl status certbot-renew
コメント