J'ai payé un certificat SSL de Namecheap, je pense qu'il a été certifié par ComodoSSL. Cela m'a coûté 7 $, il leur a fallu une semaine pour s'activer et je devais le faire moi-même depuis SSH lors de l'édition des fichiers de configuration de mon site.
Ensuite, un ami m'a informé de Let's Encrypt, qui non seulement distribue des certificats SSL gratuits, mais ils peuvent également être installés en exécutant une seule commande.
Je suis sûr qu'il me manque quelque chose ici, mais pourquoi devrais-je payer pour un certificat SSL alors que je peux en installer un facilement, gratuitement, avec le renouvellement automatique configuré?
Réponses:
Pourquoi devrais-je payer pour un certificat SSL?
Pour la plupart des utilisations, il n'y a pas de bonne raison de les payer.
Voir tout en bas pour un résumé des exceptions.
Faisons un pas en arrière et expliquons ce que font les certificats et comment.
Ce que l’on appelle communément "certificats" est constitué de deux éléments liés:
Si vous voulez un certificat pour
yourdomain.com
, vous:yourdomain.com
avec votre clé publique.yourdomain.com
.Ensuite, si Alice visite
yourdomain.com
, son navigateur obtient le certificat de votre serveur Web, ainsi qu'un message signé par votre clé privée. Ensuite, son navigateur vérifie trois choses:yourdomain.com
devrait l'être).yourdomain.com
).La combinaison de ces trois éléments garantit à Alice avec qui elle parle
yourdomain.com
, et non à un imposteur… À condition qu’elle fasse confiance à CrediCorp .(Il y a également une danse crypto vaudou pour transformer cette authenticité en confidentialité.)
Comment ne faire confiance Alice Credicorp?
C'est le vrai noeud ici. En bref, CrediCorp a dit à un moment donné "Hé, nous allons faire des certificats". Après avoir déployé beaucoup d'efforts conformément à de nombreuses règles , ils ont réussi à convaincre certaines personnes que CrediCorp est digne de confiance et qu'elles n'émettront que des certificats correctement.
En particulier, ils ont réussi à convaincre les fabricants de, par exemple, Firefox. En conséquence, CrediCorp est inscrit dans la liste A de Firefox et ses certificats sont approuvés par Firefox par défaut. Alors vraiment, Alice fait confiance à Firefox, que Firefox fait confiance à CrediCorp et que CrediCorp vous a fait confiance (après avoir vérifié) lorsque vous avez affirmé que vous contrôliez
yourdomain.com
. C'est presque comme une chaîne .Mais Firefox ne fait pas seulement confiance à CrediCorp pour l’émission de certificats
yourdomain.com
, il fait confiance aux certificats CrediCorp pour n’importe quel domaine. Et Firefox fait également confiance à ShabbyCorp, pour tous les domaines.Cela a des conséquences. Si quelqu'un parvient à convaincre ShabbyCorp de contrôler
yourdomain.com
(parce que ShabbyCorp n'est pas très complet), il peut alors obtenir un certificat ShabbyCorpyourdomain.com
avec la clé privée correspondante. Et avec ce certificat, ils pourraient emprunter l'identité de votre serveur Web. Après tout, ils ont un certificat (plus la clé) pouryourdomain.com
que cela soit approuvé par Firefox!CrediCorp et ShabbyCorp sont ce qu'on appelle des autorités de certification , ou CA en abrégé. Dans la réalité, ComodoSSL et Let's Encrypt sont des exemples de CA. Mais il y en a beaucoup plus; à ce jour, Firefox fait confiance à 154 autorités de certification .
Whoa. Mais comment cela répond-il à ma question?
Je suis ehm, arriver à ça ...
Voici la chose. Les mécanismes que j'ai décrits ci-dessus s'appliquent à tous les certificats. Si vous avez un certificat correct et fiable pour votre site Web, cela fonctionnera. Il n'y a rien de spécial entre les certificats de marque A et les certificats de marque B; ils sont tous soumis aux mêmes exigences en matière de certification et aux mêmes méthodes cryptographiques.
Et même si vous aimez mieux CrediCorp - parce que vous savez, ils sonnent tellement plus digne de confiance - leur utilisation ne vous aidera pas vraiment. Si un attaquant parvient à convaincre ShabbyCorp de lui attribuer un certificat pour votre site, il peut utiliser ce certificat pour emprunter l'identité de votre site, où que vous vous trouviez.
Tant que Firefox fait confiance à ShabbyCorp, les visiteurs ne verront pas la différence. (Oui, les visiteurs pourraient obtenir le certificat et y creuser pour voir qui l'a délivré. Mais qui le fait?) En ce qui concerne la falsification de certificats, le système tout entier est aussi faible que le plus faible des plus de 150 CA. Pourquoi oui, c'est effrayant, et il est probablement le plus grand de gens critique ont de ce régime tout entier. Pourtant, c'est ce avec quoi nous sommes coincés.
Le fait est que si vous ne faites pas confiance à une autorité de certification pour la délivrance de "bons" certificats, obtenir vos certificats ailleurs ne vous aide pas beaucoup.
Gotcha, tout est également condamné. Aucune mise en garde?
Weeeelllll ...
Commençons par tuer ce que j'ai dit dans la dernière section. De nos jours, il est possible de verrouiller votre domaine uniquement sur les autorités de certification de votre choix à l' aide de DNS-CAA . Supposons que vous fassiez confiance à Comodo et à d’autres autorités de certification, il est possible de demander à toutes les autorités de certification autres que Comodo de ne pas émettre de certificats pour votre domaine. En théorie. (DNS-CAA n'étant pas vérifié par les navigateurs, uniquement par les autorités de certification émettrices. Une autorité de certification compromise peut donc ignorer cette protection.)
Si vous êtes prêt à traverser cette période difficile, la question devient alors: est-ce que Let's Encrypt est réellement moins fiable? Ou moins sécurisé? La fiabilité est difficile, comment le quantifiez-vous? Tout ce que je peux dire, c’est que, selon ma perception , Encrypt n’est pas moins fiable que les autres autorités de certification. En ce qui concerne la sécurité de leurs validations, elles sont très similaires à ce que font les autorités de certification commerciales (pour les certificats DV de toute façon). Voir aussi cette question .
Pour ce que cela vaut: le réseau StackExchange, dont ce site fait partie, utilise actuellement des certificats Let's Encrypt. La plupart des gens ne le remarqueraient jamais, et s'ils le faisaient, je doute sincèrement que cela aurait beaucoup de sens pour eux.
Pour qu'un certificat ait un sens, l'autorité de certification émettrice doit être approuvée par les éditeurs de logiciels , sinon le certificat est inutile. J'ai utilisé Firefox à titre d'exemple, mais vous souhaitez réellement que les versions actuelles et légèrement plus anciennes de Firefox, Chrome, Windows, Mac OS X, iOS et Android fassent confiance à l'autorité de certification. Et les dizaines de plus petits joueurs. Les CA qui valent la peine d'être prises en compte (qui incluent ComodoSSL et Let's Encrypt) sont approuvés par toutes ces entités.
Si une autorité de certification se comporte mal ou se révèle indigne de confiance, elle sera retirée des divers magasins de confiance suffisamment rapidement pour gâcher la journée des détenteurs de certificats. Je connais deux exemples notables: DigiNotar et StartCom / WoSign (consultez les articles, ils fournissent des informations intéressantes sur la dynamique de la confiance!). Donc, si vous pensez que Let's Encrypt va échouer, ou sera abandonné pour une autre raison, ne pas les utiliser vous évitera de vous faire prendre à cette éventualité.
Les certificats utilisent un peu de magie crypto mathématique ; la question est quelle crypto math magie ? Et si c'est de la magie faible? En réalité, il s’agit d’une préoccupation réelle, et les autorités de certification ont également montré qu’elles traînaient sur la modernisation. Heureusement, les éditeurs de navigateurs ont pris le relais en fixant des minimums pour que les certificats soient acceptés. Par exemple, les certificats utilisant RSA-1024 ou SHA-1 sont maintenant rejetés par la plupart des navigateurs. Par conséquent, aucun certificat fonctionnant dans la pratique n'utilise ces crypto primitives déconseillées. Le résultat est qu’il est très difficile pour une autorité de certification (Let's Encrypt incluse) de décevoir davantage sur cette partie.
Auparavant, j'ai plus ou moins dit que tous les certificats sont créés égaux. J'ai menti, ils ne sont pas. En particulier, ce que j'ai discuté jusqu'à présent sont les " certificats validés par le domaine ", qui sont utilisés par la grande majorité des sites Web. Ils fournissent une mesure de certitude que votre navigateur communique réellement avec le domaine indiqué dans la barre d'adresse. Il existe également des certificats "Organisation validée (OV)" et " Validation étendue (EV)", qui nécessitent des contrôles beaucoup plus élaborés de la part des autorités de certification. En particulier, vous ne devriez pouvoir obtenir un certificat EV pour
somebank.com
/ SomeBank Inc., si vous pouvez réellement prouver que vous êtes SomeBank, Inc.Les certificats EV sont beaucoup plus coûteux à obtenir (coût approximatif: des centaines d'EUR / USD par an), et peuvent être récompensés par une barre d'URL verte ou un cadenas dans le navigateur, affichant peut-être "SomeBank, Inc.". ainsi que. Contrairement aux certificats DV, ils permettent également de savoir à qui le site Web pourrait appartenir. L'avantage est qu'ils peuvent sembler plus légitimes. La déception est que les utilisateurs font rarement attention à eux, leur efficacité est donc limitée.
Un attaquant avec un certificat DV falsifié peut toujours emprunter l'identité du site, sans l'indicateur visuel supplémentaire qu'un certificat EV peut offrir, et les utilisateurs ne remarquent généralement pas la distinction. Inversement, il est possible d’ obtenir un certificat EV trompeur pour faciliter l’hameçonnage. En conséquence, Chrome et Firefox laisseront tomber leurs signes visuels aux certificats EV, et certaines personnes croient qu'elles disparaîtront complètement.
Si vous êtes une banque, vous voulez probablement toujours un certificat EV pour le moment. Sinon, pas tellement. Mais si vous avez besoin d' EV, le Crypter Let est pas pour vous parce qu'ils ne proposent pas seulement des certificats EV.
Les certificats ne sont valables que pour un temps limité . Les certificats d'un CA commercial typique ont tendance à être valides pour un an, mais j'ai vu quelque chose de trois mois à trois ans. Les certificats de Let's Encrypt sont valides pendant 90 jours , ce qui est un peu à côté de cette plage. Vous devrez donc les renouveler souvent. Pour les utilisateurs de Let's Encrypt, cette opération est généralement automatisée, de sorte que les certificats sont remplacés tous les 60 jours.
Pouvoir automatiser le renouvellement avec des logiciels largement disponibles est en réalité plus agréable que l'année dernière, mon certificat a expiré? Quelle est ma connexion à la CA? Comment ça marche encore? rituel auquel la plupart des petits sites semblent aboutir dans des CA commerciales.
Auparavant, j’appelais effrayant le fait qu’il y ait tant de CA auxquels nous devons tous faire confiance. Avoir plusieurs CA est également un avantage, en ce sens que le retrait d'un seul de nos magasins de clés de confiance a un impact limité sur les utilisateurs. En particulier, l’expulsion d’une seule autorité de certification n’affectera que les certificats émis par cette autorité de certification. Si tout le monde finit par utiliser une seule autorité de certification (ce que certaines personnes craignent avec Let's Encrypt ), nous y concentrons toute notre confiance et perdons les avantages de cette fragmentation.
Enfin, une autorité de certification payante peut offrir d’ autres avantages , tels que le support commercial ou une garantie SSL d’ un million de dollars . Je crois peu à ces deux aspects, mais ce sont des choses que Encrypt ne propose pas.
Ma tête me fait mal… j'avais une question, je pense?
Utilisez ce avec quoi vous êtes à l'aise! Pour les certificats DV, peu de choses différencient les différentes autorités de certification. J'utilise Let's Encrypt de manière professionnelle et privée, et j'en suis satisfait.
Il n'y a en réalité que quatre raisons potentielles à éviter Let's Encrypt:
Si rien ne vous concerne, n'hésitez pas à ne pas payer vos certificats.
la source
Let's Encrypt est supérieur à bien des égards, y compris ceux que vous avez mentionnés, tels que:
Cependant, il y a quelques inconvénients.
la source
Les certificats LetsEncrypt sont excellents. Je les utilise moi-même au lieu d'acheter des certificats. Il y a quelques inconvénients:
Historiquement, les certificats de sécurité ont toujours coûté quelque chose. D'autres entreprises qui ont offert des certificats gratuits vont et viennent. J'avais l'habitude d'utiliser StartSSL qui offrait un certificat sans domaine unique jusqu'à ce qu'ils fassent des choses louches et que les navigateurs cessent de faire confiance à leurs certificats. LetsEncrypt a moins de limites que les précédents vendeurs de certificats libres et est beaucoup plus automatisé. Il a également de grands partisans tels que EFF, Mozilla, Chrome et Cisco. Voir https://letsencrypt.org/sponsors/ Il semble que le système fonctionne suffisamment bien pour que cela dure depuis des années.
la source
Tout ne peut pas utiliser le renouvellement automatique
CertBot facilite l'utilisation des sites Web ... mais que se passe-t-il si vous utilisez des certificats pour autre chose?
Nous avons un serveur LDAP sur lequel notre site Web s'authentifie. Il fonctionne sur un port sécurisé, mais nécessite un certificat signé pour fonctionner. Je pourrais utiliser un certificat générique gratuit ... mais cela implique de convertir le certificat en PKCS12 tous les 3 mois (les serveurs Web utilisent PEM), puis d'importer le nouveau certificat. Oh, et notre pare-feu réseau utilise également PKCS12. C'est beaucoup de tracas gratuitement.
la source
certbot
/acmetool
/ whathaveyou pour renouveler le certificat, vous pouvez en ajouter une qui appelleopenssl
à effectuer la conversion.La réponse simple à cela est que beaucoup de webmasters ne veulent tout simplement pas faire ces choses qui consomment inutilement leur temps précieux. En cas de letencrypt, il est facile à utiliser et gratuit, mais vous devez vous rappeler et réinstaller le certificat tous les 3 mois. Si vous ne le faites pas ou si vous oubliez tout simplement de le faire, votre site indiquera une erreur 404 à vos visiteurs et aux moteurs de recherche.
la source
acme.sh
pour installer les certificats Let's Encrypt installe également le renouvellement. C'est plus de travail de ne pas le faire.