Aller au contenu
ebouilleur

http et https sur un même serveur

Noter ce sujet :

Recommended Posts

ebouilleur    0

Bonjour, 

 

Pour mon dernier site réalisé, j'ai voulu activé https pour faire plaisir à notre ami google.

J'ai obtenu un certificat avec LE (let's encrypt).

L'installation c'est bien déroulé et j'ai maintenant accès a mon site en https => https://www.pelotes-compagnie.fr

 

Par contre, les autres sites de ma VM, qui ne sont pas en https pointe maintenant vers le contenu de ce nouveau site.

Exemple, si je vais sur https://www.boite2jeux.fr ca m'affiche le site de pelotes et compagnie :(

 

Je ne comprend pas trop pourquoi, et dans tous les cas, ce n'est pas top, que ce soit pour l visiteur ou pour le duplicate content :(

 

Une idée?

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites
Arlette    76

Bonjour,

 

Tu as du faire une erreur dans l'installation. Quand je veux me connecter à boite2jeux Safari me répond :

 

Citation

Le certificat pour ce site web est invalide. etc

 

Ce que je sais, c'est qu'un certificat c'est pour un site et un seul.... pas pour 1 serveur.

 

D'autres viendront te dire ou ça coince ;)

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Tu as du installer le certificat pour l'IP de tes sites (les deux domaines ayant la même IP)

Il faut mettre les références au certificat dans le VirtualHost du domaine protégé et pas ailleurs.

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

En effet j'ai 1 ip pour tout le serveur.

 

Voici ce que j'ai donc mon fichier de config pour le vhost de pelotes et compagnie :

 

<VirtualHost *:80>
    Servername pelotes-compagnie.fr
    ServerAlias www.pelotes-compagnie.fr
    Redirect permanent / https://www.pelotes-compagnie.fr/
</VirtualHost>

<VirtualHost www.pelotes-compagnie.fr:443>
        ServerName      www.pelotes-compagnie.fr
        ServerAlias www.pelotes-compagnie.fr pelotes-compagnie.fr
        ServerAdmin     support@ebouilleursurf.com

        DocumentRoot "/srv/d_Osiris/www/www.pelotes-compagnie.fr/htdocs"
    <Directory "/srv/d_Osiris/www/www.pelotes-compagnie.fr/htdocs">
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /srv/d_Osiris/www/www.pelotes-compagnie.fr/logs/www.pelotes-compagnie.fr-error.log
    LogLevel error

    SetEnvIf Remote_Addr "127\.0\.0\.1" loopback
    CustomLog /srv/d_Osiris/www/www.pelotes-compagnie.fr/logs/www.pelotes-compagnie.fr-access.log combined env=!loopback
    ServerSignature On


    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/www.pelotes-compagnie.fr/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/www.pelotes-compagnie.fr/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/www.pelotes-compagnie.fr/chain.pem

    # Intermediate configuration, tweak to your needs
    SSLProtocol             all -SSLv2 -SSLv3
    SSLCipherSuite          ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:EC3-SHA:!KRB5-DES-CBC3-SHA
   SSLHonorCipherOrder     on
   SSLCompression          off


</VirtualHost>
    

 

Et pour l'autre vhost, j'ai :

 


<VirtualHost *:80>
        ServerName      www.boite2jeux.fr
        ServerAlias www.boite2jeux.fr boite2jeux.fr
        ServerAdmin     postmaster@ebouilleursurf.com

        DocumentRoot "/srv/d_Osiris/www/www.boite2jeux.fr/htdocs"
    <Directory "/srv/d_Osiris/www/www.boite2jeux.fr/htdocs">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /srv/d_Osiris/www/www.boite2jeux.fr/cgi-bin/
    <Directory "/srv/d_Osiris/www/www.boite2jeux.fr/cgi-bin/">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /srv/d_Osiris/www/www.boite2jeux.fr/logs/www.boite2jeux.fr-error.log
    LogLevel error

    SetEnvIf Remote_Addr "127\.0\.0\.1" loopback
    CustomLog /srv/d_Osiris/www/www.boite2jeux.fr/logs/www.boite2jeux.fr-access.log combined env=!loopback
    ServerSignature On
 

 

Ca me parait bon en paramétrage, non?

enfin je suppose que non, mais bon ^^

Modifié par ebouilleur

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Remplace l'astérisque de tes

<VirtualHost *:80>

par le nom de domaine correspondant.

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Bon, c'est pire :(

 

tous mes sites en http sont redirigés vers le 1er site que j'ai configuré sur ma machine (c'est à dire boite2jeux.fr), exemple http://www.ebouilleursurf.com

Et si on attaque boite2jeux.fr en https ça affiche le site de peloites & compagnie :(

Modifié par ebouilleur

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

En remettant comme précédemment et en remplaçant

<VirtualHost www.pelotes-compagnie.fr:443>

par

<VirtualHost *:443>

ça donne quoi ?

 

En fait, un <VirtualHost...> doit contenir une astérisque ou une IP dans la mesure où cette IP est couverte par un NameVirtualHost

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

et bien si je remet comme avant (c'est à dire *:80) et que je met pareil pour le https, soit *:443 c'est ce que j'avais fait initialement (avant de poster sur le forum).

Le résultat est que chaque site en http fonctionne, mais si on met https devant n'importe lequel de mes site ca renvoie vers le site pelotes & compagnie

Modifié par ebouilleur

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Pour info, dans mon fichier ports.conf j'ai :


NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133
il y a 46 minutes, ebouilleur a dit :

et bien si je remet comme avant (c'est à dire *:80) et que je met pareil pour le https, soit *:443 c'est ce que j'avais fait initialement (avant de poster sur le forum).

Le résultat est que chaque site en http fonctionne, mais si on met https devant n'importe lequel de mes site ca renvoie vers le site pelotes & compagnie

 

Là c'est plus logique, vu que tu n'as pas de <VirtualHost *:443> pour les autres domaines.

Le seul *:443 est celui de pelotes&compagnie, et comme ils sont tous sur la même IP... c'est le seul qui peut répondre en https.

 

Tu peux créer un <VirtualHost *:443> pour chacun des domaines avec une redirection vers le port 80 (http) et cela devrait résoudre ton problème.

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

j'ai essayé de mettre ça sur un de mes domaines qui n'est pas en https (en plus que la directive avec le *:80 bien entendu), mais ca ne fait pas la redirection, y a t il une erreur :

<VirtualHost *:443>
ServerName      www.city-bar.fr
Redirect permanent / http://www.city-bar.fr/
</VirtualHost>
Modifié par ebouilleur

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Juste ! En fait la demande de certificat se fait bien avant la demande de la page.

Donc lorsque tu lance un https://... il y a d'abord demande de certificat, avant de demander la page web. Tu as donc un certificat "invalide" pour ce domaine.

 

Tu as bien relancé apache ?

 

Dans l'affirmative, je ne vois pas de solution à ton problème autre que SNI : https://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI

Cette page te donne la réponse à tes questions, y compris la raison pour laquelle apache retourne le premier domaine SSL pour cette IP.

Il faut donc que le nom de domaine fasse partie de la première requête https pour que Apache puisse le gérer correctement.

Cette page te donne la config à utiliser.

 

Mais il n'y a en toute logique pas de risque de duplicate content, vu que le certificat n'est valide que pour le domaine pelotes&compagnie, pas pour les autres. Les moteurs ne visiteront donc pas les autres sites en SSL.

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Oui j'ai biensur relancé apache.

je vais regardé en détail ton lien demain (pas envie de réfléchir sur de l'anglais maintenant ^^)

 

Ok pour le duplicate, par contre, si google index des page de pelotes&compagnie sur d'autres domaine.

 

Exemple, recherches juste "pelotes-compagnie.fr" sur google.

et on a en 2ème résultat :


 

 

 

Mentions légales | Pelotes & Compagnie
https://city-bar.fr/index--mention.html‎
Le site pelotes-compagnie se réserve le droit de modifier à tout moment les ... L' ensemble du site internet www.pelotes-compagnie.fr est soumis au droit français  ...

 

 


 




 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Bon je veux bien encore un peu d'aide.

Mon serveur est la version 12.04 d'Ubuntu. A priori pas besoin de recompiler pour avoir le SNI, il est par défaut.

Quand je regarder dans mods-enabled/ssl.conf, j'ai la directive SSLStrictSNIVHostCheck on qui est commenté.

 

J'ai pas bien compris si je dois mettre 

SSLStrictSNIVHostCheck off

quelque part ou non. J'ai essayé de le mettre dans le vhost de pelotes&compagnie mais ca ne change rien. Du coup je saisi pas trop ce que je dois faire :(

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

C'est à mettre en dehors d'un <VirtualHost...>

 

Mets-le au début de ton fichier httpd.conf, après le "Listen 443"

Ou bien dé-commente la ligne dans le fichier ssl.conf en changeant le "on" en "off"

 

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Je l'ai mis dans le httpd.conf (qui était vide)

Mais ca ne change rien : https://www.boite2jeux.fr affiche toujours P&C :(

 

Dans mon fichier ports.conf je n'avais pas 

NameVirtualHost *:443

alors que j'avais 

NameVirtualHost *:

 

Je l'ai rajouté a tout hasard, mais ca n'a rien changé (même si je pensais bien que ca changerai rien).

J'ai chercher sur plusieurs tuto/forum je ne vois pas ce qu'il peut manquer :(

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Quel est le premier domaine SSL défini dans ta config ?

 

SUpprime aussi cette ligne de ton fichier de config:

Redirect permanent / https://www.pelotes-compagnie.fr/

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0
il y a 2 minutes, Dan a dit :

Quel est le premier domaine SSL défini dans ta config ?

On parle bien des vhost qui sont dans le répertoire sites-enabled?

Si oui, j'en ai que 1, celui de p&c

Modifié par ebouilleur

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Mets la ligne suivante à "on", au lieu de "off"

SSLStrictSNIVHostCheck on

Partager ce message


Lien à poster
Partager sur d’autres sites
ebouilleur    0

Ca ne change rien

Et d'après ce que j'ai lu c'est normal, ca permet juste de bloqué l'accès au site quand le client n'est pas compatible

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Que te donne la commande "apachectl configtest" ?

Partager ce message


Lien à poster
Partager sur d’autres sites
Dan    133

Tu gères ton serveur avec Plesk, Cpanel, Directadmin ou manuellement ?

La présentation du premier site SSL pour les sites non-ssl est normale dans le cas d'une IP partagée.

https://features.cpanel.net/topic/change-default-ssl-certificate-to-invalid-certificate

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×