두 번째 SSL 인증서를 도입하면 다른 사이트가 다중 사이트 Apache 서버에서 제공됩니다.

두 번째 SSL 인증서를 도입하면 다른 사이트가 다중 사이트 Apache 서버에서 제공됩니다.

완전히 다른 두 개의 웹사이트, 즉 다른 도메인이 있는 Ubuntu 서버에서 Apache 서비스를 실행하고 있습니다.

각각 별도의 VirtualHost 구성이 있으며 최근까지 그 중 하나만 HTTPS를 통해 제공되었습니다.

오늘 아침에 두 번째 사이트에 대한 새 SSL 인증서를 도입하고 이에 따라 VirtualHost 구성을 변경했을 때(대신 포트 443에서 수신 대기하고 인증서 파일을 가리키는 등) 두 번째 사이트가 예상대로 제공되지 않았습니다. , 대신 원래 HTTPS 사이트를 제공하세요.

누구든지 나를 도울 수 있다면 매우 감사하겠습니다.

다음은 (삭제된) VirtualHost 파일입니다.

첫 번째 사이트 - 항상 지배적인 사이트

<VirtualHost *:443>

ServerAdmin webmaster@localhost
ServerName www.first-site.com
ServerAlias some similar names
DocumentRoot /var/www/first-site.com/

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

#SSL config
SSLEngine on
SSLProtocol -All +TLSv1.2
SSLCertificateFile /etc/apache2/ssl/first-site/firstsite-certificate.crt
SSLCertificateKeyFile /etc/apache2/ssl/first-site/firstsite.key
SSLCertificateChainFile /etc/apache2/ssl/first-site/firstsitechain.crt

.....More site-specific rules.....

두 번째 사이트 - 지속적으로 다루어지는 사이트

<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName second-site.com
ServerAlias some similar names
DocumentRoot /var/www/secondsite/htdocs
ErrorLog /var/log/apache2/secondsite-error.log
CustomLog /var/log/apache2/secondsite-access.log combined

SSLEngine on
SSLProtocol -All +TLSv1.2
SSLCertificateFile /etc/apache2/ssl/secondsite/secondsite.crt
SSLCertificateKeyFile /etc/apache2/ssl/secondsite/secondsite.key
SSLCertificateChainFile /etc/apache2/ssl/secondsite/secondsitechain.crt

.....More site-specific rules.....

로그를 확인했지만 아무 것도 나타나지 않습니다. 어쩌면 그것은 단지 내 grep-fu일지도 모릅니다 ...

비슷한 경험을 한 사람이 있습니까? 더 많은 정보가 필요하십니까?

답변1

핵심 단어:신경망연구소(서버 이름 표시)

서버 또는 클라이언트에 SNI 지원이 누락된 것 같습니다.

https://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI

서버가 SNI 헤더 정보를 반환하는지 테스트하려면 다음을 시도해 보세요.

openssl s_client -servername www.SERVERNAME.com -tlsextdebug -connect www.YOURSERVER.com:443 2>/dev/null | grep "server name"

바라보다https://serverfault.com/questions/506177/how-can-i-Detect-if-a-server-is-using-sni-for-https

다음과 같은 SSL 서버 테스트를 시도해 볼 수도 있습니다.https://www.ssllabs.com/ssltest/ "악수 시뮬레이션"은 기존 고객에게 다음 콘텐츠를 제공해야 합니다.

Android 2.3.7 이 클라이언트는 SNI를 지원하지 않으므로 SNI 인증서가 올바르지 않습니다.

그러나 새 클라이언트에 대한 일치하는 인증서입니다.

그런데 여기 비슷한 문제를 겪은 분이 계시네요 https://serverfault.com/questions/510132/apache-sni-namevhosts-always-route-to-first-virtualhost-entry

관련 정보