Eu criei uma CA e gerei um certificado autoassinado assinado usando essa CA, depois disso, vinculei-o ao meu site local no servidor IIS, funciona bem no meu PC, mas quando eu acesso em outro PC na mesma intranet, ele dá um erro de editor desconhecido. O que eu quero alcançar é que eu possa acessar o site hospedado localmente no servidor IIS em https na intranet.
relate perguntas
-
Certificado de chaveiro do Mac OS X "membro: VERY_LONG_GUID"
-
Falha na renovação do Let's Encrypt
-
Como adicionar um certificado SSL autoassinado ao armazenamento confiável do Linux (Ubuntu/Alpine)?
-
Não é possível verificar um certificado openssl em relação a um certificado openssl autoassinado?
-
Como configuro DNS, AWS S3, AWS Cloudfront e AWS Certificate Manager para proteger vários sites
Em primeiro lugar, certifique-se de não estar usando o algoritmo SHA1 para gerar certificados autoassinados do IIS, pois ele é obsoleto nos navegadores modernos. Se for algo SHA1, use algoritmos melhores como SHA256.
Depois disso, exporte seu certificado apenas com chave pública. Adicione-o ao Windows Certificate Store em todas as máquinas Windows através das quais você deseja acessar seu site local pela intranet. Para o Firefox, você terá que adicionar o certificado no próprio armazenamento de certificados do Firefox.
Se você não adicionar certificado em todas as máquinas, eles não poderão confiar no seu site. Seu navegador só confia em seu site se a CA já estiver presente no armazenamento de certificados que está usando.
Se não quiser adicionar manualmente o seu certificado em todas as máquinas da sua intranet, você pode optar por provedores de certificados confiáveis. Há muitos que fornecem certificados gratuitamente. Eu pessoalmente prefiro Let's Encrypt. Para instalar e renovar certificados automaticamente no IIS, você pode usar win-acme.
Ref: https://github.com/win-acme/win-acme
Ref: https://stackoverflow.com/questions/46641473/trust-a-self-signed-cert-from-iis
Você pode consultar o link acima, pois é bastante semelhante ao seu problema.
Você precisa implantar o certificado CA para todos os clientes que desejam se conectar.
Os certificados não começam a funcionar apenas porque foram assinados por uma CA – isso só acontece com CAs específicas nas quais os dispositivos confiam para emitir certificados de forma verdadeira. (Se não fosse esse o caso, qualquer um poderia começar a emitir seus próprios certificados para sites que não são de sua propriedade, e isso anularia completamente o objetivo dos certificados!)
Portanto, você precisará instalar manualmente o certificado raiz da CA em qualquer lugar. Para seus próprios smartphones, isso não é um problema – tanto o Android quanto o iOS permitem a instalação personalizada do CA. (Para iOS, acho que você precisa enviar o arquivo .crt como anexo por e-mail e abri-lo por meio do aplicativo iOS Mail integrado.)
Você ainda obteve uma vantagem, pois precisará implantar apenas um certificado – o certificado raiz da CA – e não muitos certificados diferentes para vários serviços HTTPS que poderá ter no futuro. Desde que os dispositivos tenham a CA instalada, eles reconhecerão automaticamente todos os certificados futuros emitidos por ela.
Embora eu não recomende fazer isso para um site que seus funcionários, familiares ou vários visitantes aleatórios precisam acessar; dizer a eles para instalarem sua CA seria pedir para depositar muita confiança em você. Então, em vez disso, você deve configurar um nome de domínio para seu aplicativo da web (sim, mesmo que seja apenas interno) e, em seguida, obter um certificado do Let's Encrypt ou de alguma outra CA pública (sim, você pode fazer ACME no Windows).
(Como observação, no significado técnico do termo, se o certificado foi emitido por uma CA, então, por definição, não é "autoassinado".)