Apache httpd : SSL/TLS の設定2014/07/23 |
SSL/TLS の設定して、暗号化通信ができるようにします。
|
|
[1] |
こちらを参照して証明書を取得しておきます。
|
[2] | SSL 通信が利用できるよう設定します。 |
[root@www ~]#
yum -y install mod_ssl
[root@www ~]#
vi /etc/httpd/conf.d/ssl.conf # 59行目:コメント解除 DocumentRoot "/var/www/html" # 60行目:コメント解除しサーバー名指定 ServerName www.srv.world:443
# 75行目:変更 SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
# 100行目:取得した証明書を指定 SSLCertificateFile /etc/letsencrypt/live/www.srv.world/cert.pem
# 107行目:取得した鍵ファイルを指定 SSLCertificateKeyFile /etc/letsencrypt/live/www.srv.world/privkey.pem
# 116行目:取得した中間証明書を指定 SSLCertificateChainFile /etc/letsencrypt/live/www.srv.world/chain.pem
systemctl restart httpd |
[3] | HTTP リクエストも全て HTTPS へリダイレクトして Always on SSL とする場合はホスト定義にリダイレクトの設定を追記します。 バーチャルホストで複数のホスト定義がある場合は、以下のようにそれぞれの定義内へ記述します。 下例のように httpd.conf に設定しない場合は、各ドキュメントルートの直下に [.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 restart httpd |
[4] | Firewalld を有効にしている場合は、HTTPSサービスの許可が必要です。なお、HTTPS は 443/TCP を使用します。 |
[root@www ~]# firewall-cmd --add-service=https --permanent success [root@www ~]# firewall-cmd --reload success |
[5] | クライアントコンピューターから Web ブラウザでテストページに https でアクセスしてテストページが正常に表示されるか確認しておきます。 |
Sponsored Link |