Sé que se necesita una IP dedicada para configurar SSL. ¿Qué sucede si agregamos SSL para dominios que comparten una IP? (Namevirtualhost)
apache-2.2
ssl
https
certificate
nitinas
fuente
fuente
Respuestas:
Creo que es una buena idea cómo explicar cuál es realmente el problema con los hosts virtuales y SSL / TLS.
Cuando te conectas a un servidor apache a través de HTTP, envías un conjunto de encabezados http. Se ven así:
Si tiene alojamiento virtual, Apache buscará en el campo hosts, luego busque el index.html correcto para usted. El problema es cuando agrega SSL / TLS. El servidor configura el cifrado antes de que envíe su solicitud http. Por lo tanto, el servidor no sabe si irá a www.nice-puppies.com o www.evil-haxxor.com hasta que se complete la autenticación / encriptación. El servidor no puede adivinar (ya que enviar el certificado incorrecto le da un mensaje de error desagradable).
Una solución es un certificado comodín (como se mencionó anteriormente), que es válido para * .nice-puppies.com. De esa manera, puede usar el mismo certificado para múltiples dominios, pero no puede tener un certificado * .com (está bien, puede, pero sería muy malo para todos los demás), por lo que, en general, necesitará una IP separada para cada uno. Dominio HTTPS.
fuente
La verdadera solución a este problema es la "Indicación del nombre del servidor":
http://en.wikipedia.org/wiki/Server_Name_Indication
Está comenzando a implementarse en servidores y clientes web, por lo que no es realmente algo que pueda usar ahora, pero con suerte dentro de unos años no será un problema tan grande.
fuente
El problema es que el certificado SSL está vinculado a la dirección IP, no al nombre de host. Cuando la conexión llega a la dirección IP para una solicitud HTTPS, la primera acción es establecer la comunicación SSL pasando el certificado del servidor y / o el certificado del cliente. Durante esta etapa del protocolo de enlace de conexión, el servidor Apache no tiene forma de saber para qué sirve la solicitud. Esto es diferente para el tráfico HTTP (no SSL), ya que después de que se establece la conexión, el servidor Apache puede determinar la configuración del host virtual que se utilizará si el cliente envía el
Host
encabezado o lo transfiere al primer host virtual configurado.Si tuviera varios hosts virtuales bajo el mismo dominio, podría configurar un solo certificado comodín en la dirección IP y tener múltiples hosts virtuales con diferentes nombres de servidor definidos; sin embargo, si esos nombres de servidor no están bajo el mismo nombre de dominio, generarían errores en el servidor del cliente. Esto funcionaría ya que el certificado comodín sería válido para todos los nombres de host con ese nombre de dominio. Necesitaría otra dirección IP si los nombres de dominio fueran diferentes, ya que el primer certificado definido para esa dirección IP sería el que se presenta para conectar clientes.
fuente
Esto se puede agregar en un solo certificado SSL como SAN (Nombre alternativo del sujeto). En mi experiencia tuve que solicitar un certificado de organización. Yo usé globalsign.
fuente
En realidad, con un software moderno, PUEDE servir varios sitios HTTPS a través de una sola dirección IP, utilizando una nueva función llamada 'SNI - Indicación de nombre del servidor'.
http://en.wikipedia.org/wiki/Server_Name_Indication
http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI
Todavía tengo que usar esto yo mismo, pero suena bien para sitios internos e intranet. La mayoría de los navegadores modernos admiten SNI. IE6 no admite SNI, pero IE7 sí.
(Corrección: 20100426 - SNI no es compatible con Windows XP en absoluto. Windows Vista y superior admiten SNI. Consulte "Sección 2.2.3" en http://msdn.microsoft.com/en-us/library/dd208005% 28v = PROT.13% 29.aspx # id8 ).
fuente
Estoy trabajando en el mismo problema. Como prueba, IE7 y versiones posteriores (solo en Win7 y Vista) / Chrome / Firefox / Safari / Opera admiten "Indicación de nombre del servidor". De hecho, si el navegador usa Tsl 1.0, es compatible con "Indicación de nombre del servidor".
fuente
Creo que el OP pregunta qué sucede si agrega un certificado SSL a una IP que tiene muchos hosts virtuales. Si ninguno de los otros hosts virtuales usa un certificado SSL, entonces él debería estar en claro.
fuente
Un certificado de UC es definitivamente el camino a seguir: http://www.sslshopper.com/unified-communications-uc-ssl-certificates.html
fuente
Si intenta agregar dos certificados en la misma IP, solo se usará el certificado de primera lectura en todas partes. Una IP: un certificado SSL.
Si desea obtener más certificados SSL en la misma IP, considere obtener un dominio de múltiples dominios (llamado UCC, échele un vistazo a @ godaddy ) o un certificado comodín (más caro).
fuente