Generieren einer Zertifikatskette Verwenden Sie das Skript, um ein Stammzertifikat, ein Zwischenzertifikat und drei Client-Zertifikate zu generieren. Der Domänenname des Zwischenzertifikats ist localhost. #!/bin/bash -x setze -e für C in „echo root-ca intermediate“; mkdir $C CD $C mkdir certs crl newcerts privat CD .. echo 1000 > $C/seriell berühren Sie $C/index.txt $C/index.txt.attr Echo ' [ ca ] default_ca = CA_Standard [ CA_Standard ] dir = '$C' # Wo alles aufbewahrt wird certs = $dir/certs # Wo die ausgestellten Zertifikate aufbewahrt werden crl_dir = $dir/crl # Wo die ausgestellten CRLs aufbewahrt werden Datenbank = $dir/index.txt # Datenbankindexdatei. new_certs_dir = $dir/newcerts # Standardspeicherort für neue Zertifikate. certificate = $dir/cacert.pem # Das CA-Zertifikat serial = $dir/serial # Die aktuelle Seriennummer crl = $dir/crl.pem # Die aktuelle CRL private_key = $dir/private/ca.key.pem # Der private Schlüssel RANDFILE = $dir/.rnd # private Zufallszahlendatei nameopt = default_ca certopt = default_ca Richtlinie = Richtlinienübereinstimmung Standardtage = 365 Standardmd = sha256 [ Richtlinienübereinstimmung ] countryName = optional stateOrProvinceName = optional Organisationsname = optional organizationalUnitName = optional commonName = angegeben E-Mail-Adresse = optional [Anforderung] req_extensions = v3_req Distinguished_Name = erforderlicher Distinguished_Name [erforderlicher_Name] [v3_erforderlich] Grundeinschränkungen = CA:TRUE ' > $C/openssl.conf Erledigt openssl genrsa -out root-ca/private/ca.key 2048 openssl req -config root-ca/openssl.conf -new -x509 -days 3650 -key root-ca/private/ca.key -sha256 -extensions v3_req -out root-ca/certs/ca.crt -subj '/CN=Root-ca' openssl genrsa -out Zwischen-/Privat-/Zwischenschlüssel 2048 openssl req -config intermediate/openssl.conf -sha256 -new -key intermediate/private/intermediate.key -out intermediate/certs/intermediate.csr -subj '/CN=localhost.' openssl ca -batch -config root-ca/openssl.conf -keyfile root-ca/private/ca.key -cert root-ca/certs/ca.crt -extensions v3_req -notext -md sha256 -in intermediate/certs/intermediate.csr -out intermediate/certs/intermediate.crt mkdir aus für I in `seq 1 3`; mache openssl req -new -keyout out/$I.key -out out/$I.request -days 365 -nodes -subj "/CN=$I.example.com" -newkey rsa:2048 openssl ca -batch -config root-ca/openssl.conf -keyfile intermediate/private/intermediate.key -cert intermediate/certs/intermediate.crt -out out/$I.crt -infiles out/$I.request Erledigt Server Nginx-Konfiguration Arbeiterprozesse 1; Ereignisse { Arbeiterverbindungen 1024; } Strom{ Upstream-Backend{ Server 127.0.0.1:8080; } Server { hören Sie 8888 SSL; Proxy_Pass-Backend; ssl_zertifikat zwischengeschaltet.crt; ssl_zertifikatsschlüssel Zwischenschlüssel; ssl_überprüfen_tiefe 2; ssl_client_zertifikat root.crt; ssl_verify_client optional_no_ca; } } Kunde Locke \ -ICH \ -vv \ -x https://localhost:8888/ \ --proxy-cert client1.crt \ --proxy-key client1.key \ --proxy-cacert ca.crt \ https://www.baidu.com/ Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Das WeChat-Applet implementiert einen einfachen Rechner
>>: Detaillierte Erklärung der Rolle des Schlüssels in React
Vorwort: MySQL ist ein relationales Datenbankverw...
Beim Setzen des Textes im Suchtextfeld springt di...
Es ist nicht einfach, die vertikale Zentrierung vo...
Inhaltsverzeichnis JS Drei Berge Synchron Asynchr...
Vorwort Als wir den Stil der Webseite oben geschr...
Wenn Sie beispielsweise eine neue Tabelle erstell...
Dieser Artikel stellt den Inhalt zur Git-Konfigur...
1. Installieren Sie xshell6 2. Stellen Sie eine S...
Inhaltsverzeichnis Ziel Gedankenanalyse Code-Land...
Der <base>-Tag gibt die Standardadresse oder...
Kommunikation zwischen Containern 1. Netzwerkfrei...
Was ist eine gespeicherte Prozedur? Einfach ausge...
Verwenden Sie nginx, um die Trennung von PC-Site ...
Grundlegende Einführung in das Floating Im Standa...
Ich habe vor Kurzem in einer neuen Firma angefang...