Bonjour à tous,
je rencontre actuellement un problème au niveau de la configuration d'un domaine et de plusieurs sous-domaines.
Domaine est sur IP1
Les sous domaines sont sur IP2 qui est sur le même serveur, jusque là tout fonctionne
Ensuite pour des raisons de sécurité j'ai décidé de tout passer sous SSL, étant limité à 5 noms par certif et ayant un besoin exponentiel de vhost j'attribue 5 vhost à une nouvelle IP. Du coup j'ai actuellement cette configuration :
IP1 : Certificat 1 + Domaine
IP2 : Certificat 2 + 5 vhosts de Domaine
Et là bah... à chaque fois le résultat change et rencontre un de ces 3 cas :
1. Tout se passe bien (5% des cas)
2. Une erreur indiquant que le certificat utilisé est celui du site principal est affiché (90% des cas)
2. 1. Quand on force l'accès au site le certificat est reconnu (50% des cas)
2. 2. Quand on force l'accès au site le certificat n'est pas reconnu et on est redirigé vers le site principal (comportement provenant d'IP1 pour les vhosts inexistants)
Autant vous dire que n'ayant jamais vu ça avant je suis assez dépité et perdu. Voici la configuration utilisée :
Bind, fichier zone :
Apache, fichier de config du domaine et des vhosts
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 $TTL 3600 domain.tld. IN SOA ns1.domain.tld. contact.domain.tld. ( 2016062106; Serial 7200 ; Refresh 3600 ; Retry 1209600 ; Expire 43200 ) ; Negative Cache TTL @ IN NS ns1.domain.tld. @ IN NS ns2.domain.tld. @ IN A IP1 * IN A IP1 ns1 IN A IP1 ns2 IN A 213.251.188.141 cdn1.domain.tld. IN A IP2 cdn2.domain.tld. IN A cdn1.domain.tld. cdn3.domain.tld. IN A cdn1.domain.tld. cdn4.domain.tld. IN A cdn1.domain.tld. cdn5.domain.tld. IN A cdn1.domain.tld. domain.tld. IN NS ns1.domain.tld. pop 10800 IN CNAME access.mail.gandi.net. webmail 10800 IN CNAME agent.mail.gandi.net. smtp 10800 IN CNAME relay.mail.gandi.net. imap 10800 IN CNAME access.mail.gandi.net. @ 10800 IN MX 10 spool.mail.gandi.net. @ 10800 IN MX 50 fb.mail.gandi.net. @ 10800 IN TXT "v=spf1 ip4:217.70.176.0/20 ip6:2001:4b98:c::/48 ptr ?all" ownercheck TXT "********"
Lors du démarrage Apache me demande bien les clés pour chaque certificat, signe qu'ils sont chargés correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 # # HTTP(S) # <VirtualHost IP1:443> ServerName domain.tld DocumentRoot /var/www/domain/http/public/ SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!LOW:!aNULL:!eNULL SSLCertificateFile /var/www/.certs/domain/domain.crt SSLCertificateKeyFile /var/www/.certs/domain/domain.key SSLCertificateChainFile /var/www/.certs/root.crt <Directory /var/www/domain/http/public/> Options -Indexes +FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/apache2/domain.http.error.log CustomLog /var/log/apache2/domain.http.access.log combined </VirtualHost> # # CDN IP2 # <VirtualHost IP2:443> ServerName cdn1.domain.tld ServerAlias cdn1.domain.tld cdn2.domain.tld cdn3.domain.tld cdn4.domain.tld cdn5.domain.tld DocumentRoot /var/www/domain/cdn/ SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!LOW:!aNULL:!eNULL SSLCertificateFile /var/www/.certs/domain/cdn-IP2.crt SSLCertificateKeyFile /var/www/.certs/domain/cdn-IP2.key SSLCertificateChainFile /var/www/.certs/root.crt <Directory /var/www/domain/cdn/> Options -Indexes +FollowSymLinks AllowOverride All </Directory> RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^https://domain.tld [NC] RewriteRule \.(jpg|jpeg|png|gif)$ https://domain.tld/hotlinking.png [NC,R,L] ErrorLog /var/log/apache2/domain.cdn.error.log CustomLog /var/log/apache2/domain.cdn.access.log combined </VirtualHost>
Je sais qu'il est impossible d'effectuer ce type de configuration sur une même IP, mais normalement sur deux IP distinctes bind est supposé dispatcher en amont sur la bonne IP, du coup je comprend pas du tout pourquoi j'ai ces problèmes. Je pense que j'ai du oublier une étape quelques part, mais quoi?![]()
Partager