Redirecionamento do Apache de https para https

3

Estou tentando redirecionar sem uma regra de reescrita, por exemplo, do link para link . Eu tenho um certificado curinga para * .domain.net. Isso produz o seguinte aviso no meu error_log

[warn] RSA server certificate wildcard CommonName (CN) '*.domain.net' does NOT match server name!?

Isso faz sentido e eu entendo porque o aviso. Gostaria de perguntar se existe uma maneira de usar a diretiva Redirect para realizar o acima sem os avisos. Aqui estão meus hosts virtuais em ssl.conf:

<VirtualHost *:443>
    SSLEngine on
    ServerName www.domain.net
    DocumentRoot /var/www/html/domain

    SSLOptions -FakeBasicAuth -ExportCertData +StrictRequire +OptRenegotiate -StdEnvVars
    SSLStrictSNIVHostCheck off
</VirtualHost>

<VirtualHost *:443>
    SSLEngine on
    ServerName www.domain.com
    ServerAlias www.domain.info
    Redirect permanent / https://www.domain.net
</VirtualHost>

Além disso, se houver uma solução, ela poderá ser usada para redirecionamento de htps: //domain.com para htps: //www.domain.com? Muito obrigado!

    
por Nikolaos Kakouros 30.11.2012 / 18:41

3 respostas

2

Por favor, esteja ciente de que o processo de handshake e verificação SSL da conexão HTTPS subjacente ocorre antes da solicitação real ser enviada. Isso significa que não há resposta HTTP do servidor antes que a autenticidade do certificado do servidor seja verificada, nem mesmo redirecionamentos.

Se você tiver apenas um ponto de extremidade (ou seja, apenas um endereço IP público), precisará comprar um certificado SAN, ou seja, um certificado com Nomes alternativos de assunto .

Dessa forma, você poderia ter um certificado curinga para *.domain.net com a SAN www.domain.com e não receberia nenhum aviso de certificado

Para mais informações, confira uma resposta antiga que dei para uma situação semelhante, apenas com nginx em vez de apache

    
por 30.11.2012 / 18:57
2

www.domain.com (e também www.domain.info ) não são do mesmo domínio que www.domain.net , daí o aviso. Você deve ter certificados para esses domínios também, se precisar evitar esse aviso.

    
por 30.11.2012 / 18:53
-1

De outra pergunta ( link ):

Minha solução é: httpS://www.example.com - > http://www.example.net - > httpS://www.example.net

<VirtualHost *:80>
    ServerName www.example.net
    Redirect "/" "https://www.example.net/"
</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.com

    #### The Tricky ####
    Redirect "/" "http://www.example.net/"

    SSLEngine on
    # SSLProxyEngine On
    SSLCertificateFile /path/example_com.crt
    SSLCertificateKeyFile /path/example_com.key
    SSLCertificateChainFile /path/DigiCertCA_example_com.crt
    SSLProtocol ALL -SSLv2 -SSLv3
    SSLHonorCipherOrder on
    SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.net
    ...
    SSLEngine on
    # SSLProxyEngine On
    SSLCertificateFile /path/example_net.crt
    SSLCertificateKeyFile /path/example_net.key
    SSLCertificateChainFile /path/DigiCertCA_example_net.crt
    SSLProtocol ALL -SSLv2 -SSLv3
    SSLHonorCipherOrder on
    SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
</VirtualHost>
    
por 22.11.2018 / 06:14