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

So erstellen Sie lokal vertrauenswürdige SSL-Zertifikate mit mkcert unter Ubuntu 20.04

Mkcert ist ein kostenloses, einfaches und sehr nützliches Tool, mit dem Sie ein lokal vertrauenswürdiges Zertifikat erstellen können, ohne es von der echten CA zu kaufen. Entwickler arbeiten normalerweise auf dem lokalen System und es ist immer unmöglich, das vertrauenswürdige Zertifikat von CA auf localhost zu verwenden. Mit Mkcert können Sie problemlos Ihre eigenen Zertifikate verwalten.

In diesem Beitrag zeigen wir Ihnen, wie Sie mit Mkcert unter Ubuntu 20.04 ein vertrauenswürdiges SSL-Zertifikat für die lokale Entwicklung erstellen.

Voraussetzungen

  • Ein System, auf dem Ubuntu 20.04 Desktop ausgeführt wird.
  • Auf dem Server ist ein Root-Passwort konfiguriert.

Erste Schritte

Aktualisieren Sie zuerst die Systempakete auf die aktualisierte Version, indem Sie den folgenden Befehl ausführen:

apt-get update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

Mkcert installieren

Vor der Installation des Mkcert-Dienstprogramms müssen Sie die erforderlichen Pakete auf Ihrem Server installieren. Sie können es mit dem folgenden Befehl installieren:

apt-get install wget libnss3-tools

Sobald alle Pakete installiert sind, laden Sie die neueste Version von Mkcert von Github herunter.

wget https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-amd64

Verschieben Sie nach dem Herunterladen von Mkcert die heruntergeladene Binärdatei in den Systempfad:

mv mkcert-v1.4.3-linux-amd64 /usr/bin/mkcert

Setzen Sie als Nächstes die Ausführungsberechtigung auf mkcert:

chmod +x /usr/bin/mkcert

Überprüfen Sie als Nächstes die Mkcert-Version mit dem folgenden Befehl:

mkcert --version

Sie sollten die folgende Ausgabe sehen:

v1.4.3

Lokale Zertifizierungsstelle generieren

Führen Sie nun den folgenden Befehl aus, um ein lokales CA-Zertifikat zu generieren:

mkcert -install

Sie sollten die folgende Ausgabe sehen:

Created a new local CA ????
The local CA is now installed in the system trust store! ??
The local CA is now installed in the Firefox and/or Chrome/Chromium trust store (requires browser restart)! ????

Sie können den Pfad des CA-Zertifikats mit dem folgenden Befehl überprüfen:

mkcert -CAROOT

Sie sollten die folgende Ausgabe sehen:

/root/.local/share/mkcert

Generieren Sie ein Zertifikat für eine lokale Website

Als Nächstes können Sie mit dem folgenden Befehl das Zertifikat und die Schlüsseldatei für Ihre lokal gehostete Website generieren:

mkcert app.example.com localhost 127.0.0.1 ::1

Sie sollten die folgende Ausgabe sehen:

Created a new certificate valid for the following names ????
 - "app.example.com"
 - "localhost"
 - "127.0.0.1"
 - "::1"

The certificate is at "./app.example.com+3.pem" and the key at "./app.example.com+3-key.pem" ?

It will expire on 1 November 2023 ????

Konfigurieren Sie Nginx für die Verwendung des generierten Zertifikats

Als nächstes müssen Sie den Nginx-Webserver konfigurieren, um die generierten Zertifikate zu verwenden.

Kopieren Sie zunächst die generierten Zertifikatsdateien in das Verzeichnis /etc/ssl/:

cp app.example.com+3* /etc/ssl/

Legen Sie als Nächstes den richtigen Besitz für das Nginx-Webstammverzeichnis fest:

chown -R www-data:www-data /var/www/html/

Erstellen Sie als Nächstes mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Nginx-Host:

nano /etc/nginx/conf.d/app.conf

Fügen Sie die folgenden Zeilen hinzu:

server {
   listen 80;
   server_name app.example.com;
   root /var/www/html;
}

server {
   listen *:443 ssl;
   root /var/www/html;
   server_name app.example.com;
   ssl_certificate /etc/ssl/app.example.com+3.pem; 
   ssl_certificate_key /etc/ssl/app.example.com+3-key.pem;
}

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und überprüfen Sie dann Nginx auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe sehen:

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

Starten Sie als Nächstes den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart nginx

Bearbeiten Sie als Nächstes die Datei /etc/hosts und binden Sie Ihre app.example.com an Ihre System-IP-Adresse:

nano /etc/hosts

Fügen Sie die folgenden Zeilen hinzu:

your-server-ip app.example.com

SSL für Ihre Domain verifizieren

Öffnen Sie nun Ihren Webbrowser und geben Sie die URL https://app.example.com ein . Sie sollten sehen, dass Ihre Domain mit Mkcert gesichert ist.

Klicken Sie nun auf das Schloss Symbol. Sie sollten die Informationen zu Ihrem Zertifikat auf der folgenden Seite sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben Mkcert erfolgreich installiert und ein vertrauenswürdiges CA-Zertifikat für Ihre lokale Entwicklung erstellt. Ich würde empfehlen, Mkcert nur für die Entwicklungsumgebung zu verwenden. Es wird nicht für die Produktionsumgebung empfohlen.


Ubuntu
  1. So erstellen Sie Docker-Images mit einer Docker-Datei unter Ubuntu 16.04 LTS

  2. So installieren Sie Drupal 8 mit Nginx, PHP-FPM und SSL unter Ubuntu 15.10

  3. So installieren Sie OpenCart 2 mit Nginx und SSL unter Ubuntu 15.10

  4. So installieren Sie Nginx mit Google PageSpeed ​​unter Ubuntu 20.04

  5. So installieren Sie Kubernetes mit Minikube unter Ubuntu 20.04

So installieren Sie Moodle mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04

So installieren Sie MediaWiki mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04

So installieren Sie SSL-Zertifikate von Lets Encrypt unter Ubuntu 18.04

So testen Sie REST-APIs mit Postman unter Ubuntu

So erstellen Sie Linux-Betriebssystemvorlagen mit KVM unter Ubuntu 20.04

So installieren Sie Let’s Encrypt SSL auf Ubuntu mit Apache