web-dev-qa-db-fra.com

Y a-t-il une raison d'utiliser un certificat SSL autre que le SSL gratuit de Let's Encrypt?

Let's Encrypt fournit des certificats SSL gratuits. Y a-t-il des inconvénients par rapport à d'autres certificats payants, par exemple AWS Certificate Manager ?

142
ripper234

Durée de vie du certificat

Sécurité

Une durée de vie plus courte est meilleure. Tout simplement parce que la révocation est principalement théorique, dans la pratique elle ne peut pas être invoquée (grande faiblesse de l'écosystème public de l'ICP).

La gestion

Sans automatisation: une durée de vie plus longue est plus pratique. LE peut ne pas être réalisable si, pour une raison quelconque, vous ne pouvez pas automatiser la gestion des certificats
Avec l'automatisation: la durée de vie n'a pas d'importance.

Impression de l'utilisateur final

Il est peu probable que les utilisateurs finaux aient une idée d'une manière ou d'une autre.

Niveau de vérification

Sécurité

Letsencrypt fournit uniquement le niveau de vérification DV.
En achetant un certificat, vous obtenez ce que vous payez (à partir de DV, avec le même niveau d'affirmation qu'avec LE).

DV = seul le contrôle du nom de domaine est vérifié.
OV = les informations sur l'entité propriétaire (organisation) sont également vérifiées.
EV = version plus approfondie d'OV, qui a traditionnellement été récompensée par la "barre verte" (mais la "barre verte" semble disparaître bientôt).

La gestion

Lorsque vous utilisez LE, le travail que vous effectuez consiste à mettre en place l'automatisation nécessaire (dans ce contexte, pour prouver le contrôle de domaine). La quantité de travail dépendra de votre environnement.

Lors de l'achat d'un certificat, le niveau DV/OV/EV définira la quantité de travail manuel qui sera nécessaire pour obtenir le certificat. Pour DV, cela revient généralement à passer par un assistant en train de payer et de copier/coller quelque chose ou de cliquer sur quelque chose, pour OV et EV, vous pouvez à peu près compter avoir besoin d'être contacté séparément pour faire des étapes supplémentaires pour confirmer votre identité.

Impression de l'utilisateur final

Les utilisateurs finaux reconnaissent probablement la "barre verte" EV actuelle (qui disparaît), à part le fait qu'ils n'ont pas tendance à regarder le contenu du certificat.
Théoriquement, cependant, il est nettement plus utile avec un certificat qui énonce des informations sur l'entité contrôlante. Mais les navigateurs (ou autres applications clientes) doivent commencer à afficher cela de manière utile avant que cela n'ait un effet pour l'utilisateur type.

Installation

Sécurité

Il est possible de faire des choses incorrectement de manière à exposer des clés privées ou similaires. Avec LE, l'outillage fourni est configuré autour de pratiques raisonnables.
Avec une personne qui sait ce qu'elle fait, les étapes manuelles peuvent évidemment également être effectuées en toute sécurité.

La gestion

LE est très destiné à automatiser tous les processus, leur service est entièrement basé sur l'API et la courte durée de vie reflète également la façon dont tout est centré sur l'automatisation.

Lors de l'achat d'un certificat, même avec une autorité de certification qui fournit des API à des clients réguliers (ce n'est pas vraiment la norme à ce stade), il sera difficile d'automatiser correctement autre chose que DV et avec DV, vous payez essentiellement la même chose que LE.
Si vous optez pour des niveaux OV ou EV, vous ne pouvez probablement automatiser que partiellement le processus.

Impression de l'utilisateur final

Si l'installation se fait correctement, l'utilisateur final ne saura évidemment pas comment cela s'est fait. Les chances de gâcher les choses (par exemple, oublier de renouveler ou de faire une installation incorrecte lors du renouvellement) sont moindres avec un processus automatisé.

Global

Les moyens traditionnels d'achat de certificats sont particulièrement utiles si vous souhaitez des certificats OV/EV, n'automatisez pas la gestion des certificats ou si vous souhaitez que les certificats soient utilisés dans un autre contexte que HTTPS.

126
Håkan Lindqvist

D'un point de vue purement technique:

  • Le fait que les certificats ne sont valables que 3 mois. Peut être gênant à entretenir en fonction de vos procédures de gestion du changement et de votre infrastructure.
  • Le but des certificats Let's Encrypt est limité. Vous ne pouvez pas les utiliser pour votre courrier électronique, la signature de code ou l'horodatage.
    Vérifier avec: openssl x509 -in cert.pem -noout -text

    Utilisation de la clé étendue X509v3:
    Authentification du serveur Web TLS, Authentification du client Web TLS

Du point de vue de l'utilisateur final:

76
HBruijn

J'aimerais offrir quelques contre-points pour les arguments utilisés contre Let's Encrypt ici.

Durée de vie courte

Oui, ils ont une courte durée de vie comme expliqué dans la FAQ: https://letsencrypt.org/2015/11/09/why-90-days.html Pour citer la page:

  1. Ils limitent les dommages causés par les compromis clés et les erreurs de délivrance. Les clés volées et les certificats délivrés à tort sont valables pour une période plus courte.

  2. Ils encouragent l'automatisation, ce qui est absolument essentiel pour la facilité d'utilisation. Si nous allons déplacer l'intégralité du Web vers HTTPS, nous ne pouvons pas continuer à attendre des administrateurs système qu'ils gèrent manuellement les renouvellements. Une fois l'émission et le renouvellement automatisés, des durées de vie plus courtes ne seront pas moins pratiques que les plus longues.

Manque d'EV

Il n'y a aucun plan pour le support EV. Le raisonnement (de https://community.letsencrypt.org/t/plans-for-extended-validation/409 ) est:

Nous nous attendons à ce que Let’s Encrypt ne prenne pas en charge EV, car le processus EV exigera toujours un effort humain, ce qui nécessitera de payer quelqu'un. Notre modèle consiste à émettre des certificats gratuitement, ce qui nécessite une automatisation de niveau qui ne semble pas compatible avec EV.

De plus, certains croient que EV est nuisible, comme ce blog ( https://stripe.ian.sh/ ):

James Burton, par exemple, a récemment obtenu un certificat EV pour son entreprise "Identity Verified". Malheureusement, les utilisateurs ne sont tout simplement pas équipés pour gérer les nuances de ces entités, ce qui crée un vecteur important de phishing.

Sslstrip en est un exemple classique dans le monde réel. Les sites homographes avec des certificats achetés légitimement sont une attaque réelle pour laquelle EV ne fournit pas actuellement une défense suffisante.

30
user483794

Il y a deux groupes d'inconvénients à considérer.

1. Inconvénients de l'utilisation du service Let's Encrypt

Let's Encrypt requiert que le nom exact, ou le (sous-) domaine si vous demandez un caractère générique, existe dans le DNS Internet public. Même si vous prouvez le contrôle de example.com, Let's Encrypt ne vous délivrera pas de certificats pour some.other.name.in.example.com sans voir cela dans le DNS public. Les machines nommées n'ont pas besoin d'avoir des enregistrements d'adresses publiques, elles peuvent être protégées par un pare-feu ou même physiquement déconnectées, mais le nom DNS public doit exister.

Encryptons la durée de vie des certificats de 90 jours, ce qui signifie que vous devez automatiser car personne n'a le temps pour cela. C'est en fait l'intention du service: amener les gens à automatiser ce travail essentiel plutôt que de le faire de façon perverse manuellement tout en automatisant de nombreuses tâches plus difficiles. Mais si vous ne pouvez pas automatiser pour une raison quelconque, c'est négatif - si vous avez des outils, des appliances ou tout ce qui bloque l'automatisation, considérez tous les coûts de certification SSL commerciaux comme faisant partie du coût continu de ces outils/appliances/quoi que ce soit dans la planification des coûts. Compenser au contraire les économies liées à la non-nécessité d'acheter des certificats commerciaux dans la tarification des nouveaux outils/appareils/etcetera qui automatisent cela (avec Let's Encrypt ou non)

L'automatisation de la preuve de contrôle Let's Encrypt peut ne pas convenir aux règles de votre organisation. Par exemple, si vous avez des employés qui sont autorisés à reconfigurer Apache mais ne devraient pas obtenir de certificats SSL pour les noms de domaine de l'entreprise, alors Let's Encrypt ne convient pas. Notez que dans ce cas, tout simplement ne pas les utiliser est la mauvaise chose (TM), vous devez utiliser CAA pour désactiver explicitement Let's Encrypt pour vos domaines.

Si la politique de Let's Encrypt vous refuse, la seule "cour d'appel" est de demander dans ses forums publics et espère qu'un de ses collaborateurs pourra proposer une voie à suivre. Cela peut se produire si, par exemple, votre site a un nom DNS que leurs systèmes décident est "confusément similaire" à certaines propriétés célèbres comme les grandes banques ou Google. Pour des raisons raisonnables, les politiques exactes de chaque autorité de certification publique à cet égard ne sont pas soumises à un examen public, vous pouvez donc vous rendre compte que vous ne pouvez pas avoir de certificat Let's Encrypt lorsque vous en faites la demande et obtenir une réponse "La politique interdit ...".

2. Inconvénients d'un certificat Let's Encrypt lui-même

Aujourd'hui, les principaux navigateurs Web font confiance aux certificats Let's Encrypt via ISRG (l'organisme de bienfaisance fournissant le service Let's Encrypt), mais les systèmes plus anciens font confiance à Let's Encrypt via IdenTrust, une autorité de certification relativement obscure qui contrôle "DST Root CA X3". Cela fait le travail pour la plupart des gens, mais ce n'est pas la racine la plus largement reconnue au monde. Par exemple, la console Nintendo WiiU abandonnée avait un navigateur Web, Nintendo ne livrera évidemment pas de mises à jour pour WiiU et donc ce navigateur est abandonné, il ne fait pas confiance à Let's Encrypt.

Let's Encrypt émet uniquement des certificats pour les serveurs Web PKI - avec des noms Internet qui utilisent le protocole SSL/TLS. C'est donc le Web, évidemment, et votre IMAP, SMTP, certains types de serveurs VPN, des dizaines de choses, mais pas tout. En particulier, Let's Encrypt n'offre aucun certificat pour S/MIME (un moyen de crypter les e-mails au repos, plutôt que lorsqu'ils sont en transit) ni pour la signature de code ou la signature de documents. Si vous voulez un "guichet unique" pour les certificats, cela peut être une raison suffisante pour ne pas utiliser Let's Encrypt.

Même dans l'ICP Web, Let's Encrypt propose uniquement des certificats "DV", ce qui signifie que les détails sur vous-même ou votre organisation autres que les noms de domaine complets ne sont pas mentionnés dans le certificat. Même si vous les écrivez dans un CSR, ils sont simplement jetés. Cela peut être un bloqueur pour certaines applications spécialisées.

Let's Encrypt automation signifie que vous êtes contraint exactement par ce que l'automatisation permet même s'il n'y a pas d'autres raisons pour lesquelles vous ne pouvez pas avoir quelque chose. De nouveaux types de clés publiques, de nouvelles extensions X.509 et d'autres ajouts doivent être explicitement activés par Let's Encrypt sur leur propre calendrier, et bien sûr, vous ne pouvez pas simplement proposer de payer un supplément pour obtenir les fonctionnalités que vous souhaitez, bien que les dons soient les bienvenus.

Néanmoins, pour presque tout le monde, presque toujours, Let's Encrypt est un bon premier choix pour mettre des certificats sur vos serveurs TLS de manière à ne pas oublier. Commencer avec l'hypothèse que vous utiliserez Let's Encrypt est une façon raisonnable d'approcher cette décision.

6
tialaramex

À moins que vous n'ayez besoin d'un certificat pour autre chose que web , il n'y a pas réel inconvénients, mais sûrement perç ceux. Bien que les problèmes soient uniquement perçus, en tant que propriétaire d'un site Web, vous n'avez peut-être pas d'autre choix que de les résoudre (si l'intérêt commercial interdit de montrer le majeur).

Le plus gros inconvénient est, pour le moment, que votre site apparaîtra comme quelque peu inférieur, peut-être dangereux car il n'a pas le badge vert Nice que certains autres sites ont. Que signifie ce badge? Rien, vraiment. Mais cela suggère que votre site est "sécurisé" (certains navigateurs utilisent même ce mot exact). Hélas, les utilisateurs sont des gens et les gens sont stupides. L'un ou l'autre considérera votre site comme non fiable (sans en comprendre les implications) simplement parce que le navigateur ne dit pas qu'il est sécurisé.

Si ignorer ces clients/visiteurs est une possibilité valable, pas de problème. Si vous ne pouvez pas vous le permettre sur le plan commercial, vous devrez dépenser de l'argent. Aucune autre option.

L'autre problème perçu est celui de la durée de vie du certificat. Mais c'est en fait un avantage, pas un inconvénient. Une validité plus courte signifie que les certificats doivent être mis à jour plus souvent, côté serveur et côté client, bien.
Comme pour le côté serveur, cela se produit avec un travail cron, donc c'est en fait moins de tracas et plus fiable que d'habitude. Aucun moyen d'oublier, aucun moyen d'être en retard, aucun moyen de faire accidentellement quelque chose de mal, pas besoin de se connecter avec un compte administratif (... plus d'une fois). Côté client, alors quoi. Les navigateurs mettent à jour les certificats tout le temps, ce n'est pas grave. L'utilisateur ne sait même pas que cela se produit. Il y a très légèrement plus de trafic lors de la mise à jour tous les 3 mois au lieu de tous les 2 ans, mais sérieusement ... que n'est pas un problème.

5
Damon

J'en ajouterai un qui a forcé mon employeur à s'éloigner en partie de Lets Encrypt: la limitation du taux d'API. En raison de la courte durée de vie et du manque de prise en charge des caractères génériques, il est très facile de se rapprocher des limites de taux pendant les opérations automatisées normales (renouvellement automatique, etc.). Essayer d'ajouter un nouveau sous-domaine peut vous pousser au-dessus de la limite de taux, et LE n'a aucun moyen de remplacer manuellement la limite une fois atteinte. Si vous ne sauvegardez pas les anciens certificats (qui le ferait dans un environnement de microservices de type cloud automatisé comme le prévoit LE?), Tous les sites concernés se déconnectent car LE ne réémettra pas les certificats.

Lorsque nous avons réalisé ce qui s'est passé, il y a eu un moment de "oh $ #! #" Suivi d'une demande d'urgence de certificat commercial juste pour remettre les sites de production en ligne. Un avec une durée de vie d'un an plus raisonnable. Jusqu'à ce que LE implémente un support générique approprié (et même alors), nous allons être très méfiants vis-à-vis de leurs offres.

Tl; dr: LE wildcard + Les limites de l'API rendent la gestion de quelque chose de plus complexe que "Ma page d'accueil personnelle" inattendue, et promeuvent de mauvaises pratiques de sécurité en cours de route.

5
madscientist159