Next line says it can't find the cert. Double check it's being created by the script and permissions are correct.
Many Linux systems use /etc/resolv.conf to determine which DNS server to use.I can make it use the DNS server on my network?
How do I resolv.conf? When I do nano /etc/resolv.conf it's blank.Many Linux systems use /etc/resolv.conf to determine which DNS server to use.
search mydomain.com
nameserver 208.67.222.222
What I'm working with is a real domain. However, despite several attempts, It can never seem to find the record it's looking for. This system is not facing the open internet. My goal eas to do DNS locally (like it is for literally every single other client on my network), and sort of force it to find the right record by manually pointing it to the internal IP of my DNS server.In order for the dns-01 to work, letsencrypt gives you a text based token that you must add to the zone file on your dns server. Letsencrypt then makes a request to lookup the dns record for the domain you are trying to obtain the certificate for.
If it see the token you have put there, then it knows you are the valid owner/controller of that domain.
Dehydrated can do this process automatically, but that generally requires you to write what is know as a dns-hook script. This script knows how to access your dns to update the zone file and how to get the dns server to publish the changes.
So:
1. request a certificate and get the token
2. update your dns zone file with the token
3. tell lentencrypt you have done it
4. letsencrypt checks the token
5. if it is good certificate is issued
6. edit dns zone file and remove token.
Needless to say this needs to be a real domain and a real dns server on the internet.
PS: resolv.conf could look something like this:
Code:search mydomain.com nameserver 208.67.222.222
Ah. okay. is there a way I could make nginx run without requiring the whole lets encrypt thing? I'm not too concerned about non-https traffic accessing the web ui of the demo instance that I'm trying.Unless Letsencrypt can access your DNS records via a public DNS server like 8.8.8.8, dns-01 validation is not going to work.
I use the term zone file because the most popular dns server on the internet is called bind, and bind stores it's configuration in zone files that are located in /var.cache/bind. These are just pure text files, nothing special, and very easy for something like sed (stream editor) to add a token to the file (and also remove it again) whilst also updating the serial number in the file.
#ssl on;
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!ADH:!MD5:!aNULL;
Am I doing something wrong?Yes, by default, nginx has a certificate key pair called snakeoil which are merely self signed certificates, nothing wrong with using them.
Code:#ssl on; ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!ADH:!MD5:!aNULL;
server {
listen 443;
server_name fusionpbx;
ssl on;
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
I do indeed have a very steep learning curve since I don't know anything about Linux. I got used to freepbx, and I've decided to go to something a bit more difficult, while completely underestimating the learning curve and installation and management process. I do thank you for all of the help that you've generously provided.They are the lines you would have in the nginx site configuration file:
/etc/nginx/sites-available/fusionpbx
Code:server { listen 443; server_name fusionpbx; ssl on; ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
I think you have a very steep learning curve ahead of you
You are showing the section for the http server on port 80
what about the https section for port 443 (listen 443)?
You can find a reference file of what the basic fusionpbx nginx site file here:
https://github.com/fusionpbx/fusionpbx-install.sh/blob/master/debian/resources/nginx/fusionpbx