11 ms·
Running the Let's Encrypt Beta
- lucideer 11y agoThis looks like the same thing that was announced over a week ago? What's changed?
- jamies888888 11y agoThere's a beta client now.
- ddworken 11y agoThey have started sending out invites to people who wanted to join their beta program. So now they are actually issuing certs.
- lucideer 11y agoNo that's what I meant. I haven't signed up for the beta myself but there's been discussion of others testing the client on Discourse for a good while now. Edit: ah ddworken clarified
- scrollaway 11y agoThey're sending invites to beta participants. I renewed the cert on my personal site yesterday with LE: https://leclan.ch/ https://leclan.ch/
- mafro 11y agoIt seems a lot emphasis with Let's Encrypt is on the automated cert registration/installation tools. Am I missing something when all I really want are the free certs?
- Natanael_L 11y agoA big part of the reason is that free certs exists already (startssl), but it takes A LOT extra work to set it up. The whole point here is that eventually the deployment tool can be integrated in existing server software, such that when you set up your server on your domain, requesting a certificate can be an automatic step that the sysadmin and web developer don't even have to think about. This makes sure encryption will eventually be deployed by default everywhere, because it is literally easier than not to.
- drdaeman 11y ago> free certs exists already (startssl) Nitpick: not for businesses. If you're asking for a certificate for anything that they may suspect has slight relation to any commercial activity, the request will be denied. It may be accepted by chance, but that's unreliable. Companies who don't want to pay currently have only single option - WoSign, and they had started to give out free certificates relatively recently (I heard of them only this February)
- codingminds 11y agoWe use StartSSL for many business domains and never had any problems
- nailer 11y agoThe main thing is your use is outside StartCom's policy. See https://www.startssl.com/policy.pdf https://www.startssl.com/policy.pdf > Class 1 certificates are limited to client and server certificates, whereas the later is restricted in its usage for non-commercial purpose only. Subscribers MUST upgrade to Class 2 or higher level for any domain and site of commercial nature, when using high-profile brands and names or if involved in obtaining or relaying sensitive information such as health records, financial details, personal information etc. StartSSL will make you pay to revoke a certificate if you need to.
- codingminds 11y agoGood point. Interesting, that they never complained about it when we had to resolve some other issues with the cert master
- bryanlarsen 11y agoThey have some sort of regex they use to flag business domains. For example, if your domain contains the word 'billing', then they won't give you a cert.
- SG- 11y ago
- motoboi 11y agoYes. There are free certs already. Like, for ages. Startssl is one of the CAs issuing them.
- wwarren 11y agoOnly free for personal use: https://www.startssl.com/?app=25#2 https://www.startssl.com/?app=25#2 and https://www.startssl.com/?app=40 https://www.startssl.com/?app=40
- teddyh 11y agoWoSign reportedly issues free certs without restrictions: https://buy.wosign.com/free/ https://buy.wosign.com/free/
- sschueller 11y agoThe root cert they use for the free certificates is not in my Browser (Chrome 46.0.2490.80 )
- pdkl95 11y ago> There are free certs already. Not anywhere that I can find. Let's Encrypt is very important or full participation on the web isn't available to the poor. The internet should be fully usable by anybody with an IP. Adding the cost of a PKI cert is a barrier to entry. > Startssl ...won't give me a certificate. (they have in the past, I don't know why they changed their mind) This assumption that a single private business providing free certificates (but mind the fine print) is somehow an a solution to the SSL problem is poor engineering[1]. Unfortunately, this kind of attitude has become very common in recent years. [1] You should always have a second source for anything critical. A design that is dependent on a single point of failure that you don't control is a design that is guaranteed to fail unpredictably.
- mafro 11y agoNot convinced about this mob: https://auth.startssl.com/ https://auth.startssl.com/
- MatthewWilkes 11y agoYep, you're probably missing the 3 month validity period.
- StavrosK 11y agoFor which?
- detaro 11y agoLet's encrypt certificates are valid for only 90 days, and I guess the argument is that you want automatic tooling to take care of renewal if it happens so often.
- lucb1e 11y agoThat might actually be a good thing, though. Currently I have to do it for a couple of domains every year. By forcing me to automate it, it takes me more time once, but afterwards I don't have to look at it anymore at all.
- StavrosK 11y agoUgh, really? I was planning on only using the tools to write out the initial certificate file, as I don't want too much running on my servers. This has certainly put a damper on my excitement about Let's Encrypt.
- detaro 11y agoFrom a quick look at the protocol, it shouldn't be an issue to run the ACME client on one host and scp CSRs from your servers to it, hand them to lets encrypt, and move the results back. So yes, you have to touch or run it every 2-3 months, but it doesn't have to run on all your servers.
- StavrosK 11y agoI'm more wondering if I can cron it (without sudo), and not have it run as a daemon. Then, once every two weeks or so, it can just refresh the cert using the csr I generated before. It should be pretty easy to do, I'm just not familiar with the clients at this point.
- michaelt 11y agoThere's a certain amount of back-and-forth involved in getting a domain-validated certificate. I say to the registrar "I want a cert for www.google.com" and they say back "Prove you control www.google.com by putting this file at www.google.com/yes-give-the-cert-to-michaelt.txt" then the registrar retrieves that file. You also have to generate the private key in the first place, get the URL in the right field in the CSR, send the right file to the registrar (don't accidentally send them the private key!), convert between the dozens of file formats (.pem .crt .cer .key .der .p7b .p7c .pfx .p12 .jks), add the right intermediate certificates, put the file in the right place, make sensible cipher selections, set your file permissions right, make a secure backup of your key, check it works in several browsers and OSes - and repeat the whole process in a year or two when that certificate expires. In the all-encrypted http2 world of the future, it would be better if the web server just took care of all that the first time it was started - just like a Linux server automatically generates a SSH private key at first boot.
- acaloiar 11y agoOne small note on HTTP/2: The TLS requirement never reached consensus in the working group. HTTP/2 implementations are free to add or remove the requirement.
- vdaniuk 11y agoIt seems that all major browsers require or will require TLS for HTTP/2, though.
- dfox 11y agoAnd another small note in regards to CSR: typical CA today uses the CSR only to get public key you want to have signed and replaces everything else with whatever they deem correct.
- scintill76 11y agoDid a CA once accidentally sign a raw CSR that requested to itself become a CA? It seems like I remember something like this, but I couldn't find evidence. Anyway, that's one reason for the CA to be very careful what values it pulls out of the CSR.
- 27182818284 11y ago>Am I missing something when all I really want are the free certs? Yes, that setting up a respectable certificate must be easy for the masses in order for their to be mass adoption.
- diafygi 11y agoIf you just want a free cert, you can use my letsencrypt-nosudo client[1], which doesn't ask for your private key or sudo access or have to be run on your server (except for one copy-paste line you can inspect). The official letsencrypt client is geared much more towards someone who doesn't understand how TLS certs work. For people who know what they're doing, you can use lightweight clients like mine to just get your free cert. [1]: https://github.com/diafygi/letsencrypt-nosudo https://github.com/diafygi/letsencrypt-nosudo
- mtgx 11y agoIs this something they can implement themselves? https://github.com/diafygi/letsencrypt-nosudo https://github.com/diafygi/letsencrypt-nosudo
- tokenizerrr 11y agoThe official client does not have to be ran as root. You can do the manual auth mechanism which just gives you the certificates. The authentication process against letsencrypt will give you a file to put in your webroot.
- diafygi 11y agoDoesn't the official client need to have access to your private key?
- gingerlime 11y ago> Now you've still got a hurdle to overcome. In order for nginx to serve out the right certificate chain, you'll need to bundle the intermediary. So you should wget that from The official Certificates Download page. A small suggestion - instead of wget-ing the certificate chain from the page, I would use the cert-chain-resolver tool[0]. It's super simple, but highly effective bash script that wraps around OpenSSL / wget and does all this for you. [0] https://github.com/zakjan/cert-chain-resolver https://github.com/zakjan/cert-chain-resolver
- deleted 11y ago[deleted]
- IceyEC 11y agoIt's bash so pretty easy to audit
- coherentpony 11y agoThe first thing I notice is a missing set -eu set -o pipefail at the top of the script, which is equivalent to ON ERROR RESUME NEXT in BASIC.
- voltagex_ 11y agohttps://github.com/zakjan/cert-chain-resolver/issues https://github.com/zakjan/cert-chain-resolver/issues - add an issue?
- leni536 11y agoNote that "set -e" doesn't work in subshells so you have to be extremely careful if you make complex subshell commands or write set -e in every subshell too.
- icebraining 11y agoApparently, "pipefail" is a bashism, you can't use it on portable scripts.
- noja 11y agoDon't touch my OS! If you want to install some packages, tell me to install them (or ask me!). I don't like this script so far.
- aroch 11y agoYou ran a setup script, as root, without looking at it and are upset it installed things? Shouldn't you be more upset that you didn't take the time to look at what it does before running it as root?
- noja 11y agoIt's standard behaviour for a script to exit with an error if it can't find the dependencies it needs to run.
- aroch 11y agoletsencrypt-auto is specifically there to setup and update the entire environment for letsencrypt to work. If you don't run it as root, you get prompted to elevate. If you're at all concerned about what setup its doing, the code is eminently readable and a few seconds of perusal would direct you to the bootstrapping scripts (https://github.com/letsencrypt/letsencrypt/tree/master/bootstrap https://github.com/letsencrypt/letsencrypt/tree/master/boots...) Running letsencrypt-auto is no different than running one of the curl | sh installers; they serve the same purpose. Getting you up and running under the assumption that you may be missing bits and pieces.
- noja 11y agoI'm not concerned about what it is doing, I am complaining that the script works differently to what I expect.
- bryanlarsen 11y agoThat's the whole point of the article -- from what I understand the standard letsencrypt installer makes changes; this script is easier to inspect & modify.
- meapix 11y agoWhat kind of insurance does letsencrypt provide in case of data breach? isn't that the whole point of certificate authority?
- pmlnr 11y agoThat should be the job of an insurance company, not a certificate authority. Also, an https cert has nothing to do with data breaches :)
- peterwwillis 11y agoBreach of the CA, not the web host. If the CA is breached there is no point to the encryption.
- charlesbarbier 11y agoIt wouldn't break encryption because you don't give away the private key when requesting a certificate from a CA. It would definitively compromise the identity/trust part of it.
- peterwwillis 11y agoLet me rephrase with a quote from the public-key cryptography wiki: "An attacker who could subvert any single one of those certificate authorities into issuing a certificate for a bogus public key could then mount a "man-in-the-middle" attack as easily as if the certificate scheme were not used at all."
- vtlynch 11y agoNo that is not the entire point of a CA. The insurance that the big commercial CAs offer now is a farce. No end user has actually received the money for two reasons: 1. breaches that qualify are often written off by the underwriter as "gross negligence" or other such behavior which basically allows them to nullify the contracts and pay nothing 2. situations where the breach could be covered by the terms of the insurance are incredibly rare. Most situations where SSL compromise is at risk would not be covered. The insurance only helps you if the CA causes you damages through their own actions. In one of the most famous cases, the breach of the CA DigiNotar, the underwriter said that DigiNotar misrepresented themselves and invalidated all their policies.
- tenfingers 11y ago> With Automatic Web Server Configuration > > This will automatically configure Apache and Nginx servers > with your new certificate. I wished they wouldn't do that at all. There's a world of hurt in trying to pretend to configure the cert on the current system. That's simply never going to work reliably. Let the individual distributions do their job by providing just the rest. The fact that it's default is even more worrying.
- ludbb 11y agoI can't wait to see how this industry will change after LE is fully running -- this is amazing. Are there any stats about the different cert types, specially about their deployment count and usage over time? One thing I don't understand about the guarantees given by CAs is the one about the warranty, like the "$1,750,000 Warranty" from Comodo. How exactly can they provide that? Or is that some sort of MUST have if you want to partner with an insurance company?
- vtlynch 11y agoWhat types of stats are you looking for? "Different types" meaning different CAs? The warranty is odd. Its required to provide a warranty in certain situations by the CA/B Forum (industry standards body). This is partially because some countries laws require they be provided for the class of products/services that SSL falls under, so requiring it from everyone sort of levels the playing field. But the large CAs (Symantec, Comodo, etc) are big fans regardless. They can advertise this preposterous "warranty" which protects you, and usually the customer does not ask too much about it and just likes the sound of it or assumes it will cover them if they are hacked (which is not what its for). It actually just covers some very small situations where the CA mis-issues your certificate. Some lawyers and experts at TrendMicro and Firefox found that due to how the terms are written there is basically no way the end-user would ever actually see that money. Those insurance warranties have never been used.
- ludbb 11y agoAbout the stats: by "specially about their deployment count and usage over time" I meant the number of certs deployed by cert type (DV, OV, EV) and how has their usage progressed over time? If the second part is not clear, let's say that 5 years ago EV certs represented 2% among issued certs, and today it represents 1.4% -- I'm looking for historic data about this. Thanks about the warranty clarification, so it only protects you if the /CA/ does something bad to you? In that case wouldn't it possible to sue the entity for, possibly, an even larger sum?
- vtlynch 11y ago
- mholt 11y agoLet's Encrypt is already very easy to use, but for those looking for a totally transparent way to use it, keep an eye on Caddy. It's a web server with Let's Encrypt built in to serve HTTPS by default: https://caddyserver.com/blog/lets-encrypt-progress-report https://caddyserver.com/blog/lets-encrypt-progress-report - no extra tools or configuration needed. Just a few details left before it's ready: https://github.com/mholt/caddy/issues/284 https://github.com/mholt/caddy/issues/284
- motoboi 11y agoProbably would be a better ideia, in terms of software reusability and security, to put a lets encrypt module on apache or nginx rather then put an apache or nginx module on lets encrypt.
- andruby 11y agoThis is awesome! Posted it separately as people should really see this. https://news.ycombinator.com/item?id=10458825 https://news.ycombinator.com/item?id=10458825
- runn1ng 11y agoI don't want to sound mean, but that script seems anything but easy to me
- deleted 11y ago[deleted]
- tbrock 11y agoI agree. Why not just have an interface like encrypted = encryption.encrypt(bytes)? Deal with getting a certificate and storing it for me, the reason people don't encrypt everything today is because it's a pain in the ass.
- hsivonen 11y agoWhen should one expect to see an ACME client built into nginx so that you could specify an ACME-enabled CA instead of a key file right in nginx config and have nginx itself do the rest?
- collinmanderson 11y ago"The performance complaint is long debunked" - There are still performance hits. - There are still two additional round trips on the first https connection vs http. That means there are still cases where http is faster than https, even when using spdy/http2. - Also, the initial (before an HSTS header is seen) redirect from http -> https when typing in a domain name adds to the overall first load time. Even after the performance and maintenance issues, we still have the local-development issue (developing on 127.0.0.1). You still need to own a domain name to get a cert from Let's Encrypt. I'm happy Let's Encrypt is making certs easier so we can start focusing on the _next_ hurdles of massive TLS adoption. :)
- TazeTSchnitzel 11y ago> There are still two additional round trips on the first https connection vs http. Not with HSTS preload.
- collinmanderson 11y agoTrue
- pas 11y agoHow. How is that thing still considered a solution? We are talking about Chrome's HSTS preload, right? How come downloading all the Internet's certs with a browser is considered at all? Yes, it's nice, but it's a bigger hack than Win95's GUI on MSDOS.
- toast0 11y agoHSTS preload doesn't reduce the preamble to a TLS connection: You have to send the TLS client hello, wait for the TLS server hello back (1 Round trip), send the handshake finished, wait for the server handshake finished (2nd round trip), before sending application data. TLS 1.3 is supposed to help with that (although I haven't read the spec), but that's probably just bringing it down to one extra round trip in the common case. Add tcp (one round trip), and http (one round trip), and it's four round trips, twice as many as plain http. If you are serving us users on broadband, and you only have servers on one side of the country, half of your users are going to see about 80 ms round trip, so https slows down your first page load by 160 ms, even before you worry about encryption. If you have users around the world, and servers in only one location, you're likely to see many users with 250ms or 300 ms, an very simple https page (short request, short response) is going to take a minimum of 1 second (2 round trips for tls, one for tcp, and one for http), and if your users are on congested mobile networks, ouch.