Solução de Problemas de Certificados SSL e ServBay CA
Este documento apresenta problemas comuns e métodos de solução relacionados a certificados SSL e à ServBay CA no ambiente de desenvolvimento local ServBay.
Por que o navegador mostra que o certificado SSL não é confiável?
Ao tentar acessar um site local hospedado pelo ServBay no navegador, se aparecerem avisos como os exemplos abaixo, geralmente há um problema na configuração do certificado SSL:
- Chrome / Edge:
Your connection is not private
(Sua conexão não é particular)- Código de erro
NET::ERR_CERT_AUTHORITY_INVALID
- Código de erro
NET::ERR_CERT_COMMON_NAME_INVALID
(menos comum, mas pode ocorrer se o certificado não corresponder ao domínio)
- Firefox:
Warning: Potential Security Risk Ahead
(Aviso: Risco Potencial de Segurança à Frente)- Após clicar em "Avançado", pode aparecer o código de erro
SEC_ERROR_UNKNOWN_ISSUER
- Código de erro
SSL_ERROR_BAD_CERT_DOMAIN
(se o certificado não combinar com o domínio)
- Safari:
This Connection Is Not Private
(Esta conexão não é privada)Safari can't verify the identity of the website "your-domain.test"
(O Safari não pode verificar a identidade do site "[seu-dominio.test]")
A razão principal para esse problema é que o ServBay User CA
e o ServBay Public CA
não estão devidamente instalados e confiáveis. Possíveis causas incluem:
- O certificado raiz do ServBay não foi adicionado à lista de autoridades confiáveis do sistema.
- Você já usou o mesmo domínio (por exemplo,
myapp.test
) em outro ambiente de desenvolvimento local, como MAMP ou Laravel Herd. Esses ambientes podem ter gerado certificados diferentes para o mesmo domínio, causando conflito de certificados ou inconsistência no reconhecimento de confiança, especialmente se o navegador armazenou informações erradas em cache.
Solução
Siga os passos abaixo:
- Abra o ServBay
- Acesse Configurações (Settings) e localize a seção ServBay Root CA.
- Clique em Reinstalar ServBay Root CA (Reinstall ServBay Root CA). O ServBay irá tentar reparar automaticamente a instalação e confiança do certificado raiz.
- Feche completamente e reabra seu navegador (certifique-se de fechar todas as janelas e processos para limpar o cache do estado SSL).
- Tente acessar seu site novamente. O erro de certificado SSL deve desaparecer.
Se o problema persistir:
Isso geralmente indica que há certificados antigos, conflitantes ou inválidos no sistema—especialmente se você já usou outras ferramentas (como MAMP ou Herd) para gerar certificados para o mesmo domínio.
- Abra o aplicativo Acesso às Chaves (Keychain Access) do macOS (encontrado em “Aplicativos” > “Utilitários”).
- No campo de busca, digite o domínio problemático (ex:
myapp.test
; se não tiver certeza, tente pesquisar termos comomamp
ouherd
para localizar autoridades certificadoras relacionadas). - No topo, em "Tipo", filtre por Certificados (Certificates).
- Nos resultados, localize todos certificados SSL relacionados ao domínio digitado. Preste especial atenção ao emissor (Issuer): pode ser
ServBay User CA
,MAMP Development CA
,Laravel Herd CA
ou nomes similares. - Selecione os certificados problemáticos (principalmente aqueles que não foram emitidos por
ServBay User CA
ou pareçam suspeitos) e pressioneDelete
para removê-los. Pode ser necessário inserir a senha do sistema para confirmar. Tome cuidado para remover apenas certificados relacionados aos domínios de desenvolvimento local. - (Opcional, mas recomendado): Pesquise por
ServBay User CA
eServBay Public CA
no Acesso às Chaves, confirme que estão presentes e sem um “x” vermelho (indicando não confiável). Se algum tiver o “x” vermelho, dê um duplo clique, expanda a seção “Confiança (Trust)” e defina “Quando usar este certificado (When using this certificate)” como “Sempre confiar (Always Trust)”. - Volte ao aplicativo ServBay.
- Navegue para Configurações (Settings) -> ServBay Root CA.
- Clique em Recriar Todos os Certificados do Usuário ServBay (Recreate All ServBay User Certificates). Isso irá gerar novamente todos os certificados SSL dos sites gerenciados pelo ServBay.
- Reinicie seu Mac para garantir que todos os serviços e componentes do sistema atualizem as configurações e certificados mais recentes.
- Abra o navegador e tente acessar seu site novamente.
Apresentar essas mensagens de erro comuns ajuda o usuário a identificar rapidamente se o problema está relacionado à confiança nos certificados SSL e encontrar a solução adequada.
O que fazer se o certificado SSL foi perdido?
Durante o desenvolvimento local com o ServBay, pode acontecer de arquivos de certificado SSL de um site serem acidentalmente excluídos. Isso pode impedir que o servidor web (Nginx, Caddy ou Apache) inicie ou carregue o site normalmente, exibindo erros relacionados ao certificado nos logs.
Descrição do Problema
Se os arquivos do certificado SSL (.crt
e .key
) emitidos automaticamente pelo ServBay para seu site local forem perdidos, você pode ver mensagens de erro nos logs do servidor web indicando problemas ao localizar ou acessar esses arquivos.
Veja exemplos comuns de erros:
Mensagem de erro do Nginx:
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
2
Mensagem de erro do Caddy:
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
Mensagem de erro do Apache:
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
2
O cerne desses erros é sempre o mesmo: o caminho do arquivo de certificado SSL especificado na configuração do servidor web está inválido porque o arquivo não existe ou não pode ser acessado.
Solução
Para os certificados SSL emitidos automaticamente pelo ServBay, existe uma rotina integrada de detecção e renovação automática para resolver a perda de certificados.
Siga os passos abaixo:
- Inicie o aplicativo ServBay: Garanta que o ServBay está aberto e em execução.
- Acesse a lista de sites: No menu lateral esquerdo do ServBay, clique em Sites.
- Selecione o site afetado: Encontre o site local que está enfrentando problema de perda de certificado SSL e clique nele.
- Detecção e emissão automática: Ao carregar a configuração do site, o ServBay automaticamente verifica se os arquivos do certificado SSL necessários existem. Se algum arquivo estiver faltando (
.crt
ou.key
), o ServBay irá automaticamente reemitir e posicionar um novo certificado no local adequado (/Applications/ServBay/ssl/private/tls-certs/seu-dominio/
). - Reinicie o servidor web: Após a criação e implantação dos novos arquivos de certificado, reinicie o servidor web correspondente (Nginx, Caddy ou Apache) para garantir que os novos arquivos sejam carregados. No menu lateral esquerdo, acesse a página Pacotes (Packages), encontre o pacote do servidor web utilizado e clique no botão de reiniciar (normalmente um ícone de seta circular).
- Verifique se o problema foi resolvido: Após o reinício do servidor, acesse seu site local via HTTPS (por exemplo,
https://seu-dominio
). O problema deve estar solucionado e o site deverá carregar normalmente com HTTPS.
Observações Importantes
- Esta solução é válida para certificados SSL emitidos automaticamente pelo ServBay. Se você utiliza certificados personalizados próprios, após a perda dos arquivos será preciso recuperá-los ou importá-los novamente manualmente, pois o ServBay não fará reemissão automática neste caso.
- O ServBay usa a CA interna "ServBay User CA" para a emissão local dos certificados, permitindo uso de HTTPS em ambiente local. Caso ainda haja alertas de não confiança nos certificados ao acessar via HTTPS, pode ser que sua CA ainda não está reconhecida como confiável pelo sistema ou navegador. Consulte o guia Confiar na ServBay CA para mais informações.
- O ServBay oferece recursos de backup, incluindo configuração de sites e cópias dos certificados SSL. Recomenda-se realizar backups regulares para rápida recuperação em caso de imprevistos.
Perguntas Frequentes (FAQ)
P: Por que o ServBay emite automaticamente certificados SSL para sites locais?
R: O objetivo do ServBay é fornecer um ambiente de desenvolvimento local completo. Para simular produção e facilitar o debug de aplicações HTTPS, o ServBay utiliza sua CA interna para emitir automaticamente certificados SSL para os sites locais criados, permitindo o acesso seguro via HTTPS.
P: Posso usar meu próprio certificado SSL?
R: Sim, o ServBay permite importar e usar seus próprios certificados SSL (inclusive aqueles emitidos por meio de ACME / Let's Encrypt). Este guia de solução de problemas cobre apenas certificados criados automaticamente pelo ServBay.
P: É seguro reemitir os certificados?
R: Sim, em ambiente de desenvolvimento local, os certificados reemitidos pelo ServBay são assinados apenas pela sua CA interna e servem unicamente para uso local de testes e desenvolvimento, sem afetar a segurança de páginas hospedadas publicamente.
Resumo
O ServBay oferece mecanismos práticos para o gerenciamento dos certificados SSL no desenvolvimento local. Ao perder um certificado SSL emitido automaticamente, basta seguir alguns passos simples para que o ServBay detecte e reemita o arquivo, recuperando rapidamente o acesso HTTPS ao seu site local.