Como hospedar o domínio principal com um certificado, subdomínios com outro certificado curinga em uma única instância do apache

1

Eu pesquisei em torno de SF e entendi de outro posts que com o TSL um pode ter vários certificados SSL / TSL para diferentes subdomínios em uma única instância do Apache. Eu estou querendo saber se / como eu posso hospedar o domínio principal com um certificado e subdomínios desse mesmo domínio principal com um certificado wildcard separado.

Estou trabalhando em um site que opera principalmente em inglês. Quando as pessoas visitam o www.example.com , temos uma regra mod_rewrite que as redireciona para example.com . Ele também redireciona solicitações HTTP antigas simples para HTTPS. Temos o servidor configurado com um certificado de validação estendida (EV) muito bom que transforma a barra de endereços do navegador em verde - parece bastante seguro e confiável.

O problema é que queremos exibir outros idiomas em outros subdomínios. Por exemplo:

  • espanhol em es.example.com
  • alemão em de.example.com
  • italiano em it.example.com

Nosso certificado de validação estendida não é válido para esses subdomínios, então compramos um certificado curinga e gostaríamos de configurar o apache para que ele use o certificado EV para solicitações HTTPS para example.com e o certificado curinga para solicitações HTTPS para todos os subdomínios de idioma.

Eu entendo este documento de suporte digicert e um serverfault post que o Apache 2.4. 18 devem suportar o uso de vários certificados SSL para domínios diferentes se as conexões HTTPS forem feitas usando TSL , mas não se forem feitas usando SSL. O documento digicert sugere a criação de uma seção VirtualHost inteiramente separada, uma para cada certificado, mas me pergunto se há outras sutilezas que estão faltando. Nosso conf apache atual, por exemplo, não possui uma diretiva ServerName e não tenho certeza se precisaria criar uma diretiva ServerAlias para cada idioma suportado ou se poderíamos usar um caractere curinga nessas configurações do Apache? Além disso, os subdomínios (en.example.com) são uma supercadeia do domínio primário (example.com) - estou preocupado que isso possa causar confusão ao encaminhar solicitações?

Atualmente, nosso único conf SSL do apache em /etc/apache2/sites-available/default-ssl.conf se parece com isso quando você tira todos os comentários:

<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/html/
        SetEnv CI_ENV testing
        <Directory /var/www/html>
            AllowOverride All
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        SSLEngine on
            SSLCertificateFile      /etc/ssl/certs/ev-ssl-certificate.crt
            SSLCertificateKeyFile /etc/ssl/private/ev-private.key
            SSLCACertificateFile /etc/ssl/certs/ev-IntermediateCA.crt
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
                SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory /usr/lib/cgi-bin>
                SSLOptions +StdEnvVars
        </Directory>
    </VirtualHost>
</IfModule>

Alguém pode me dizer qual seria a abordagem de melhores práticas nesta situação? Idealmente, vamos replicar o menor código possível para que isso funcione. Eu também aprecio muito quaisquer avisos ou pegadinhas. Por exemplo, suspeito que precisarei desativar os protocolos SSL para que apenas o TSL seja usado.

    
por S. Imp 12.04.2018 / 00:21

1 resposta

0

Você deve criar dois arquivos host virtuais para armazenar informações do host virtual em arquivos separados, copiando a configuração do arquivo host virtual padrão. Para obter mais informações, consulte Como configurar vários certificados SSL em um IP com o Apache .

Pelo que entendi, você está lidando com sites multilíngues como o site principal em inglês e outros sites específicos de idioma limitado como subdomínios. Você quer conquistar a confiança dos clientes exibindo a barra verde da marca em todos os seus sites. Você pode fazer isso usando um único certificado SSL EV Multi-Domain ; ele ativará o nome da sua empresa na barra de endereço dos navegadores para www.example.com , es.example.com , de.example.com e it.example.com . Alguns fornecedores de exemplo:

por 13.04.2018 / 13:35