Benutzerauthentifizierung mit Zertifikaten

Hereinspaziert

Benutzer auf Linux-Systemen mit Hilfe von X.509-Zertifikaten zu authentifizieren, ist ein alter Hut. Allerdings tut sich in diesem Bereich aktuell recht viel, sodass der Open-Source-Tipp in diesem Monat einen näheren Blick auf dieses Thema wirft.
Immer größere Datenmengen bei gleichzeitig steigenden Anforderungen an die Sicherheit sowie Zugriffsmöglichkeiten stellen Administratoren vor neue ... (mehr)

Smartcards und verwandte Hardware zum Speichern von X.509-Zertifikaten, wie die beliebten Yubikeys mit PKCS#11-Schnittstelle, sind aktuell wieder schwer in Mode. Im Linux-Bereich kam lange Zeit die bekannte PAM-Bibliothek pam_pkcs11 zum Einsatz, wenn Benutzer auf einem System mit Hilfe eines Zertifikates authentifiziert werden sollten. In einer Konfigurationsdatei der PAM-Bibliothek, zumeist "/etc/pam_pkcs11/pam_pkcs11.conf", stehen dann alle Einstellungen. Dazu zählt beispielsweise, welche PKCS#11-Module auf dem Client zum Einsatz kommen sollen, etwa coolkey oder OpenSC, und auch wie das Mapping zwischen einem Benutzer und dem Zertifikat auszusehen hat, das zur Anmeldung dienen soll.

Da Benutzerkonten zumeist in einem zentralen LDAP-Server liegen, ist hierfür die Konfiguration eines LDAP-Mappers notwendig. Eine beispielhafte Konfiguration ist in Listing 1 zu sehen. Sie legt fest, dass das LDAP-Objekt für den Benutzer, der sich mit Hilfe eines Zertifikats anmelden möchte, über ein Attribut "userCertificate" verfügen muss. In diesem ist das komplette Zertifikat des Benutzers, wie es auch auf der Smartcard vorliegt, zu speichern. Das passende LDAP-Objekt für den Benutzer wird dabei durch den eingesetzten Filter lokalisiert. In diesem Fall muss das korrekte Benutzerobjekt also über die Objektklasse "posixAccount" verfügen und das Attribut "uid" muss identisch mit dem Benutzernamen sein, der zum Login des Benutzers verwendet wird.

PAM-Modul ist veraltet

Auch wenn sich das PAM-Modul in der Vergangenheit immer großer Beliebtheit erfreute, weist es doch einige Mängel auf. Da ist zum einen die umständliche Konfiguration, die auf jedem Client-System nötig ist. Oftmals sollen lediglich ausgewählte Zertifikate für ein Login auf einem System zum Einsatz kommen. Eine typische Anforderung wäre beispielsweise, dass nur Zertifikate von einer

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019