Bonjour
J'essaye de publier mon site web en https sans succès et quand je regarde de plus près j'ai l'impression d'avoir des incohérences ...
Sur Windows 7 32 bits, j'ai installé WampServer 3.1.4. J'ai déclaré mon VirtualHost dans Apache et ai décompacté le fichier.zip fourni pour l'installation de mon CMS (Dolibarr). L'installation se passe bien et à la fin j'ai mon site web qui fonctionne bien en http sur le port 80.
J'ai actuellement sur mon LAN un serveur AD Windows avec le rôle "Accès en tout lieu" configuré qui utilise le port 443, hors de question de changer ce port public sur ce serveur.
J'aurai pu faire fonctionner mon WampServer en local sur le port 443 puis sur mon routeur de natter le 4343 entrant vers le 443 local mais alors je ne vais plus joindre le service web avec la même adresse lorsque je me connecte en local ou depuis l'extérieur, j'imagine que ça va poser problèmes au niveau du site web ... me trompe je ?
J'ai une question pour solder cette réflexion ...
J'ai cru comprendre que le numéro de port ne semblait pas nécessaire à la création d'un certificat SSL. Pouvez vous me confirmer que le certificat pour le site h t t p s : / / site1.mondomaine.fr est le même que pour le site h t t p s : / / site1.mondomaine.fr:4343 ?
(Çà contredirait ce que je dis plus haut)
J'ai ajouter un "listen port à Apache" dans WampManager pour utiliser le port 4343.
Ok, mon site1 ainsi que les utilitaires habituels (phpmyadmin, ...) fonctionnent en http sur le port 4343.
Le nom de mon VirtualHost dans Apache est de la forme h t t p : / / site1.mondomaine.fr:4343, j'ai natté le port TCP 4343 entrant et ajouté un enregistrement dans mon DNS AD, le site est accessible via cette adresse en interne comme depuis l'extérieur.
J'ai créé un second VirtualHost dans Apache avec un nom de la forme h t t p : / / site2.mondomaine.fr:4343 dans le quel j'ai déployé un site qui fonctione en interne comme en externe. Il est prévu d'avoir un site3.
Dans une fenêtre de commande, httdp -t me renvoie une Syntaxe correcte.
Je souhaite passer maintenant au httpS sur le port 4343.
J'ai bien lu l'excellent tuto h t t p s ://chez-oim.org/index.php?topic=1980.0 que j'essaye de le mettre en oeuvre ...
J'ai créé un certificat un certificat wildcart via authentification DNS.
J'ai modifié diverses lignes dans ma config Wamp pour l'intégrer.
A la fin, je peux toujours naviguer le site1 en http mais en httpS j'ai une erreur :
Une erreur est survenue pendant une connexion à site1.mondomaine.fr:4343. SSL a reçu un enregistrement qui dépasse la longueur maximale autorisée. Code d’erreur : SSL_ERROR_RX_RECORD_TOO_LONG
Pour cette erreur, la doc Apache me dit : Le module d'Apache est activée mais son vhost est absent ou sa configuration ne contient pas SSLEngine on.
Si si SSLEngine est bien donné On !
Plus bas mes fichiers complets.
J'ai bien SSLEngine on, SSLCertificateFile et SSLCertificateKeyFile déclaré dans httpd-ssl.conf. J'imagine qu'il s'applique à tous les sites ... me trompe ? J'ai essayé en déplacant ces lignes dans chaque VirtualHost de httpd-vhost.conf mais Apache ne démarre plus :-( Je me dis que vu que le certificat est wildcard ça devrait aller mais non.
Toujours dans httpd-ssl.conf, j'ai en première ligne un "Listen 443" qui me froisse un peu mais si je change pour 4343 Apache ne démarre plus :-(
Pouvez vous me dire ce qui pose problème dans ma configuration ou dans ma réflexion ?
Je vous remercie pour l'aide que vous m'apporterez.
@+Laurent
Mon fichier
httpd-ssl.conf (j'ai supprimé tous les commentaires)
Listen 443
SSLCipherSuite HIGH:MEDIUM:!MD5:!RC4:!3DES
SSLProxyCipherSuite HIGH:MEDIUM:!MD5:!RC4:!3DES
SSLHonorCipherOrder on
SSLProtocol all -SSLv3
SSLProxyProtocol all -SSLv3
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost _default_:4343>
DocumentRoot "C:/SitesWeb/Dolibarr"
ServerName gestionco.a2systemes.fr:4343
ServerAdmin admin@example.com
ErrorLog "${SRVROOT}/logs/error.log"
TransferLog "${SRVROOT}/logs/access.log"
SSLEngine on
SSLCertificateFile "${SRVROOT}/conf/cert/certificat.crt"
SSLCertificateKeyFile "${SRVROOT}/conf/key/cle.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "${INSTALL_DIR}/www">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "${SRVROOT}/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
---------------------------------------
Mon fichier
httpd-vhost.conf<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
<VirtualHost *:${MYPORT4343}>
ServerName site1.mondomaine.fr
DocumentRoot "C:/SitesWeb/Dolibarr"
<Directory "C:/SitesWeb/Dolibarr/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:${MYPORT4343}>
ServerName site2.mondomaine.fr
DocumentRoot "C:/SitesWeb/suitecrm"
<Directory "C:/SitesWeb/suitecrm/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>