openSUSEでサーバー構築 ; SSL証明書を取得 (Let’s Encrypt) 、Webサーバー SSL化

1.SSL証明書を取得する (Let’s Encrypt)

事前作業
mod_sslを有効にする
mod_sslが有効になっていない場合には、有効化しておきます

# a2enmod ssl

1.1 証明書のインストール

# zypper -n install certbot
# certbot certonly –webroot -w /srv/www/htdocs/[webサイト公開ディレクトリー] -d  [ドメイン名]
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
# 初回のみメールアドレスの登録と利用条件への同意が必要
# 受信可能なメールアドレスを指定
Enter email address (used for urgent renewal and security notices)
(Enter ‘c’ to cancel):<メールアドレス>
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
# 利用条件に同意する
(A)gree/(C)ancel: A
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
# Electronic Frontier Foundationに登録の諾否
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let’s Encrypt project and the non-profit
organization that develops Certbot? We’d like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for sample1.korodes.com
Using the webroot path /srv/www/htdocs/sample1.korodes.com for all unmatched domains.
Waiting for verification…
Cleaning up challengesIMPORTANT NOTES:
– Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/[ドメイン名]/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/[ドメイン名]/privkey.pem
Your cert will expire on 2022-04-16. To obtain a new or tweaked
version of this certificate in the future, simply run certbot
again. To non-interactively renew *all* of your certificates, run
“certbot renew”
– If you like Certbot, please consider supporting our work by:Donating to ISRG / Let’s Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

成功すると /etc/letsencrypt/live/[ドメイン名] 配下に次のファイルが生成される
# cert.pem ⇒ SSLサーバー証明書(公開鍵含む)
# chain.pem ⇒ 中間証明書
# fullchain.pem ⇒ cert.pem と chain.pem が結合されたファイル
# privkey.pem ⇒ 公開鍵に対する秘密鍵

2. WebサーバーSSL化

2.1 SSLの設定

# a2enmod ssl
# a2enmod -l
actions alias auth_basic authn_core authn_file authz_host authz_groupfile authz_core authz_user autoindex cgi dir env expires include log_config mime negotiation setenvif ssl socache_shmcb userdir reqtimeout php7
# vi /etc/apache2/listen.conf
● 17行目:コメント解除
Listen 443
# vi /etc/apache2/vhosts.d/default-ssl.conf
# 新規作成
<VirtualHost *:443>
DocumentRoot “/srv/www/htdocs/[webサイト公開ディレクトリー]”
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCertificateFile /etc/letsencrypt/live/[ドメイン名]/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/[ドメイン名]/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/[ドメイン名]/chain.pem
<FilesMatch “\.(cgi|shtml|phtml|php)$”>
SSLOptions +StdEnvVars
</FilesMatch>
<Directory “/srv/www/cgi-bin”>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
# systemctl restart apache2
タイトルとURLをコピーしました