linux:create-client-server-certificate

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
linux:create-client-server-certificate [2017/10/17 13:07] michaellinux:create-client-server-certificate [2019/03/07 14:07] (current) – [Verteilen der neu erstellten Keys / Certs] michael
Line 6: Line 6:
  
 ===== Funktionsprinzip einer TLS Verschlüsselung ===== ===== Funktionsprinzip einer TLS Verschlüsselung =====
-**TLS** ''(Transaction Layer Security)'' ist die standardisierten Weiterentwicklungen von SSL (TLS 1.0 = SSL 3.1). SSL wird also nun unter dem Namen TLS weiterentwickelt. TLS und SSL werden daher oft auch synonym verwendet. ''TLS ist laut RFC 2246 eine Technologie zur Sicherung des Netzwerk-Datenaustausches zwischen Anwendungen, das Datenschutz und Datenintegrität ("privacy and integrity") gewährleistet (bzw. gewährleisten soll).'' Der generelle Ablauf bei TLS beginnt mit dem Aufbau einer Verbindung vom Client zum Server. Dabei schickt er gleich eine Liste an unterstützten Cipher Suites mit. Anschließend authentisiert sich der Server gegenüber dem Client mit einem Zertifikat und der ausgewählten Cipher Suite. Der Client überprüft das Zertifikat und authentisiert sich ggf. selbst auch noch gegenüber dem Server mit einem eigenen Zertifikat. Nun schickt entweder der Client dem Server eine verschlüsselte Zufallszahl, die mit dem öffentlichen Schlüssel des Servers verschlüsselt ist, oder beide Parteien berechnen ein gemeinsames Geheimnis mit dem Diffie-Hellman-Schlüsselaustauschverfahren. Mit dem daraus abgeleiteten kryptographischen Schlüssel, werden nun alle Nachrichten der Verbindung mit einem ausgewählten symmetrischen Verschlüsselungsverfahren verschlüsselt.+**TLS** ''(Transaction Layer Security)'' ist die standardisierten Weiterentwicklungen von SSL (TLS 1.0 = SSL 3.1). SSL wird also nun unter dem Namen TLS weiterentwickelt. TLS und SSL werden daher oft auch synonym verwendet. ''TLS ist laut RFC 2246 eine Technologie zur Sicherung des Netzwerk-Datenaustausches zwischen Anwendungen, das Datenschutz und Datenintegrität ("privacy and integrity") gewährleistet (bzw. gewährleisten soll).'' Der generelle Ablauf bei TLS beginnt mit dem Aufbau einer Verbindung vom Client zum Server. Dabei schickt er auch gleich eine Liste an unterstützten Cipher Suites mit. Anschliessend authentisiert sich der Server gegenüber dem Client mit seinem Zertifikat und der ausgewählten Cipher Suite. Der Client überprüft das Zertifikat und authentisiert sich ggf. selbst auch noch gegenüber dem Server mit einem eigenen Zertifikat. Nun schickt entweder der Client dem Server eine verschlüsselte Zufallszahl, die mit dem öffentlichen Schlüssel des Servers verschlüsselt ist, oder beide Parteien berechnen ein gemeinsames Geheimnis mit dem Diffie-Hellman-Schlüsselaustauschverfahren. Mit dem daraus abgeleiteten kryptographischen Schlüssel, werden nun alle Nachrichten der Verbindung mit einem ausgewählten symmetrischen Verschlüsselungsverfahren verschlüsselt.
  
 **Beispiel Umgebung:** **Beispiel Umgebung:**
Line 44: Line 44:
  
   - Wechseln in das Server_Cert-Key Hauptverzeichnis: <code># cd /opt/TLS_Certs/Server_Cert-Key/</code>   - Wechseln in das Server_Cert-Key Hauptverzeichnis: <code># cd /opt/TLS_Certs/Server_Cert-Key/</code>
-  - Erstellen der Zertifikat Konfigurationsdatei: <code># vim /opt/TLS_Certs/Server_Cert-Key/extfile.cnf</code> <sxh bash;>subjectAltName = DNS:vdock1.pnet.ch,IP:172.16.9.30,IP:127.0.0.1+  - Erstellen der Zertifikat Konfigurationsdatei: <code># vim /opt/TLS_Certs/Server_Cert-Key/extfile.cnf</code> <sxh bash;>subjectAltName = DNS:vdock1.pnet.ch
 extendedKeyUsage = serverAuth</sxh> extendedKeyUsage = serverAuth</sxh>
   - Erstellen des Server-Private-Keys: <code># openssl genrsa -out server-key.pem 4096</code>   - Erstellen des Server-Private-Keys: <code># openssl genrsa -out server-key.pem 4096</code>
Line 64: Line 64:
  
  
----- 
  
 ===== Verteilen der neu erstellten Keys / Certs ===== ===== Verteilen der neu erstellten Keys / Certs =====
Line 76: Line 75:
  
  
 +===== Weiteres =====
  
 +<WRAP center round download 100%>
 +''Ansible Skript zur vollautomatischen Erstellung und Verteilung der Key / Certs:''
 +  * 
 +</WRAP>
  
 +  * [[linux:openSSL|Praktische Experimente mit OpenSSL, sowie Certificate-Validation und Analyse]]
  
  
  • linux/create-client-server-certificate.1508238458.txt.gz
  • Last modified: 2017/10/17 13:07
  • by michael