hkrischeu
Goto Top

Selbstsigniertes Zertifikat über https "nicht vertrauenswürdig"

Hi,
Ich habe ein selbstsigniertes Zertifikat, welches ich nicht vertrauenswürdig bekomme.
glpi.technologie.local


Ich habe ein Inventory/Ticketsystem installiert - GLPI. Funktioniert über http und https.
Auf dem Linuxserver (Debian 12 64 Bit) Zertifikatsanfrage installiert /var/apache2/zertifikate/
openssl req -new -newkey rsa:2048 -nodes -keyout glpi.key -out glpi.csr
Die Anfrage kommt auf den AD. Dort läuft auch die Zertifizierungsstelle.

Über die Shell signiere ich das Zertifikat
certreq -attrib "CertificateTemplate:Webserver365Tage" -submit glpi.csr
Hier hatte ich ein Template gemacht für 1 Jahr Laufzeit.

Das daraus generierte Zertifikat --> glpi.crt dann noch als Base64 Codiertes Zertikat abgespeichert und im Apache hinterlegt.
/etc/apache2/sites-availiable/glpi.conf
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/apache2/zertifikate/glpi.crt
SSLCertificateKeyFile /etc/apache2/zertifikate/glpi.key
        ServerName glpi.technologie.local
DocumentRoot /var/www/glpi/public
Alias "/glpi" "/var/www/glpi/public"  
<Directory /var/www/glpi/public>
Require all granted
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</Directory>
</VirtualHost>
Über Gruppenrichtlinie verteilt. Bei dem Client ist es im Zertifikatsspeicher vorhanden.

Ergebnis: Gemischt
--> Auf dem Windowserver mit IExplorer --> Geht fehlerfrei
--> Auf den Clients mit Edge: Zertifikat für diese Seite ist ungültig (Zertifikatscheck glpi.technologie.local steht drin)
--> Auf den Clients mit Firefox: SSL_ERROR_BAD_CERT_DOMAIN (Zertifikatscheck glpi.technologie.local steht drin)

Virenscanner auf Server: Trendmicro, Clients ESET

Über Anregung würde ich mich sehr freuen.

Grüße
Heinz

Content-ID: 31609975035

Url: https://administrator.de/contentid/31609975035

Ausgedruckt am: 21.11.2024 um 18:11 Uhr

Mika909
Mika909 31.10.2023 um 09:50:50 Uhr
Goto Top
Bei Firefox eventuell das Zertifikat über Einstellungen->Datenschutz&Sicherheit->Zertifikate anzeigen -> (manuell) importieren
Th0mKa
Th0mKa 31.10.2023 um 09:59:41 Uhr
Goto Top
Moin,

du mußt das Root Zertifikat deiner CA auf den Rechnern importieren.

/Thomas
hkrischeu
hkrischeu 31.10.2023 um 10:00:15 Uhr
Goto Top
Das hier ist die Fehlermeldung des Firefox´

Sichere Kommunikation mit der Gegenstelle ist nicht möglich: Angeforderter Domainname stimmt nicht mit dem Zertifikat des Servers überein.
HTTP Strict Transport Security: false
HTTP Public Key Pinning: false
SlainteMhath
SlainteMhath 31.10.2023 um 10:01:25 Uhr
Goto Top
Moin,

Google hätte geholfen, innerhalb von Sekunden face-smile

Hier https://support.mozilla.org/en-US/questions/1379667 steht was genau mit deinem Zertifikat nicht stimmt. Gilt für FF und vermutlich auch für Edge/Chrome

lg,
Slainte
hkrischeu
hkrischeu 31.10.2023 um 10:17:39 Uhr
Goto Top
Hi,
wo soll ich denn beim Zertifikatsgenerieren den SAN Eintrag reinnehmen?
hkrischeu
hkrischeu 31.10.2023 um 10:21:27 Uhr
Goto Top
Eventuell so?

certutil -setreg policy\EditFlags +EDITF_ATTRIBUTESUBJECTALTNAME2
net stop certsvc
net start certsvc
8030021182
8030021182 31.10.2023 aktualisiert um 10:31:11 Uhr
Goto Top
Hi.
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -nodes -sha256 -days 365 -subj "/C=DE/CN=glpi.technologie.local" -addext "subjectAltName = DNS:glpi.technologie.local" -addext "extendedKeyUsage = serverAuth,clientAuth" -addext "keyUsage = critical,keyEncipherment,digitalSignature,keyAgreement"    
Erstellt selbst signiertes Cert mit private Key und SAN in einem Rutsch.

Gruß Katrin
hkrischeu
hkrischeu 31.10.2023 um 10:27:37 Uhr
Goto Top
Uh,
vielen Dank Katrin11.

Ich probier das mal aus. Mal sehen, ob das mit dem Template:Website auf dem Windowsserver signierbar ist.
hkrischeu
hkrischeu 31.10.2023 um 10:48:26 Uhr
Goto Top
Hallo Katrin11,

certreq -attrib "CertificateTemplate:Webserver365Tage" -submit cert.pem

Das hab ich sonst immer auf dem AD gemacht ....

C:\temp\Zertifikatsanfrage>certreq -attrib "CertificateTemplate:Webserver365Tage" -submit cert.pem
Active Directory-Registrierungsrichtlinie
{CB1C98D0-23AE-4050-9A70-423C13BB87DA}
ldap:
Zertifikatanforderungsverarbeitung: Die Daten sind unzulässig. 0x8007000d (WIN32: 13 ERROR_INVALID_DATA)
cert.pem
hkrischeu
hkrischeu 31.10.2023 um 10:51:55 Uhr
Goto Top
Hm,
da ist ja schon alles drin ...

Ich schau mal, ob ich das auf dem AD importieren kann und dann über die Gruppenrichtline verteilen kann.
8030021182
8030021182 31.10.2023 aktualisiert um 11:17:26 Uhr
Goto Top
Zitat von @hkrischeu:
da ist ja schon alles drin ...
Ja klar, sagen ja schon die Parameter das es kein Request ist sondern Key und Cert direkt ausgibt.
Ich schau mal, ob ich das auf dem AD importieren kann und dann über die Gruppenrichtline verteilen kann.
Wenn du nur einen Request für deine CA brauchst das geht natürlich auch
openssl req -new -newkey RSA:2048 -keyout private.key -out request.csr -nodes -subj "/C=DE/CN=glpi.technologie.local" -addext "keyUsage=critical,digitalSignature,keyEncipherment" -addext "extendedKeyUsage=serverAuth,clientAuth" -addext "subjectAltName=DNS:glpi.technologie.local"  
Die Einstellungen des genutztes Certificate-Template für's Signieren muss natürlich auch stimmen...
8030021182
8030021182 31.10.2023 aktualisiert um 11:31:13 Uhr
Goto Top
Bedenke auch das etwa Firefox per Default seinen eigenen CA Speicher nutzt. Wenn der den Windows CA Speicher nutzen soll muss man ihm das per GPO sagen oder mittels about:config
security.enterprise_roots.enabled = true
Setting Up Certificate Authorities (CAs) in Firefox
hkrischeu
hkrischeu 02.11.2023 um 08:14:43 Uhr
Goto Top
[Solved]
Hi Katrin11
Das hat funktioniert. Vielen Dank. Ich hab damit schon 1 Woche lang gekämpft.
Den Eintrag beim Firefox mußte ich nicht machen.

Wie man dem Zertifikat noch die Einträge mitgeben, DE, Bayern, Firmenname, etc? Bringt zwar erst mal nix, sieht aber einfach schöner aus.
8030021182
Lösung 8030021182 02.11.2023 aktualisiert um 09:31:46 Uhr
Goto Top
Zitat von @hkrischeu:

Wie man dem Zertifikat noch die Einträge mitgeben, DE, Bayern, Firmenname, etc?
Im Subject Parameter (-subj) mit Slash (/) voneinander getrennt wie oben gezeigt
-subj "/C=DE/O=Firma/S=State/OU=OrganizationalUnit/CN=glpi.technologie.local"   
Doku zu den Feldern und deren Bezeichner
https://docs.oracle.com/cd/E24191_01/common/tutorials/authz_cert_attribu ...

Das klappt aber verständlicherweise nur wenn im Template deiner CA definiert ist das diese Felder auch mit ins Zertifikat übernommen werden.

Bitte dann noch als gelöst markieren nicht vergessen.👋