
Ich habe eine einige Monate alte FreeIPA-Installation. Als ich jedoch kürzlich zurückkam, um meine Administration mit dem IPA-Server fortzusetzen, konnte ich mich nicht anmelden.
DNS funktioniert in meinem privaten Netzwerk problemlos, auch wenn ich mich nicht beim IPA-System anmelden kann. Ich verwende Letsencrypt-Zertifikate im httpd-Setup.
$ipa-pkinit-Verwaltungsstatus
PKINIT is enabled
The ipa-pkinit-manage command was successful
$klist
Ticket cache: KCM:0
Default principal: [email protected]
Valid starting Expires Service principal
31.08.2020 16.12.30 01.09.2020 16.12.25 krbtgt/[email protected]
$ipa -v ping
ipa: ERROR: cannot connect to 'https://serenity.example.com/ipa/json': [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:897)
cat /var/log/httpd/Fehlerlog
[Mon Aug 31 16:31:30.125325 2020] [wsgi:error] [pid 9761:tid 139962713196288] [remote 10.0.12.31:58490] ipa: INFO: 401 Unauthorized: HTTPSConnectionPool(host='serenity.example.com', port=443): Max retries exceeded with url: /ipa/session/cookie (Caused by SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:897)'),))
Web-Benutzeroberfläche-Anmeldung:
Login failed due to an unknown reason
Hinweis: Ich habe meinen Domänenbereich auf example.com geändert.
Was verursacht dieses Problem und wie kann es behoben werden?
Antwort1
Schauen Sie sich den Inhalt von:
- /etc/ipa/ca.crt
- /var/lib/ipa-client/pki/ca-bundle.pem
- /var/lib/ipa-client/pki/kdc-ca-bundle.pem
Wenn Sie Letsencrypt für https und eine selbstsignierte Zertifizierungsstelle verwenden, sollten in jedem mehrere Zertifikate vorhanden sein. Bei Clients, die registriert wurden, bevor ich die Letsencrypt-Stammzertifizierungsstellen hinzugefügt habe, fehlten die zusätzlichen Zertifikate aus diesen drei Dateien.
ich verwieshttps://github.com/freeipa/freeipa-letsencryptfür den Wechsel zu Letsencrypt, das über ipa-cacert-manage (um die Stammzertifizierungsstellen zum Trust von Freeipa hinzuzufügen) und ipa-certupdate (um alle Zertifikate im Trust von Freeipa auf den Client herunterzuziehen) verfügt. Was mir später klar wurde, ist, dass ich ipa-certupdate auf jedem Client hätte ausführen sollen, bevor ich von https auf Letsencrypt umgestiegen bin.