・前提
AmazonLinux2のインタンスを作成してSSHで接続できる。
セキュリティグループに
タイプ:HTTPS
プロトコル:TCP
ポート範囲:443
ソース:0.0.0.0/0
が追加されている。
・http24の導入
sudo yum update -y
sudo yum install httpd
sudo service httpd start
sudo service httpd status
sudo systemctl enable httpd.service
httpd -v
※ ブラウザから確認。apacheの画面が表示されればOK
・スーパーユーザになっておく
sudo su -
・timezone設定
timedatectl set-timezone Asia/Tokyo
ll /etc/localtime
※ dateで確認
・mod_sslインストール
yum install --enablerepo=remi,remi-php74 mod_ssl.x86_64
・snapdが入っているリポジトリの追加
cd /etc/yum.repos.d/
wget https://people.canonical.com/~mvo/snapd/amazon-linux2/snapd-amzn2.repo
※/etc/yum.conf に以下の設定を追加。[main] の最後に追加する
vi /etc/yum.conf
↓追加する文
exclude=snapd-*.el7 snap-*.el7
snapdインストール
yum install snapd
snapd自動起動設定
systemctl enable --now snapd.socket
パスを通す
ln -s /var/lib/snapd/snap /snap
core インストール
※ 実行するとエラーになるけど、もう1度実行するとなぜか成功する
snap install core
全てのパッケージをアップデート
snap refresh core
cerbotのインストール
snap install --classic certbot
snapパス通し
ln -s /snap/bin/certbot /usr/bin/certbot
httpd.confの編集
vi /etc/httpd/conf/httpd.conf
↓一番下の行に追記
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin メールアドレス
DocumentRoot ドキュメントルート
ServerName ドメイン
</VirtualHost>
・証明書を取得 & インストール
certbot --apache
※初めにメールアドレスを求められたり、
Yes/Noを求められるので答えていくと証明書の取得とインストールが始まる
証明書の期限確認
openssl x509 -in /etc/letsencrypt/live/ドメイン/fullchain.pem -noout -dates
番外
うまくいかないで何回も試してたら怒られてしばらくドメインが使えなくなったので、
まず、お試しでやるならサブドメイン作ってからやった方が良いかもw
There were too many requests of a given type
:
: Error creating new order
::
too many certificates (5) already issued for this exact set of domains in the last 168 hours: ドメイン: see https://letsencrypt.org/docs/rate-limits/