Skip to main content

Solución de errores de TLS

Si surgen problemas de TLS en su dispositivo, puedes tomar medidas para resolverlos.

Eliminar la contraseña de un archivo clave

Si tienes una máquina linux con OpenSSL instalado, puedes eliminar tu contraseña.

  1. Renombrar tu archivo clave original.

    mv yourdomain.key yourdomain.key.orig
    
  2. Generar una nueva clave sin una contraseña.

    openssl rsa -in yourdomain.key.orig -out yourdomain.key
    

Se te pedirá la contraseña de la clave cuando ejecutes este comando.

Para más información sobre OpenSSL, vea la documentación de OpenSSL.

Conversión del certificado TSL o de la clave a un formato PEM

Si tiene instalado OpenSSL, puede convertir la clave a formato PEM mediante el comando openssl. Por ejemplo, puedes convertir una clave de formato DER a formato PEM.

openssl rsa -in yourdomain.der -inform DER -out yourdomain.key -outform PEM

De lo contrario, puedes utilizar la herramienta SSL Converter para convertir tu certificado a formato PEM. Para más información, vea la documentación de la herramienta SSL Converter.

Instalación sin respuesta después de cargar una clave

Si tu instancia de GitHub Enterprise Server no responde después de cargar una clave TLS, ponte en contacto con el equipo de soporte técnico de GitHub Enterprise y proporciona detalles específicos, incluida una copia de tu certificado TLS. Asegúrate de que la clave privada no está incluida.

Errores de validez de certificado

Los clientes como navegadores web y líneas de comando Git mostrarán un mensaje de error si no pueden verificar la validez de un certificado TLS. Esto sucede con frecuencia con los certificados autofirmados y los certificados de "raíz encadenada" emitidos por un certificado raíz intermedio que no es reconocido por el cliente.

Si estás usando un certificado firmado por una autoridad de certificación (CA), el archivo del certificado que cargaste a GitHub Enterprise Server debe incluir una cadena de certificado con ese certificado raíz de CA. Para crear dicho archivo, concatena tu cadena de certificado entera (o "paquete de certificado") al final de tu certificado, garantizando que el certificado principal con tu nombre del host aparezca primero. En la mayoría de los sistemas puedes hacer esto con un comando similar a:

cat yourdomain.com.crt bundle-certificates.crt > yourdomain.combined.crt

Deberías poder descargar un paquete de certificado (por ejemplo, bundle-certificates.crt) desde el proveedor de TLS o la autoridad de certificación.

Instalar certificados raíz de autoridad de certificación (CA) autofirmados o que no son de confianza

Si tu aparato GitHub Enterprise Server interactúa con otras máquinas en tu red que utilizan un certificado autofirmado o que no es de confianza, deberás importar el certificado raíz de la CA firmante en el almacenamiento de certificado de todo el sistema para poder acceder a estos sistemas por HTTPS. Si quieres usar un certificado firmado por una entidad de certificación interna, debes instalar el certificado raíz y los certificados intermedios.

  1. Obtén el certificado raíz de la CA de tu autoridad de certificación local y asegúrate que esté en formato PEM.

  2. Copia el archivo a tu aparato GitHub Enterprise Server por SSH como el usuario "administrador" en el puerto 122.

    scp -P 122 rootCA.crt admin@HOSTNAME:/home/admin
    
  3. Conecta a la shell administrativa GitHub Enterprise Server por SSH como el usuario "administrador" en el puerto 122.

    ssh -p 122 admin@HOSTNAME
    
  4. Importa el certificado al almacenamiento de certificado de todo el sistema.

    ghe-ssl-ca-certificate-install -c rootCA.crt
    
  5. Para aplicar la configuración, ejecuta el siguiente comando.

    Note

    Durante la ejecución de una configuración, los servicios de tu instancia de GitHub Enterprise Server pueden reiniciarse, y esto puede provocar un breve tiempo de inactividad para los usuarios.

    Shell
    ghe-config-apply
    
  6. Espera que se complete la fase de configuración.

Actualización de un certificado TLS

Puedes generar un certificado autofirmado nuevo o actualizar un certificado TLS existente para tu instancia de GitHub Enterprise Server con la utilidad de línea de comandos ghe-ssl-certificate-setup. Para más información, consulta Utilidades de la ea de comandos.

Solución de problemas con las comunicaciones de servidor después de actualizar un certificado TLS

Si tiene problemas con la comunicación u otros problemas en el servidor después de actualizar un certificado, puede que falten archivos o vínculos simbólicos en la instalación. Compruebe la salida del registro web para ver el mensaje siguiente.

 certificate verify failed (unable to get issuer certificate)

Si ve este mensaje, es probable que falten certificados o que no estén configurados correctamente. Esto puede impedir que los servicios de la aplicación se comuniquen entre sí.

Para solucionar este problema:

  1. Realice una copia de seguridad del directorio de certificados TLS actual.

  2. Para actualizar los certificados y el contenido que puede faltar en el directorio /etc/ssl/certs, ejecute el siguiente comando.

    Shell
    sudo update-ca-certificates --verbose --fresh
    

Si sigue teniendo problemas, póngase en contacto con Soporte técnico para GitHub Enterprise.