Wie implementiere ich ein vertrauenswürdiges SSL-Zertifikat in einer lokalen Entwicklungsumgebung?

Wie wäre es, wenn Sie Ihre lokale Entwicklungsumgebung über HTTPS ohne SSL-Warnung zugänglich machen?


Als Entwickler müssen Sie möglicherweise an mehreren Projekten, Clients und Webanwendungen arbeiten. Eine der Voraussetzungen für die Entwicklung von Webanwendungen besteht darin, die Websites während der Entwicklungsphase lokal im Browser zu testen. Sehr hohe Wahrscheinlichkeit, dass die von Ihnen entwickelte Anwendung in einer Produktionsumgebung mit einem SSL / TLS-Zertifikat gesichert wird.

Zustimmen?

Wie wäre es, wenn Sie bestimmte Funktionen testen müssen, indem Sie die API eines Drittanbieters nutzen, für die der Ursprung https: // sein muss?

Sie können selbstsigniertes Zertifikat sagen und daran ist nichts auszusetzen. Aber haben Sie versucht, auf eine selbstsignierte zertifizierte implementierte Site zuzugreifen? In Chrome und anderen Browsern wird weiterhin eine Zertifizierungswarnung angezeigt.

Siehst du das Nicht sicher Abzeichen?

Nicht gut, richtig?

Der beste Weg, um ein gültiges SSL-Zertifikat in der Entwicklungsumgebung zu haben, ist die Verwaltung Ihrer eigenen Zertifizierungsstelle und der möglichen mit mkcert. Eine einfach zu implementierende, mit der Sie ein gültiges Zertifikat für die folgende lokale Entwicklungswebadresse erhalten.

  • example.com
  • * .example.com
  • Beispiel.Test
  • localhost
  • 127.0.0.1
  • :: 1

Sie können mkcert unter macOS, Windows, CentOS, Ubuntu und anderen UNIX-basierten Betriebssystemen implementieren. Das folgende Beispiel stammt von Ubuntu.

Lassen Sie uns zunächst die Tools des Netzwerksicherheitsdienstes installieren, die über Zertifikate zur Verwaltung der Zertifikatdatenbank verfügen.

apt-get update
apt-get install libnss3-tools

Möglicherweise müssen Sie auch sicherstellen, dass das Gebräu auf Ihrem Server installiert ist. Wenn nicht, installieren Sie mit dem folgenden Befehl.

apt-get install linuxbrew-wrapper

und schließlich installieren Sie das mkcert mit Brew.

brauen mkcert installieren

Hinweis: Um mit Brew zu installieren, sollten Sie nicht root sein. und es wird in /home/$USER/.linuxbrew/bin/mkcert installiert

Wobei $ USER der Benutzername ist, den Sie für die Installation verwendet haben

Jetzt ist es an der Zeit, die lokale Zertifizierungsstelle im System Trust Store zu installieren.

[E-Mail geschützt]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert -install
Verwenden der lokalen Zertifizierungsstelle unter "/root/.local/share/mkcert" ✨
Die lokale Zertifizierungsstelle ist jetzt im System Trust Store installiert! ⚡️

[E-Mail geschützt]: ~ / mkcert #

Generieren Sie als Nächstes ein Zertifikat für die Entwicklungsumgebung. Angenommen, Sie haben Ihre Website auf example.com und können den folgenden Befehl verwenden, um das Zertifikat und die Schlüsseldatei abzurufen.

[E-Mail geschützt]: ~ / mkcert # /home/chandan/.linuxbrew/bin/mkcert example.com
Verwenden der lokalen Zertifizierungsstelle unter "/root/.local/share/mkcert" ✨

Erstellt ein neues Zertifikat, das für die folgenden Namen gültig ist ��
– "example.com"

Das Zertifikat ist bei "./example.com.pem" und der Schlüssel bei "./example.com-key.pem" ✅

[E-Mail geschützt]: ~ / mkcert #

Großartig! Jetzt habe ich ein gültiges Zertifikat und seine Schlüsseldatei, die auf meinen Nginx-, Apache- oder anderen Webservern verwendet werden können.

Nehmen wir ein Beispiel für einen Apache-HTTP-Server. Falls noch nicht geschehen, aktivieren Sie das SSL-Modul und die Konfiguration.

[E-Mail geschützt]: / etc / apache2 # a2enmod ssl
Berücksichtigung der Abhängigkeit setenvif für ssl:
Modul setenvif bereits aktiviert
Unter Berücksichtigung der Abhängigkeitsmime für SSL:
Modul-MIME bereits aktiviert
Berücksichtigung der Abhängigkeit socache_shmcb für ssl:
Aktivieren des Moduls socache_shmcb.
Aktivieren des Moduls ssl.
Informationen zum Konfigurieren von SSL und zum Erstellen selbstsignierter Zertifikate finden Sie unter /usr/share/doc/apache2/README.Debian.gz.
Um die neue Konfiguration zu aktivieren, müssen Sie Folgendes ausführen:
systemctl starte apache2 neu
[E-Mail geschützt]: / etc / apache2 #

Starten Sie den Apache wie vorgeschlagen neu.

Wenn Sie an dieser Stelle netstat verwenden, werden Sie feststellen, dass der Apache mit dem sicheren Port 443 gestartet wurde.

[E-Mail geschützt]: / etc / apache2 # netstat -anlp | grep 443
tcp6 0 0 ::: 443 ::: * LISTEN 11616 / apache2
[E-Mail geschützt]: / etc / apache2 #

Aber wir sind noch nicht fertig. Es hat mit dem Standardzertifikat (Dummy) begonnen und wir müssen das ersetzen.

Ändern Sie die Datei default-ssl.conf mithilfe der Datei vi und ersetzen Sie Folgendes durch den Pfad, in dem Sie den Schlüssel und die Zertifizierungsdatei generiert haben.

SSLCertificateFile /root/mkcert/example.com.pem
SSLCertificateKeyFile /root/mkcert/example.com-key.pem

Vor dem Neustart von Apache müssen Sie auch die Hosts-Datei für example.com bearbeiten, damit sie in Ihren lokalen Host anstatt in den Internet-Host aufgelöst wird. Wenn Sie fertig sind, starten Sie den Apache HTTP-Server neu und greifen Sie auf example.com zu. Sie werden sehen, dass ein vertrauenswürdiges Zertifikat bereitgestellt wird.

Fazit

Dies kann nützlich sein, um ein vertrauenswürdiges Zertifikat in einer lokalen Umgebung zu haben. Das Obige ist nur ein Beispiel für example.com, aber Sie können dies für localhost und andere tun. Wenn Sie einen externen Unterzeichner benötigen, um ein Zertifikat auszustellen, lesen Sie, wie Sie dieses kostenlos erhalten.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map