Назад | Перейти на главную страницу

Apache: при подключении к прокси-серверу с использованием SSL проверяется неверное имя хоста

Я пытаюсь заставить эту настройку работать:

Итак, соединение должно быть:

Что у меня получилось хорошо:

Но Apache терпит неудачу, потому что при попытке подключения к target.internal он хочет найти имя хоста «reverse-proxy.com» в целевом сертификате, в то время как целевой сертификат был создан для «target.internal».

У меня в журнале есть такая ошибка:

Cert does not match for name 'reverse-proxy.com'

Он печатает это после успешного прохождения цепочки сертификатов от «root-ca.crt» до «target.internal.crt».

Я не понимаю, почему Apache не ищет сертификат, сделанный для "target.internal".

У кого-то есть идея? Спасибо вам.

РЕДАКТИРОВАТЬ :

Listen 0.0.0.0:443 https

SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog

SSLSessionCache         shmcb:/run/httpd/sslcache(512000)
SSLSessionCacheTimeout  300

SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin

SSLCryptoDevice builtin

<VirtualHost _default_:443>

        ErrorLog logs/ssl_error_log
        TransferLog logs/ssl_access_log
        LogLevel trace1

        SSLEngine on
        SSLProxyEngine on
        SSLProxyCACertificateFile /var/certs/root-ca.crt

        SSLProtocol -all +TLSv1.2 
        SSLCipherSuite HIGH:!SSLv3:!kRSA:!kECDH:!ADH:!DSS

        SSLCertificateFile /etc/letsencrypt/live/reverse-proxy.com/cert.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/reverse-proxy.com/privkey.pem

        <Files ~ "\.(cgi|shtml|phtml|php3?)$">
            SSLOptions +StdEnvVars
        </Files>
        <Directory "/var/www/cgi-bin">
            SSLOptions +StdEnvVars
        </Directory>

        BrowserMatch "MSIE [2-5]" \
         nokeepalive ssl-unclean-shutdown \                                                                                                                       
         downgrade-1.0 force-response-1.0                                                                                                                         

        CustomLog logs/ssl_request_log \                                                                                                                          
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"                                                                                                       

        ServerName reverse-proxy.com                                                                                                                              
        SSLCertificateChainFile /etc/letsencrypt/live/reverse-proxy.com/chain.pem                                                                                                                                                                                              

        ProxyPreserveHost On                                                                                                                                                                                                                                                   
        RewriteEngine On                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     

        RewriteRule         ^/stuff/(.*)$     https://target.internal/$1 [P]                                                                                                                                                                                                     
        ProxyPassReverse    /stuff/           https://target.internal/                                                                                                                                                                                                           

</VirtualHost>