openssl
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| openssl [2024-03-01 04:08:06] – [OpenSSL] manfred | openssl [2025-09-19 11:08:32] (aktuell) – [SSL-Schlüssel generieren] manfred | ||
|---|---|---|---|
| Zeile 2: | Zeile 2: | ||
| * **[[https:// | * **[[https:// | ||
| - | * [[:: | + | * [[::EDV: |
| - | * [[::Let's Encrypt]] | + | * [[::letsencrypt]] |
| + | * [[::OpenSSL]] | ||
| * [[:: | * [[:: | ||
| * [[:: | * [[:: | ||
| Zeile 10: | Zeile 11: | ||
| ===== Allgemeines ===== | ===== Allgemeines ===== | ||
| + | |||
| + | Ich würde mir eher Sorgen darüber machen, dass Ihre SSL-Verschlüsselung nicht sicher sind. | ||
| + | Adi Shamir (das „S“ in RSA) empfahl bereits **2006** die Umstellung auf '' | ||
| ^ openssl | ^ openssl | ||
| Zeile 20: | Zeile 24: | ||
| ^ ABTEILUNG | ^ ABTEILUNG | ||
| ^ Common Name | CN | //FQDN oder Dein Name// | ^ Common Name | CN | //FQDN oder Dein Name// | ||
| + | |||
| + | |||
| + | ==== mögliche Verschlüsselungsalgorithmen ==== | ||
| nutzbare Verschlüsselungsalgorithmen anzeigen lassen: | nutzbare Verschlüsselungsalgorithmen anzeigen lassen: | ||
| - | __Linux:__ | + | __Linux |
| > openssl enc -list | > openssl enc -list | ||
| > openssl list -cipher-commands | > openssl list -cipher-commands | ||
| > openssl list -cipher-algorithms | > openssl list -cipher-algorithms | ||
| - | __FreeBSD:__ | + | __älteres FreeBSD:__ |
| > openssl enc -ciphers | > openssl enc -ciphers | ||
| > openssl list -cipher-commands | > openssl list -cipher-commands | ||
| > openssl list -cipher-algorithms | > openssl list -cipher-algorithms | ||
| + | ... | ||
| + | aes-256-cbc | ||
| + | ... | ||
| + | bf-cbc | ||
| + | ... | ||
| + | |||
| + | Leider werden die guten Algotithmen (wie __Serpent__, | ||
| + | Die besten verfügbaren sind die folgenden (ich bevorzuge den **BlowFish**, | ||
| + | * AES-256-CBC | ||
| + | * BF-CBC (blowfish) | ||
| + | |||
| + | Das sind alles Synonyme für **BlowFish**: | ||
| + | * blowfish | ||
| + | * bf | ||
| + | * bf-cbc | ||
| + | * BF-CBC | ||
| + | |||
| + | |||
| + | ==== Primzahl generieren ==== | ||
| generiert eine Primzahl: | generiert eine Primzahl: | ||
| Zeile 38: | Zeile 64: | ||
| generiert eine sichere Primzahl: | generiert eine sichere Primzahl: | ||
| > openssl prime -generate -safe -bits 48 | > openssl prime -generate -safe -bits 48 | ||
| + | |||
| + | |||
| + | ==== HASH / Quersummer ==== | ||
| + | |||
| + | eine Datei anlegen, die verschlüsselt werden soll: | ||
| + | > echo "Hallo Welt!" > Text.txt | ||
| + | |||
| + | > openssl dgst -sha3-512 Datei.edg | ||
| + | > openssl sha3-512 Datei.edg | ||
| + | |||
| + | |||
| + | ==== SSL-Schlüssel generieren ==== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | // | ||
| + | |||
| + | > openssl x509 -noout -text -in / | ||
| + | > openssl x509 -noout -subject -issuer -dates -in / | ||
| + | |||
| + | |||
| + | === Curve-Schlüssel === | ||
| + | |||
| + | Generate an X25519 private key: | ||
| + | > openssl genpkey -algorithm X25519 -out private-key.pem | ||
| + | |||
| + | Generate an ED448 private key: | ||
| + | > openssl genpkey -algorithm ED448 -out private-key.pem | ||
| + | |||
| + | > openssl ecparam -list_curves | ||
| + | > openssl ecparam -name sect571r1 -out sect571r1.pem | ||
| + | > openssl ecparam -in sect571r1.pem -noout -text | ||
| + | EC-Parameters: | ||
| + | ASN1 OID: sect571r1 | ||
| + | NIST CURVE: B-571 | ||
| + | |||
| + | ungeschützten Schlüssel erstellen: | ||
| + | > openssl genpkey -paramfile sect571r1.pem -out private-key.pem | ||
| + | |||
| + | geschützten Schlüssel erstellen: | ||
| + | > openssl genpkey -aes256 -paramfile sect571r1.pem -out private-key.pem | ||
| + | Enter PEM pass phrase: | ||
| + | Verifying - Enter PEM pass phrase: | ||
| + | | ||
| + | > openssl pkey -in private-key.pem -text | ||
| + | |||
| + | > openssl pkey -in private-key.pem -out public-key.pem -pubout | ||
| + | Enter pass phrase for private-key.pem: | ||
| + | | ||
| + | > openssl pkey -in public-key.pem -pubin -text | ||
| + | |||
| + | |||
| + | === RSA-Schlüssel nach neuer Methode === | ||
| + | |||
| + | einen privaten RSA-Schlüssel generieren (neue Methode): | ||
| + | > openssl genpkey -out private-key.pem -algorithm RSA | ||
| + | > openssl genpkey -out private-key.pem -algorithm RSA -pkeyopt rsa_keygen_bits: | ||
| + | > openssl genpkey -out private-key.pem -algorithm RSA -pkeyopt rsa_keygen_bits: | ||
| + | |||
| + | nachschauen, | ||
| + | > openssl pkey -in private-key.pem -text | ||
| + | |||
| + | einen privaten RSA-Schlüssel generieren, mit Textausgabe in der PEM-Datei: | ||
| + | > openssl genpkey -out private-key.pem -algorithm RSA -pkeyopt rsa_keygen_bits: | ||
| + | |||
| + | aus dem privaten RSA-Schlüssel einen öffentlichen RSA-Schlüssel generieren (neue Methode): | ||
| + | > openssl pkey -in private-key.pem -out public-key.pem -pubout | ||
| + | > openssl pkey -in public-key.pem -pubin -text | ||
| + | |||
| + | |||
| + | === RSA-Schlüssel nach alter Methode === | ||
| + | |||
| + | einen privaten RSA-Schlüssel generieren (alte Methode): | ||
| + | > openssl genrsa -out private.pem 4096 | ||
| + | > ls *.pem | ||
| + | private.pem | ||
| + | |||
| + | aus dem privaten RSA-Schlüssel einen öffentlichen RSA-Schlüssel generieren (alte Methode): | ||
| + | > openssl rsa -in private.pem -out public.pem -outform PEM -pubout | ||
| + | > ls *.pem | ||
| + | private.pem | ||
| + | public.pem | ||
| + | |||
| + | einen privaten RSA-Schlüssel mit dazugehörigem (öffentlichen) Zertifikat erzeugen: | ||
| + | > openssl req -rand / | ||
| + | > ls *.pem | ||
| + | private.pem | ||
| + | cert.pem | ||
| + | |||
| + | // | ||
| Zeile 362: | Zeile 478: | ||
| Einweg-Zertifikatsprüfung (One-Way TLS): | Einweg-Zertifikatsprüfung (One-Way TLS): | ||
| - | > mysql --tls-version=TLSv1.2 --ssl-mode=REQUIRED --ssl-mode=VERIFY_CA | + | > mysql --tls-version=TLSv1.2 --ssl-mode=REQUIRED --ssl-mode=VERIFY_IDENTITY |
| Zweiwege-Zertifikatsprüfung (Two-Way TLS): | Zweiwege-Zertifikatsprüfung (Two-Way TLS): | ||
| - | > mysql --tls-version=TLSv1.2 --ssl-mode=REQUIRED --ssl-mode=VERIFY_CA | + | > mysql --tls-version=TLSv1.2 --ssl-mode=REQUIRED --ssl-mode=VERIFY_IDENTITY |
/home/http/wiki/data/attic/openssl.1709266086.txt · Zuletzt geändert: von manfred
