desenv-web-rp.com

É uma prática ruim usar certificados SSL autoassinados?

Os certificados SSL são muito caros para os indivíduos, especialmente se você precisar proteger subdomínios diferentes. Estou pensando em usar certificados autoassinados, pois meu foco principal é proteger a conexão e não me autenticar.

No entanto, vários navegadores exibem avisos desagradáveis ​​ao encontrar esse certificado. Você desencorajaria o uso de certificados autoassinados (por exemplo, para aplicativos da Web pequenos ou para a página de administração de um site pequeno)? Ou está bom em alguns casos?

29
Wookai

Em geral, é ruim usar um certificado autoassinado. Se você fizer isso, estará correndo o risco de as pessoas deixarem o site quando receberem um aviso sobre o mau desempenho do seu certificado. Mais importante, você está correndo um risco maior de ter alguém fazendo um ataque de injeção, onde eles usam seu próprio certificado autoassinado no lugar do seu e o visitante não saberá melhor.

Confira o artigo aqui, http://www.sslshopper.com/article-when-are-self-signed-certificates-acceptable.html para obter um pouco mais de informações sobre ele.

14
Ben Hoffman

Como disse RandomBen, os certificados autoassinados geralmente são desaprovados pelas razões que ele explicou. Mas há uma situação em que eles estão bem: se o conjunto de pessoas que precisam enviar dados confidenciais para o seu site for pequeno e limitado, todos eles são tecnicamente competentes e você poderá se comunicar com todos eles. Nesse caso, você pode fornecer a cada pessoa os detalhes do certificado e, em seguida, eles podem verificar o certificado manualmente quando acessam o site e adicionar uma exceção de segurança, se apropriado.

Como exemplo extremo, no meu VPS pessoal, tenho um subdomínio administrativo, que só deve ser acessado por mim. Não haveria problema em proteger esse domínio com um certificado autoassinado, porque posso verificar manualmente se o certificado do servidor usado para proteger a conexão é o mesmo que eu instalei no servidor.

Nos casos em que um certificado autoassinado não funciona ou você prefere um "real", recomendo Let's Encrypt , um projeto iniciado pelo Internet Security Research Group e apoiado pelos principais sites da Internet. empresas, que oferece certificados SSL sem nenhum custo. Eles podem fazer isso porque o processo de verificação usado é completamente automatizado e, de fato, um servidor da Web que suporta seus protocolo ACME (como Caddy , que eu uso atualmente) pode obter certificados inteiramente por conta própria. O Let's Encrypt não verifica se você , como pessoa, é quem você diz que é; verifica apenas se o seu servidor da web é capaz de veicular conteúdo no domínio ao qual afirma. O Let's Encrypt é suportado por todos os principais navegadores, mas é sabido que a verificação é mínima; portanto, se você estiver executando algo como um site de comércio eletrônico ou qualquer coisa em que as pessoas enviem informações confidenciais, provavelmente gaste o dinheiro para obter um certificado com um nível mais alto de validação.

Eu costumava recomendar os certificados StartSSL gratuitos de StartCom para pessoas que não queriam pagar pela validação, mas não mais. A StartCom foi adquirida secretamente pela WoSign em 2016 e posteriormente emitiu certificados ilegítimos para vários domínios. Como resultado, os principais navegadores removeram o suporte aos certificados StartCom. (Tanto quanto eu sei, IE nunca os apoiou de qualquer maneira.) De qualquer forma, o Let's Encrypt é muito mais conveniente.

14
David Z

É não prática recomendada usar certificados autoassinados. Os certificados autoassinados têm muitos propósitos práticos para os quais simplesmente não faz sentido usar um certificado assinado pela CA.

Por exemplo, em muitos dos meus servidores, tenho o login sem senha configurado. Estes são servidores aos quais eu me conecto com tanta frequência e, às vezes, mantêm várias conexões SSH abertas, que é um incômodo digitar meu nome de usuário e senha todas as vezes.

Em vez disso, eu uso um certificado SSL autoassinado que eu gero em cada uma das minhas máquinas clientes (uma estação de trabalho no escritório, um laptop e minha estação de trabalho doméstica). Esse tipo de configuração permite que eu use frases-passe bastante longas, seguras e completamente exclusivas para cada um dos meus servidores sem afetar a produtividade. E como tenho acesso direto aos servidores em que posso instalar a chave pública de cada certificado, não faz sentido usar um certificado assinado pela CA.

Eu poderia configurar minha própria CA raiz com a qual posso assinar todos os certificados de uso interno da nossa empresa e, dessa forma, só precisaria instale uma única chave pública em cada servidor. No entanto, nossa organização não cresceu para o tamanho que realmente precisa disso e, para os propósitos do HTTP seguro, isso ainda seria o mesmo que ter um certificado autoassinado.

Da mesma forma, os certificados autoassinados são frequentemente usados ​​para conexões de email, assinatura PGP e conexões servidor a servidor, onde é trivial pré-trocar chaves públicas. Em muitos desses casos, isso é realmente mais seguro do que depender de uma cadeia de certificados que pode ser comprometida em qualquer ponto da cadeia.

3
Lèse majesté

Se você estiver protegendo vários subdomínios, convém usar certificados curinga , que (dependendo de quantos subdomínios você estiver protegendo) poderá funcionar significativamente mais barato do que comprar um por domínio; por exemplo, o RapidSSL faz com que o curinga fique mais barato que os certificados individuais depois que você tiver quatro domínios em uso.

2
Cebjyre