Certificado SSL curinga com encaminhamento automático de subdomínio

1

Eu tenho um servidor onde, como parte do serviço, os usuários recebem seu próprio subdomínio personalizado, ou seja, username.servicename.com. Não é particularmente viável gerar entradas vhost personalizadas sempre que isso acontece, então usei um arquivo virtualhost curinga no Apache. Isso funciona muito bem.

Agora estou tentando fazer com que o SSL funcione. Eu tenho um certificado SSL curinga com um CommonName de * .servicename.com, então eu acho que estou fazendo o que eu deveria estar fazendo. Mas ... não funciona. As solicitações HTTP ainda funcionam bem, o tempo limite das solicitações HTTPS e não há nada nos logs. O que há de errado com minha configuração?

    NameVirtualHost *:80
    NameVirtualHost *:443
    DirectoryIndex index.htm index.html index.php

    <VirtualHost *:80>

        ServerName servicename.com
        ServerAlias *.servicename.com #wildcard catch all
        VirtualDocumentRoot /var/www/%1
        UseCanonicalName Off
        IndexOptions FancyIndexing
        ### Use mod_rewrite to direct servicename.com to www.
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^servicename.com
        RewriteRule (.*) http://www.%{HTTP_HOST}$1 [R=301,L]
        ### Logging
        LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
        CustomLog /var/log/apache2/access_log_servicename combined

        <Directory /var/www>
            Options FollowSymLinks Indexes MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost>

    <VirtualHost *:443>

        ServerName servicename.com
        ServerAlias *.servicename.com
        VirtualDocumentRoot /var/www/%1
        UseCanonicalName Off
        IndexOptions FancyIndexing
        ### Use mod_rewrite to direct servicename.com to www.
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^servicename.com
        RewriteRule (.*) https://www.%{HTTP_HOST}$1 [R=301,L]
        ### Logging
        LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
        CustomLog /var/log/apache2/access_log_servicename combined

        SSLEngine on
        SSLProtocol all
        SSLCertificateFile /etc/apache2/servicename.com.certificate
        SSLCertificateKeyFile /etc/apache2/servicename.com.key
        SSLCACertificateFile /etc/apache2/rapidssl.intermediateca

        <Directory /var/www>
            Options FollowSymLinks Indexes MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error-ssl.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost>
    
por Nick Locking 22.01.2012 / 04:02

1 resposta

2

É muito estranho ver pedidos para o Apache expirar devido a uma configuração incorreta.

Quando uma conexão atinge o tempo limite, geralmente é um problema de rede ou firewall. Por exemplo, se o firewall estiver configurado para não permitir o tráfego nessa porta e ele eliminar esses pacotes, a conexão expirará.

Dê uma olhada em todo o firewall envolvido na sua configuração, e isso significa suas regras de saída de rede local, as regras de entrada de rede do servidor e as regras de iptables do próprio servidor.

    
por 22.01.2012 / 13:14