Apache httpd : SSL/TLS の設定2024/11/08 |
SSL/TLS の設定を有効化して、HTTPS による暗号化通信ができるように設定します。 |
|
[1] | |
[2] | SSL/TLS の設定を有効化します。 |
[root@www ~]#
dnf -y install mod_ssl
[root@www ~]#
vi /etc/httpd/conf.d/ssl.conf # 59行目 : コメント解除 DocumentRoot "/var/www/html" # 60行目 : コメント解除してサーバー名指定 ServerName www.srv.world:443
# 101行目 : 取得した証明書を指定 SSLCertificateFile /etc/letsencrypt/live/www.srv.world/cert.pem
# 109行目 : 取得した鍵ファイルを指定 SSLCertificateKeyFile /etc/letsencrypt/live/www.srv.world/privkey.pem
# 118行目 : コメント解除して取得した中間証明書を指定 SSLCertificateChainFile /etc/letsencrypt/live/www.srv.world/chain.pem
systemctl restart httpd |
[3] | HTTP 通信を HTTPS へリダイレクトして Always on SSL/TLS とする場合は、それぞれのサイト設定に RewriteRule を記述します。 例えば、こちらの例のように設定したバーチャルホスト設定では、以下のように記述します。 [httpd.conf] (include 含む) に設定しない場合は、各ドキュメントルートの直下に [.htaccess] を配置して設定します。 |
[root@www ~]#
vi /etc/httpd/conf.d/vhost.conf
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName www.srv.world
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>
[root@www ~]# systemctl reload httpd |
[4] | Firewalld を有効にしている場合は HTTPS サービスの許可が必要です。HTTPS は [443/TCP] を使用します。 |
[root@www ~]# firewall-cmd --add-service=https success [root@www ~]# firewall-cmd --runtime-to-permanent success |
[5] | クライアントコンピューターから Web ブラウザーでテストページに HTTPS でアクセスして、正常にページが表示されれば OK です。 |
Sponsored Link |
|