Numéros de port pour SSL

Nous avons un site Web existant avec HTTP sur le port 80 et HTTPS sur le port 443. Jajoute maintenant un deuxième site, et daprès ce que jai compris, je ne peux pas héberger deux sites sur le même port SSL.

Ma question est donc la suivante: quelle plage de numéros de port me convient-elle dutiliser comme port SSL sur le deuxième site?

Commentaires

  • Je peux me tromper mais je crois quune certification SSL valide nécessite dêtre sur le port 443, et je crois que cest pourquoi lhébergement partagé vous donne un Adresse IP lors de lachat dun SSL. Mais … ce nest pas mon domaine, jespère quune autre personne geek pourra confirmer.

Réponse

En fait, vous POUVEZ héberger plusieurs sites SSL sur le port 443. Le code suivant dans votre fichier de configuration apache fera laffaire.

Sinon, vous pouvez utiliser les ports de votre choix. Linconvénient sera être que les utilisateurs devront inclure le numéro de port dans lURL (par exemple. https://yourdomain.com:445/ )

## SSL (HTTPS) PORT 443 Listen 443 NameVirtualHost *:443 LoadModule ssl_module modules/mod_ssl.so SSLPassPhraseDialog builtin SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000) SSLSessionCacheTimeout 300 SSLMutex default SSLRandomSeed startup file:/dev/urandom 256 SSLRandomSeed connect builtin SSLCryptoDevice builtin <VirtualHost *:443> ServerName host1.com SSLEngine on SSLOptions +StrictRequire SSLProtocol -all +TLSv1 +SSLv3 SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM SSLCertificateFile /etc/httpd/ssl/host1.crt SSLCertificateKeyFile /etc/httpd/ssl/host1.key SSLVerifyClient none SSLProxyEngine off SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" DocumentRoot /var/www/host1/ <Directory "/var/www/host1/"> Options Indexes FollowSymLinks AllowOverride All Order Allow,deny Allow from all </Directory> </VirtualHost> <VirtualHost *:443> ServerName host2.com SSLEngine on SSLOptions +StrictRequire SSLProtocol -all +TLSv1 +SSLv3 SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM SSLCertificateFile /etc/httpd/ssl/host2.crt SSLCertificateKeyFile /etc/httpd/ssl/host2.key SSLVerifyClient none SSLProxyEngine off SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" DocumentRoot /var/www/host2/ <Directory "/var/www/host2/"> Options Indexes FollowSymLinks AllowOverride All Order Allow,deny Allow from all </Directory> </VirtualHost> 

Commentaires

  • Merci, mais ceci est un site IIS. Avez-vous une idée de la façon dont jirais de lavant pour faire de même?

Réponse

Quand vous dites « second site » – voulez-vous dire un deuxième nom de domaine? Comme dans, vous « hébergez actuellement https://www.mycompany.com sur un cluster et vous souhaitez héberger https://www.yourcompany.com sur ce même cluster? Je pense que ce que vous » recherchez est « hébergement virtuel »: http://support.microsoft.com/kb/q190008

Vous devrez toujours acheter un deuxième certificat SSL, mais vous pourrez héberger les deux en même temps Adresse IP sous les ports standard (ce qui, à tout le moins, renforcera la confiance des utilisateurs dans votre site).

Commentaires

  • Jai utilisé host les noms den-tête et les deux sites se présentent sous la forme first.mycompany.com et second.mycompany.com. Le problème est que sur  » Identification avancée du site Web « , il y a trois colonnes pour HTTP (adresse IP, port TCP et valeur den-tête de lhôte) mais seulement deux pour HTTPS (adresse IP et port SSL), donc cela ne semble pas possible ‘ daprès ce que je peux voir.

Réponse

Traditionnellement, vous avez besoin dune adresse IP par liaison SSL. Il nest pas possible dajouter un en-tête dhôte lors de la configuration des liaisons. La raison en est que len-tête dhôte fait partie des en-têtes HTTP envoyés par les navigateurs et que ces en-têtes sont chiffrés dans le cadre du trafic SSL. Afin de lire len-tête du nom dhôte, le serveur doit dabord décrypter le trafic, mais pour ce faire, il doit savoir quel certificat utiliser. Pour cela, il aurait besoin de len-tête dhôte pour que vous vous retrouviez dans un cercle vicieux.

Une solution serait que le serveur essaie tous ses certificats installés et essaie de déchiffrer la demande. Bien que cela puisse fonctionner avec quelques certificats installés, cela ne fonctionnera pas pour les serveurs avec des dixièmes ou des centaines de sites Web SSL. Cela ralentirait considérablement le serveur car le serveur devrait le faire pour chaque requête entrante.

La solution pour cela est une extension du protocole SSL appelé Indication du nom du serveur (SNI) . Cela ajoute le nom dhôte au protocole SSL qui permet au serveur de voir len-tête de lhôte avant de devoir déchiffrer le trafic SSL. Cette extension nest prise en charge par aucune version dIIS antérieure à IIS 8 (Windows 2012). Du côté client, SNI est pris en charge par OS X 10.5.6 et Windows Vista ou supérieur . SNI nest pas pris en charge par SChannel sous Windows XP et donc par aucune version dInternet Explorer (même 8.0) sous Windows XP.

Réponse

Dans IIS (comme avec dautres serveurs Web), trois identificateurs clés identifient votre site pour les demandes entrantes:

  1. Adresse IP
  2. TCP port
  3. En-tête dhôte

Si vous exécutez plusieurs sites Web sur un seul serveur Web, au moins lun de ces trois doit être différent pour chaque site. Dans de nombreux environnements, un serveur ne reçoit quune seule adresse IP, ce qui laisse alors le port TCP et len-tête dhôte qui peuvent être modifiés. Il est possible dexécuter un site Web https sur un port différent, il vous suffit de spécifier le port dans lURL qui nest pas toujours souhaitable (cela ressemblerait à quelque chose comme https://www.foo.com:32000/index.html ). Le plus souvent, vous souhaitez exécuter tous vos sites Web sur le port 80 (http) ou 443 (https) afin de vous retrouver avec des URL propres. Cela laisse alors len-tête dhôte comme lélément que vous souhaitez modifier.

Dans IIS, vous pouvez avoir plusieurs sites sur la même combinaison IP / port qui utilisent SSL et des en-têtes dhôte.La clé est que vous devez utiliser un certificat générique ou un certificat SAN (Subject Alternative Names) qui spécifie plusieurs noms dhôte dans le certificat lui-même. Vous ne pouvez pas définir les liaisons den-tête dhôte pour les en-têtes dhôte sur un site SSL dans linterface utilisateur du gestionnaire IIS. Vous devez le faire via la ligne de commande ou modifier manuellement le fichier applicationHost.config sur le serveur.

Les informations de Technet sur la configuration de cela via la ligne de commande peuvent être trouvées ici .

Il y avait un message sur le Forum IIS avec un problème similaire à celui-ci également qui peut être trouvé ici .

Après avoir exécuté la commande ou modifié manuellement le fichier de configuration, votre fichier applicationHost.config pourrait ressembler à ceci:

<site name="first.mycompany.com"> ... <bindings> <binding protocol="http" bindingInformation="192.168.10.100:80:first.mycompany.com" /> <binding protocol="https" bindingInformation="192.168.10.100:443:first.mycompany.com" /> </bindings> ... </site> <site name="second.mycompany.com"> ... <bindings> <binding protocol="http" bindingInformation="192.168.10.100:80:second.mycompany.com" /> <binding protocol="https" bindingInformation="192.168.10.100:443:second.mycompany.com" /> </bindings> ... </site> 

Vous verrez alors les liaisons dans le gestionnaire IIS. Jespère que cela vous aidera.

* EDIT * Les informations ci-dessus supposent ceci problème était lié à IIS7. Si cest pour IIS6, il existe une procédure différente à suivre. Vous trouverez des informations à ce sujet ici .

Réponse

en tenant compte de votre dernier commentaire et après avoir examiné les réponses des experts, je peux recommander deux solutions.

La meilleure solution est:

Achetez un certificat ssl générique qui vous permettra de sécuriser des sous illimités .domain.com hébergé sur la même adresse IP (le certificat SSL nécessite une adresse IP dédiée).

Solutions alternatives:

Vous pouvez acheter deux certificats SSL différents, un pour chaque site Web. Ici, vous impossible de les héberger sur la même adresse IP.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *