I would like to use letsencrypt with linodes node balancer. What I need to do is generate keys for my domain and copy and paste them into SSL Settings part. The problem is I can’t generate it on a node balancer since I don’t have SSH access to it.
In this case, you wouldn’t generate the cert on the NodeBalancer. You can use any Linode (or another server) to generate everything. Once complete, you would then save the certs into the NodeBalancer configuration page.
Not certain if you can do it with the linode loadbalancers (not used them) but I’ve got it working with the webroot plugin. I’ve got each http domain configured to proxy all requests starting with /.well-known to a common server/directory - which happens to be the one running the LE client.
That way when I request the cert it then works & all I have to do is copy the certs to the end apache’s - in this instance it would be the loadbalancer.
You can run the client anywhere you like, as long as you’re able to serve challenge files on the domains you’d like to get a certificate for.
Let’s say you want a certificate for www.example.com and example.com. You would call the client like this: ./letsencrypt-auto certonly -a manual -d example.com -d www.exampe.com --server https://acme-v01.api.letsencrypt.org/directory
At some point the client will pause and ask you to copy the challenge files to /.well-known/acme-challenge/{random_token}. How you do that depends on your setup - if your load balancer sits in front of a couple of apache web servers, for example, you would just copy the files to all of their web roots, so that the load balancer picks them up once the CA server requests them.
Think of it this way: Let’s Encrypt doesn’t care about the load balancer. All it cares about is that a GET request to http://example.com/.well-known/acme-challenge/{random_token} is successful and contains the challenge token. How you achieve that is up to you and depends on your setup.
@vedran, you can generate everything on another machine if that machine is able to run the Let’s Encrypt client. You might want to use the manual plugin, which will give you instructions on what to change on the web server in order to satisfy the CA’s proof-of-domain-control challenges. This makes sense because the changes can’t be made automatically if the Let’s Encrypt client is running on a different machine, but if you have access to both machines, you can make the changes yourself when instructed to.