Solución de problemas con certificados SSL y la CA de ServBay
Este documento ofrece una guía para solucionar problemas comunes relacionados con los certificados SSL y la Autoridad Certificadora (CA) de ServBay en entornos de desarrollo local.
¿Por qué el navegador indica que el certificado SSL no es de confianza?
Si al acceder a tu sitio local gestionado por ServBay, el navegador muestra advertencias como las siguientes, probablemente exista un problema con la configuración del certificado SSL:
- Chrome / Edge:
Your connection is not private
(Tu conexión no es privada)- Código de error:
NET::ERR_CERT_AUTHORITY_INVALID
- Código de error:
NET::ERR_CERT_COMMON_NAME_INVALID
(menos frecuente, pero puede aparecer si el certificado no coincide con el dominio)
- Firefox:
Warning: Potential Security Risk Ahead
(Advertencia: riesgo de seguridad potencial)- Al hacer clic en "Avanzado" puedes ver el código de error
SEC_ERROR_UNKNOWN_ISSUER
- Código de error
SSL_ERROR_BAD_CERT_DOMAIN
(si el certificado no coincide con el dominio)
- Safari:
This Connection Is Not Private
(Esta conexión no es privada)Safari can't verify the identity of the website "your-domain.test"
(Safari no puede verificar la identidad del sitio “tudominio.test”)
La causa principal de este problema es que ServBay User CA
y ServBay Public CA
no se han instalado ni confiado correctamente. Esto puede deberse a:
- El certificado raíz de ServBay no se ha añadido al listado de confianza del sistema operativo.
- Has utilizado el mismo dominio (por ejemplo
myapp.test
) en otros entornos locales como MAMP o Laravel Herd, y los certificados de esas herramientas entran en conflicto con los de ServBay, o los propios certificados están defectuosos, haciendo que el navegador almacene información incorrecta o certificados inválidos en caché.
Solución
Sigue estos pasos:
- Abre ServBay
- Ve a Configuración (Settings) y localiza la sección ServBay Root CA.
- Haz clic en Reinstalar ServBay Root CA (Reinstall ServBay Root CA). ServBay intentará solucionar automáticamente los problemas de instalación y confianza del certificado raíz.
- Cierra y vuelve a abrir el navegador completamente (asegúrate de cerrar todas las ventanas y procesos para limpiar el estado SSL almacenado).
- Accede de nuevo a tu sitio web. El error del certificado SSL debería haberse resuelto.
Si el problema persiste:
Por lo general, esto significa que existen certificados antiguos, conflictivos o inválidos en el sistema, especialmente si has usado otras herramientas como MAMP o Herd para generar certificados sobre el mismo dominio.
- Abre la herramienta de gestión de certificados del sistema:
- macOS: Abre Acceso a Llaveros (Keychain Access) (puedes encontrarlo en "Aplicaciones" > "Utilidades").
- Windows: Pulsa Win+R, escribe
certmgr.msc
y presiona Enter para abrir el administrador de certificados.
- En el cuadro de búsqueda en la esquina superior derecha, escribe el dominio problematico (por ejemplo,
myapp.test
; si no estás seguro, prueba buscar pormamp
oherd
para localizar certificados de esas autoridades). - Filtra por Certificados (Certificates) en la parte superior (“Tipo” o “Kind”).
- Localiza todos los certificados SSL relacionados con el dominio en los resultados. Revisa especialmente el emisor (Issuer): puede ser
ServBay User CA
,MAMP Development CA
,Laravel Herd CA
u otros similares. - Selecciona los certificados relacionados con el dominio (especialmente los que NO han sido emitidos por
ServBay User CA
o los que parezcan sospechosos) y presionaEliminar
para borrarlos. Es posible que se solicite tu contraseña. Actúa con precaución y elimina únicamente los certificados asociados a tus dominios locales de desarrollo. - (Opcional pero recomendado) Vuelve a buscar
ServBay User CA
yServBay Public CA
en Acceso a Llaveros y verifica que los certificados existen y no tienen una "x" roja en el ícono (indicando falta de confianza). Si no son de confianza (tienen una cruz roja), haz doble clic en el certificado, expande la sección “Confianza (Trust)” y establece “Al utilizar este certificado (When using this certificate)” en “Confiar siempre (Always Trust)”. - Regresa a la aplicación ServBay.
- Ve a Configuración (Settings) -> ServBay Root CA.
- Haz clic en Recrear todos los certificados de usuario ServBay (Recreate All ServBay User Certificates). Esto generará nuevos certificados SSL para todos los sitios gestionados por ServBay.
- Reinicia el ordenador. Así aseguras que todos los servicios y componentes del sistema están cargando los certificados y la configuración de confianza más recientes.
- Vuelve a abrir el navegador y prueba acceder a tu sitio otra vez.
Añadiendo estos mensajes de error comunes, los usuarios pueden identificar más rápidamente si el problema está relacionado con la confianza en el certificado SSL y encontrar la solución adecuada.
¿Qué hacer si se pierden los certificados SSL?
Durante el desarrollo de sitios web locales con ServBay, puede ocurrir que los archivos del certificado SSL del sitio se pierdan accidentalmente. Esto provoca que el servidor web (como Nginx, Caddy o Apache) no pueda iniciar correctamente o cargar el sitio, y que en el registro de errores aparezcan mensajes relacionados con los archivos de certificados.
Descripción del problema
Si los archivos de certificados SSL (.crt
y .key
) firmados automáticamente por ServBay para tu sitio local se han perdido, podrías encontrar mensajes como los siguientes en los registros de error del servidor web. Estos errores indican que el servidor no puede encontrar o acceder a la ruta del archivo de certificado especificado.
Ejemplos de mensajes de error comunes:
Mensaje de error Nginx:
log
nginx: [emerg] cannot load certificate "/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling fopen(/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt, r) error:10000080:BIO routines::no such file)
nginx: configuration file /Applications/ServBay/package/etc/nginx/nginx.conf test failed
1
2
2
Mensaje de error Caddy:
log
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/servbay.host/ser3vbay.host.crt: no such file or directory
1
Mensaje de error Apache:
log
AH00526: Syntax error on line 15 of /Applications/ServBay/package/etc/apache/vhosts/servbay.host.conf:
SSLCertificateFile: file '/Applications/ServBay/ssl/pri3vate/tls-certs/servbay.host/servbay.host.crt' does not exist or is empty
1
2
2
La causa central de estos mensajes es que la ruta al archivo de certificado especificada en la configuración del servidor web es inválida, bien porque el archivo no existe o no es accesible.
Solución
Para los certificados SSL firmados automáticamente por ServBay, existe un mecanismo automático de detección y reemisión que facilita la restauración si los archivos se pierden.
Sigue estos pasos:
- Inicia la aplicación ServBay: Asegúrate de que ServBay está en funcionamiento.
- Ve a la lista de sitios web: En el menú de navegación izquierdo de ServBay, haz clic en Sitios web.
- Selecciona el sitio afectado: Busca en la lista el nombre del sitio que presenta problemas de certificados SSL y haz clic sobre él.
- Detección y reemisión automática: ServBay verificará al cargar la configuración del sitio si existen los archivos de certificado necesarios. Si detecta la falta de archivos (
.crt
o.key
), intentará reemitirlos y desplegarlos automáticamente en la ruta correcta (/Applications/ServBay/ssl/private/tls-certs/tudominio/
). - Reinicia el servidor web: Una vez que se generan y despliegan los nuevos archivos de certificado, reinicia el paquete de servicio web correspondiente (Nginx, Caddy o Apache) para que pueda cargar los nuevos certificados. Ve a la página de Paquetes en el menú lateral, localiza el paquete de servidor web y pulsa el botón de reiniciar (normalmente un ícono de flecha circular).
- Verifica la solución: Tras el reinicio exitoso del servidor web, prueba acceder al sitio local mediante HTTPS (por ejemplo,
https://tudominio
). El problema debería estar resuelto y el sitio cargar normalmente con conexión segura.
Información importante
- Esta solución está enfocada a los certificados SSL generados automáticamente por ServBay. Si utilizas certificados personalizados importados por ti, ServBay no reemitirá los archivos perdidos; deberás recuperarlos manualmente o volver a solicitarlos e importarlos.
- ServBay utiliza la CA interna
ServBay User CA
para firmar los certificados de sitios locales y posibilitar el uso de HTTPS en desarrollo. Si el navegador sigue mostrando advertencias de desconfianza, probablemente la CA de ServBay no está reconocida por tu sistema o navegador. Consulta el documento de ServBay sobre Gestión del certificado raíz local SSL para configurarlo correctamente. - ServBay ofrece funciones de respaldo de datos, incluyendo copias de configuración de sitios y certificados SSL. Realizar copias de seguridad periódicas te permite recuperar la información rápidamente ante cualquier incidente.
Preguntas frecuentes (FAQ)
P: ¿Por qué ServBay genera automáticamente certificados SSL para los sitios locales?
R: El propósito de ServBay es ofrecer un entorno de desarrollo local completo. Para simular el entorno de producción y facilitar el desarrollo de aplicaciones HTTPS, ServBay emplea su CA interna para otorgar certificados SSL a los sitios que creas, permitiendo el acceso seguro en local.
P: ¿Puedo usar mi propio certificado SSL?
R: Sí, ServBay permite importar y utilizar tus propios certificados SSL (incluidos los obtenidos mediante ACME o Let's Encrypt). Esta guía de solución de problemas solo aplica a los certificados generados por ServBay.
P: ¿Es seguro volver a emitir los certificados?
R: Sí, para el entorno de desarrollo local, ServBay vuelve a emitir certificados firmados por la ServBay User CA, y su uso está limitado a desarrollo y pruebas en tu equipo local. Esto no afecta la seguridad de tu sitio en Internet público.
Resumen
ServBay pone a tu disposición mecanismos sencillos para gestionar los certificados SSL de tus sitios de desarrollo local. Si los certificados SSL generados automáticamente se pierden, con unos pocos pasos ServBay puede detectarlos y reemitirlos, permitiéndote restaurar rápidamente el acceso seguro vía HTTPS a tus sitios locales.