Skip to main content

Asegurar tu sitio de Páginas de GitHub con HTTPS

HTTPS agrega una capa de encriptación que evita que otros se entrometan o manipulen el tráfico en tu sitio. Puedes aplicar HTTPS en tu sitio Páginas de GitHub para redirigir de forma transparente todas las solicitudes de HTTP a HTTPS.

Páginas de GitHub se encuentra disponible en los repositorios públicos con GitHub Free y con GitHub Free para las organizaciones, y en los repositorios públicos y privados con GitHub Pro, GitHub Team, Nube de GitHub Enterprise, y GitHub Enterprise Server. Para obtener más información, consulta la sección "Productos de GitHub".

Las personas con permisos de administración para un repositorio pueden aplicar HTTPS para un sitio de Páginas de GitHub.

Acerca de HTTPS y de las Páginas de GitHub

Todos los sitios Páginas de GitHub, incluidos los sitios que están correctamente configurados con un dominio personalizado, admiten HTTPS y la aplicación de HTTPS. Para obtener más información acerca de los dominios personalizados, consulta "Acerca de los dominios personalizados y de las Páginas de GitHub" y "Solución de problemas de los dominios personalizados y de las Páginas de GitHub".

Los sitios Páginas de GitHub no se deben usar para realizar transacciones que impliquen el envío de información confidencial como contraseñas o números de tarjeta de crédito.

Advertencia: A menos de que tu empresa utilice Usuarios Administrados de Enterprise, los sitios de Páginas de GitHub estarán disponibles públicamente en la internet predefinidamente, incluso si el repositorio del sitio es privado o interno. Puedes publicar el sitio de forma privada si administras el control de accesos de este. De lo contrario, si tienes datos sensibles en el repositorio de tu sitio, deberías eliminar los datos antes de publicarlo. Para obtener más información, consulta las secciones "Acercad de los repositorios" y "Cambiar la visbilidad de tu sitio de Páginas de GitHub".

Nota: El RFC3280 indica que la longitud máxima del nombre común debe ser de 64 caracteres. Por lo tanto, todo el nombre de dominio de tu sitio de Páginas de GitHub debe ser menor a 64 caracteres de longitud para que se cree un certificado exitosamente.

Aplicar HTTPS en tu sitio Páginas de GitHub

  1. En GitHub Enterprise Cloud, navega al repositorio de tu sitio.

  2. Debajo de tu nombre de repositorio, da clic en Configuración. Botón de configuración del repositorio

  3. En la sección de "Código y automatización" de la barra lateral, haz clic en Páginas .

  4. Debajo de "Páginas de GitHub", selecciona Enforce HTTPS (Aplicar HTTPS). Aplicar casilla de verificación de HTTPS

Solución de problemas para el aprovisionamiento de certificados (error de tipo "Certificate not yet created")

Cuando configuras o cambios tu dominio personalizado en los ajustes de las Páginas, comenzará una verificación automática de DNS. Esta verificación determina si tus ajustes de DNS se configuran para permitir que GitHub obtenga un certificado automáticamente. Si la verificación tiene éxito, GitHub pondrá en cola un job para solicitar un certificado TLS desde Let's Encrypt. Cuando recibas un certificado válido, GitHub lo carga automáticamente a los servidores que manejan la terminación de TLS para las Páginas. Cuando este proceso se complete con éxito, se mostrará una marca de verificación al costado de tu nombre de dominio personalizado.

El proceso podría tomar algo de tiempo. Si el proceso no se completa varios minutos después de que hiciste clic en Guardar, inténtalo haciendo clic en Eliminar junto a tu nombre de dominio personalizado. Vuelve a teclear el nombre de dominio y haz clic nuevamente en Guardar. Esto cancelará y volverá a iniciar el proceso de aprovisionamiento.

Resolver problemas con contenido mixto

Si habilitas HTTPS para tu sitio de Páginas de GitHub, pero el HTML de tu sitio sigue referenciando imágenes, CSS o JavaScript a través de HTTP, significa que tu sitio está ofreciendo contenido mixto. Ofrecer contenido mixto puede hacer que tu sitio sea menos seguro y generar problemas al cargar activos.

Para eliminar el contenido mixto de tu sitio, asegúrate de que todos tus activos se ofrezcan mediante HTTPS cambiando http:// por https:// en el HTML de tu sitio.

Normalmente, los activos se encuentran en las siguientes ubicaciones:

  • Si tu sitio usa Jekyll, es probable que tus archivos HTML se encuentren en la carpeta de _layouts.
  • Habitualmente, CSS se encuentra en la sección <head> de tu archivo HTML.
  • Habitualmente, JavaScript se encuentra en la sección <head> o simplemente antes de la etiqueta de cierre </body>.
  • Las imágenes se suelen encontrar en la sección <body>.

Sugerencia: Si no puedes encontrar tus activos en los archivos fuente de tu sitio, prueba buscando los archivos fuente de tu sitio para http en el editor de texto o en GitHub Enterprise Cloud.

Ejemplos de activos referenciados en un archivo HTML

Tipo de activoHTTPHTTPS
CSS<link rel="stylesheet" href="http://example.com/css/main.css"><link rel="stylesheet" href="https://example.com/css/main.css">
JavaScript<script type="text/javascript" src="http://example.com/js/main.js"></script><script type="text/javascript" src="https://example.com/js/main.js"></script>
Image<a href="http://www.somesite.com"><img src="http://www.example.com/logo.jpg" alt="Logo"></a><a href="https://www.somesite.com"><img src="https://www.example.com/logo.jpg" alt="Logo"></a>