私は2年間httpを介して実行されているアプリケーションを持っています。今より良いセキュリティのためにhttpsに移動したいと思います。私たちのオペレーティングシステムはCentOS Linux 7です。/etc/httpd/sites-available
次の内容で構成された仮想ホスト構成があります。
<VirtualHost *:443>
ServerName www.trade.xxx.com
ServerAlias trade.xxx.com
DocumentRoot /ims/www/trade.xxx.com/public_html/public
SSLEngine on
SSLCertificateFile /home/divo/ssl_cert/wildcard_eneo_cm.crt
SSLCertificateKeyFile /home/divo/ssl_cert/wildcard_eneo_cm.key
SSLCertificateChainFile /home/divo/ssl_cert/DigiCertCA.crt
ErrorLog /ims/www/trade.xxx.com/error.log
CustomLog /ims/www/trade.xxx.com/requests.log combined
<Directory "/ims/www/trade.xxx.com/public_html/public">
AllowOverride All
</Directory>
</VirtualHost>
ただし、訪問するとhttps://trade.xxx.com
ブラウザが読み込まれ、しばらくしてERR_CONNECTION_TIMED_OUTエラーが発生します。
何が問題なのでしょうか?
調査後、以下を行った。
コマンド1
openssl x509 -in wildcard_xxx_com.crt -noout -subject
出力
subject= /CN=*.xxx.com
コマンド2
httpd がポート 443 以下を受信していることを確認する結果です。
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 881/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 880/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1013/master
tcp6 0 0 :::3306 :::* LISTEN 905/mysqld
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::80 :::* LISTEN 10409/httpd
tcp6 0 0 :::53 :::* LISTEN 881/dnsmasq
tcp6 0 0 :::22 :::* LISTEN 880/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1013/master
tcp6 0 0 :::443 :::* LISTEN 10409/httpd
コマンド3
ファイアウォールが有効になっていることを確認してください
systemctl status firewalld
以下の結果で判断すると、ファイアウォールは有効になっていないため、ファイアウォールの問題ではありません。
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
コマンド4
ssl.confでSSLが有効になっていることを確認してください。有効になっていることが以下に明確に表示されることがあります。
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
上から見ると、すべてがうまくいくようですが、なぜ動作しないのか理解できません。死角地帯はどこにありますか?どの構成がありませんか?