ACMEによる、新規サブドメインのSSL対応

はじめに

数年前から、ドメインのSSL対応にGithub公開リソースのACMEを利用してきた。新規サブドメインの開設に当たって、以前と同様にACMEを利用するつもりで、ACMEの証明書サーバはLets encryptからZeroSSLへ移行済みなど変更があったので、作業手順をメモしておく。

準備

$su root

#cat /etc/redhat-release
CentOS release 6.8 (Final)

#acme.sh --upgrade

#acme.sh --version
https://github.com/acmesh-official/acme.sh
v3.0.7

DNSゾン追加

サーバプロバイダの管理画面またはパネルから、サブドメインに必要なDNSゾンの追加を行うことができる。これでサブドメインとIPと紐づける。追加手順はサーバプロバイダのほうへ確認するので、ここでは詳細を省く。

Apache対応

サブドメイン追加

vhost.confを開く

#nano /etc/httpd/conf.d/vhost.conf

vhost.confへ内容追加。

<VirtualHost *:80>
ServerName new-sub.example.com
ServerAlias www.new-sub.example.com
Redirect / https://new-sub.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin mai@example.com
DocumentRoot /var/www/html/new-sub.exmaple.com
ServerName new-sub.exmaple.com
ServerAlias www.new-sub.example.com
# ここにあとで追加内容ある
ErrorLog "/var/log/httpd/new_error_log"
CustomLog "/var/log/httpd/new_access_log" combined
</VirtualHost>

Apache再起動

#servcie http restart

ACME対応

証明書作成

#acme.sh --issue -d new-sub.example.com --apache

証明書コピー

コピー先を指定しておく。

#acme.sh --install-cert -d example.com \
--cert-file      /root/apache/new-sub.example.com/cert.pem  \
--key-file       /root/apache/new-sub.example.com/key.pem  \
--fullchain-file /root/apache/new-sub.example.com/fullchain.pem \
--reloadcmd     "service httpd restart"

証明書確認

#acme.sh --info -d new-sub.example.com

vhost.confに内容追加

<VirtualHost *:80>
ServerName new-sub.example.com
ServerAlias www.new-sub.example.com
Redirect / https://new-sub.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin mail@example.com
DocumentRoot /var/www/html/new-sub.example.com
ServerName new-sub.example.com
ServerAlias www.new-sub.example.com
SSLEngine on
SSLCertificateFile /root/apache/new-sub.example.com/cert.pem
SSLCertificateKeyFile /root/apache/new-sub.example.com/key.pem
SSLCertificateChainFile /root/apache/new-sub.example.com/fullchain.pem
<Directory "/var/www/html/new-sub.example.com">
AllowOverride All
</Directory>
ErrorLog "/var/log/httpd/new_error_log"
CustomLog "/var/log/httpd/new_access_log" combined
</VirtualHost>

Apache再起動

#servcie http restart

証明書自動更新

#EDITOR=nano crontab -e
56 * * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

参考情報

https://github.com/acmesh-official/acme.sh

0

ロボット・ドローン部品お探しなら
ROBOT翔・電子部品ストア

CentOS-Debianの記事一覧

0

ロボット・ドローン部品お探しなら
ROBOT翔・電子部品ストア