GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Let’s Encrypt SSL mit Nginx unter Ubuntu 16.04 LTS

In diesem Tutorial zeigen wir Ihnen, wie Sie Let’s Encrypt SSL mit Nginx auf Ubuntu 16.04 LTS installieren. Für diejenigen unter Ihnen, die es nicht wussten, LetsEncrypt ist eine kostenlose offene Zertifizierungsstelle (CA ), das kostenlose Zertifikate für Websites und andere Dienste bereitstellt. Der Dienst wird von der Electronic Frontier Foundation, Mozilla, Cisco Systems und Akamai unterstützt. Leider haben LetsEncrypt.org-Zertifikate derzeit eine Lebensdauer von 3 Monaten. Dies bedeutet, dass Sie dies tun müssen Erneuern Sie Ihr Zertifikat vorerst vierteljährlich.

Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen die schrittweise Installation von Let’s Encrypt SSL with Nginx auf einem Ubuntu 16.04 LTS (Xenial Xerus) Server.

Voraussetzungen

  • Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Ubuntu 16.04 LTS (Xenial Xerus).
  • Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
  • SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
  • Ein non-root sudo user oder Zugriff auf den root user . Wir empfehlen, als non-root sudo user zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.

Installieren Sie Let’s Encrypt SSL mit Nginx auf Ubuntu 16.04 LTS

Schritt 1. Stellen Sie zunächst sicher, dass alle Ihre Systempakete auf dem neuesten Stand sind, indem Sie den folgenden apt-get ausführen Befehle im Terminal.

sudo apt-get update
sudo apt-get upgrade

Schritt 2. Installieren von Let’s Encrypt SSL auf Ubuntu 16.04.

Der erste Schritt ist die Installation von certbot, dem Software-Client, der fast alles im Prozess automatisiert:

add-apt-repository ppa:certbot/certbot
apt-get update
apt-get install certbot

Außerdem muss Nginx installiert und ausgeführt werden. Wenn Sie Zertifikate zu einem zuvor konfigurierten Webhost hinzufügen, wäre dies natürlich bereits installiert:

apt-get install nginx
systemctl start nginx

Der erste Schritt zur Installation von let's encrypt SSL unter Ubuntu Linux besteht darin, eine einfache Konfiguration in Ihrer Nginx-Serverblockkonfiguration hinzuzufügen. Fügen Sie diese Zeile zu Ihrer Serverblockkonfiguration hinzu:

location ~ /.well-known {
  allow all;
  }

Speichern und beenden, um die Änderungen zu übernehmen:

### nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Starte Nginx neu:

systemctl restart nginx

Ein Zertifikat mit Certbot erhalten:

Führen Sie den Befehl wie unten gezeigt aus, ersetzen Sie „idroot.us“ durch Ihren echten Domänennamen und /var/www/idroot.us durch Ihren echten Webroot-Pfad:

certbot certonly -a webroot --webroot-path=/var/www/idroot.us -d idroot.us -d www.idroot.us

Ergebnis:

[[email protected]:~]certbot certonly -a webroot --webroot-path=/var/www/idroot.us -d idroot.us -d www.idroot.us
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for idroot.us
Using the webroot path /var/www/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0001_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0001_csr-certbot.pem
IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/idroot.us/fullchain.pem. Your cert
   will expire on 2017-07-16. To obtain a new or tweaked version of
   this certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le
[[email protected]:~]

Schritt 3. Konfigurieren Sie SSL/TLS auf dem NGINX-Webserver.

Bearbeiten Sie zuerst die Serverblockdatei, die Sie während der Konfiguration über Certbot angegeben haben, und fügen Sie diese drei Anweisungen hinzu:

listen 443 ssl http2;
ssl_certificate /etc/letsencrypt/live/idroot.us/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/idroot.us/privkey.pem;

Die vollständige Konfiguration des Nginx-Serverblocks könnte wie folgt aussehen:

server {
     listen 80;
     server_name idroot.us www.idroot.us;
     rewrite ^(.*) https://idroot.us$1 permanent;
}
server {
     access_log off;
     log_not_found off;
     error_log  logs/idroot.us-error_log warn;

    server_name  idroot.us; 
    root   /var/www/idroot.us;
    index  index.php index.html index.htm;

    listen 443 ssl http2;
    ssl_certificate /etc/letsencrypt/live/idroot.us/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/idroot.us/privkey.pem;

  ## Stuff required by certbot
     location ~ /.well-known {
     allow all;
     }

  ## SSL
   ssl_session_cache shared:SSL:20m;
   ssl_session_timeout 10m;

   ssl_prefer_server_ciphers On;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

   ssl_stapling on;
   ssl_stapling_verify on;
   resolver 8.8.8.8 8.8.4.4 valid=300s;
   resolver_timeout 10s;

   access_log /var/www/idroot.us/logs/access.log;
   error_log /var/www/idroot.us/logs/error.log;

   # php-script handler
   location ~ \.php$ {
      fastcgi_index index.php;
      fastcgi_pass 127.0.0.1:9000;       fastcgi_read_timeout 150;
      root    /var/www/idroid.us/public_html;
      fastcgi_param SCRIPT_FILENAME /var/www/idroot.us$fastcgi_script_name;
      include /etc/nginx/fastcgi_params;
   }
 location  ~ /\.ht {
               deny  all;
           }
    }

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Schritt 5. Richten Sie die automatische SSL-Verlängerung von Let’s Encrypt ein.

Wir werden einen Cronjob hinzufügen, um den Erneuerungsbefehl jede Woche auszuführen, führen Sie diesen Befehl aus:

export VISUAL=nano; crontab -e

Fügen Sie die folgenden Zeilen ein:

01 1 * * 0 /usr/bin/certbot renew >> /var/log/ssl-renew.log 
06 1 * * 0 /usr/bin/systemctl nginx reload

Speichern und Verlassen der Crontab-Tabelle.

Dadurch wird ein neuer Cron-Job erstellt, der jeden Sonntag um 01:00 Uhr ausgeführt wird, und dann wird der Nginx-Webserver neu geladen, um die Änderungen zu übernehmen. Die Ausgabe wird sein eingeloggt in /var/log/ssl-renew.log Datei für weitere Analysen, falls erforderlich.

Herzlichen Glückwunsch! Sie haben Let's Encrypt erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von Let's Encrypt SSL auf einem Ubuntu 16.04 LTS-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, das offizielle Let's Encrypt zu lesen Webseite.


Ubuntu
  1. So installieren Sie Nextcloud mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04 LTS

  2. So installieren Sie Magento 2 mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04 LTS

  3. So installieren Sie Seafile mit Nginx unter Ubuntu 20.04 LTS

  4. So stellen Sie Modsecurity mit Nginx auf Ubuntu 20.04 LTS bereit

  5. So installieren Sie Let’s Encrypt SSL auf Ubuntu 18.04 mit Nginx

So installieren Sie Nginx mit Let’s Encrypt TLS/SSL unter Ubuntu 20.04

So installieren Sie Let’s Encrypt SSL mit Nginx unter CentOS 7

So installieren Sie Let’s Encrypt SSL für Nginx unter Ubuntu 18.04 LTS

So installieren Sie phpMyAdmin mit Nginx unter Ubuntu 20.04 LTS

So installieren Sie Nginx mit Let’s Encrypt SSL unter Ubuntu 20.04 LTS

So installieren Sie Apache mit Let’s Encrypt SSL unter Ubuntu 20.04 LTS