1 votes

SSL Wildcard cert - Conflit entre plusieurs hôtes virtuels sur deux serveurs

Je travaille avec une petite équipe, et nous avons actuellement deux serveurs, l'un pour les versions et l'autre pour le développement. Nous disposons d'un certificat SSL joker pour pouvoir couvrir plusieurs sous-domaines. J'ai configuré les branches de publication et de développement sur les serveurs respectifs et, à l'origine, nous n'avions configuré le SSL que sur le serveur de production, tandis que les versions de développement étaient en HTTP standard. Nous aimerions maintenant être en mesure de configurer une construction SSL sur le serveur de développement pour nous donner un environnement de test plus vrai, mais nous avons le problème actuel.

J'ai configuré le serveur live de manière à capturer tous les sous-domaines, car nous allons vendre notre service à différentes organisations, et nous aimerions leur donner la possibilité d'ajouter des éléments à l'URL. Le problème se pose lorsque j'essaie de configurer un hôte virtuel sur le serveur de développement pour une URL spécifique. Alors que la page de connexion qui est chargée se trouve sur le serveur de développement, la connexion est soit désactivée par SSL, soit redirigée vers le serveur réel (probablement en raison d'une règle de réécriture que j'ai mise en place sur le serveur réel pour éviter que vous soyez désactivé par https). Voici les deux fichiers de configuration que j'ai pour le moment.

Serveur en direct

<VirtualHost *:80>
    ServerName *.fileblimp.com
    RewriteEngine on
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
    <IfModule pagespeed_module>
            ModPagespeed Off
    </IfModule>
</VirtualHost>
<VirtualHost *:443>
    ServerName *.fileblimp.com
    ServerAlias *
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/files
    <Directory />
            Options FollowSymLinks
            AllowOverride All
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks 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
    <IfModule pagespeed_module>
            ModPagespeed Off
    </IfModule>
    <IfModule mod_php5.c>
            php_value include_path        ".:/usr/local/lib/php:/wwwfiles/sta$
    </IfModule>
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/certs/cert.crt
    SSLCertificateKeyFile /etc/apache2/ssl/private/fileblimp.com.key
    SSLCertificateChainFile /etc/apache2/ssl/certs/gd_bundle.crt
</VirtualHost>

Serveur de développement

<VirtualHost *:443>
    ServerName development.fileblimp.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/dev/www/files
    <Directory />
            Options FollowSymLinks
            AllowOverride All
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks 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
    <IfModule pagespeed_module>
            ModPagespeed Off
    </IfModule>
    <IfModule mod_php5.c>
            php_value include_path        ".:/usr/local/lib/php:/wwwfiles/sta$
    </IfModule>
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/certs/cert.crt
    SSLCertificateKeyFile /etc/apache2/ssl/private/fileblimp.com.key
    SSLCertificateChainFile /etc/apache2/ssl/certs/gd_bundle.crt
</VirtualHost>

Je vous remercie d'avance pour votre aide, je l'apprécie vraiment.

0voto

Andrew Schulman Points 8341

Safado signale à juste titre qu'il semble y avoir une erreur de configuration dans l'application sur le serveur en direct, qui fait que les utilisateurs sont renvoyés de HTTPS vers HTTP. Je ne serais pas surpris s'il y a une URL HTTP, comme http://www.fileblimp.com quelque part dans la configuration de l'application. Si vous réparez cela, vous aurez probablement résolu votre problème.

Sinon, sur le serveur en ligne, la redirection du premier hôte virtuel de HTTP vers HTTPS semble résoudre le problème. Mais cet hôte virtuel ne semble pas être présent sur le serveur de développement. Est-ce délibéré ou avez-vous omis de le mentionner dans votre question par erreur ? C'est là que se trouve la redirection de HTTP vers HTTPS. Il semblerait donc que si vous l'ajoutez au serveur de développement, la solution fonctionnerait là aussi.

Sur le serveur en ligne, vous pouvez simplifier un peu le premier hôte virtuel en supprimant les éléments suivants RewriteCond %{SERVER_PORT} !^443$ . Ce n'est pas nécessaire, puisque le serveur dans le fichier <VirtualHost *:80> est connu pour être à l'écoute sur le port 80.

En cours de développement, l'hôte virtuel correspondant peut être simplifié encore davantage en se contentant de

<VirtualHost *:80>
    ServerName development.fileblimp.com
    Redirect permanent / https://development.fileblimp.com/
</VirtualHost>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X