-DIR - Authorized Entities Directory - Identity & Access-Management mit OpenLDAP - stroeder.com

Die Seite wird erstellt Friedemann Haas
 
WEITER LESEN
-DIR - Authorized Entities Directory - Identity & Access-Management mit OpenLDAP - stroeder.com
Æ-DIR - Authorized Entities Directory
    - Identity & Access-Management mit OpenLDAP -

                      KA-IT-Si

                     2018-12-13

STROEDER.COM             -1-               KA-IT-Si 2018-12-13
Michael Ströder 

     Freiberufler

     Schwerpunkte
       
           Identity & Access Management, Directory Services (LDAP)
       
           Single Sign-On, Multi-Factor Authentication
       
           PKI (X.509, SSH), Angewandte Verschlüsselung

     Open Source / Freie Software:
     Æ-DIR, OATH-LDAP, web2ldap

    STROEDER.COM                    -2-                   KA-IT-Si 2018-12-13
Allgemeine Sicherheitsanforderungen

    Generelle Prinzipien
     
         Need-to-know
     
         Least Privilege
     
         Separation of Duties

    → Berechtigungen notwendig

    Delegierte Administration überschaubarer Bereiche

    Nachvollziehbarkeit von Änderungen

    Prüfung der Einhaltung von Richtlinien (Compliance)

STROEDER.COM                    -3-                   KA-IT-Si 2018-12-13
Secure DevOps

    Aufgabenteilung nach Teams

    Unterschiedliche Sicherheitsrichtlinien

    Z.B. Netzwerktrennung
    (infra, frontend, middleware, backend)

    DevOps staging environments
     
         dev: Entwickler haben vollen Zugriff
     
         test: Manche Entwickler haben Zugriff
     
         prod: Nur Betriebsteam, ggf. temporärer Zugriff für
           Entwickler
STROEDER.COM                     -4-                    KA-IT-Si 2018-12-13
Agile DevOps

    Bearbeitung von Anträgen ist nicht agil

    Jemand der entscheiden kann, sollte es gleich selbst tun

    Beantragungsprozesse vermeiden

    Feingranulierte Autorisierung notwendig

STROEDER.COM                   -5-                  KA-IT-Si 2018-12-13
Paradigmen

    Explizit ist besser als implizit

    Sichere Autorisierung erfordert sichere Authentifizierung

    Vermeiden von Stellvertreterrollen (HelpDesk, Systeme)

    Berechtigungen ohne streng hierarchische Strukturen

    Eine Person ist kein Benutzer

    Mehrere Benutzer pro Person für verschiedene Rollen

    Persistente IDs werden nie wieder benutzt

STROEDER.COM                      -6-               KA-IT-Si 2018-12-13
Rollenkonzept Æ-DIR

    Æ admins delegieren Zonen, sonst nichts

    Æ auditors können (fast) alles lesen

    Zonen-Admins pflegen die Daten einer Zone

    Zonen-Auditoren können eine Zone einsehen

    Setup-Admins verwalten Hosts/Dienste innerhalb einer
    Service-Gruppe

    Benutzer können eigene Einträge lesen und eigenes
    Passwort ändern

STROEDER.COM                   -7-                KA-IT-Si 2018-12-13
2-stufige Architektur
                                                                    Æ-DIR provider
                                               LDAPS                                         slapd
           admin workstation
                                                                                             mdb
         custom           web
           tool         browser                 HTTPS

                                                                                     LDAPI     LDAPI

        SSH client      pgadmin                                                                 maintenance
                                                                            web apps
                                                                                                   tools

                                                                              Æ-DIR consumer
             Unixoid server       DB server            web server
  SSH                                                                                slapd              LDAPS
                                                        Apache                                         (syncrepl)
                  aehostd         postgresql
                                                         httpd
                                                                                       mdb

                                                                    LDAPS

STROEDER.COM                                           -8-                                           KA-IT-Si 2018-12-13
Directory Information Tree (DIT)
                                                       ou=ae-dir
                                                        aeRoot

                             cn=pub                 cn=ae                                                                  cn=people
                             aeZone                aeZone                                                                   aeZone

               cn=ae-users        cn=sudo-defaults                     cn=example                        uniqueIdentifier=p23     departmentNumber=d42
                 aeGroup            aeSudoRule                           aeZone                               aePerson                   aeDept

    uid=foo1     cn=example-grp-1         cn=example-srvgrp        cn=example-sudo   cn=example-zone-admins      cn=example-zone-auditors
     aeUser          aeGroup                 aeSrvGroup              aeSudoRule             aeGroup                     aeGroup

                             host=example-srv         uid=system_example1
                                  aeHost                    aeService

                   cn=eth0             cn=bond0
                 aeNwDevice           aeNwDevice

STROEDER.COM                                                                   -9-                                                     KA-IT-Si 2018-12-13
E/R-Diagramm

                              aeZone

  aePerson                  aeZoneAdmins
                            aeZoneAuditors
                          aePasswordAdmins

      aePerson                                  aeSetupGroups
                                                                                         aeVisibleSudoers
                 member                        aeLogStoreGroups
                              aeGroup           aeLoginGroups       aeSrvGroup                                 aeSudoRule
                                                aeVisibleGroups
   aeUser                                    aeDisplayNameGroups
                                                                                           aeProxyFor
                                                                                                            sudoUser

  aeService
                                                                         (child of) or
                                                                        aeSrvGroup

                                                            aeService                aeHost                    aeNwDevice
                                                                                                  (child of)

STROEDER.COM                                       - 10 -                                            KA-IT-Si 2018-12-13
Eindeutige IDs

    Sichere Autorisierung erfordert eindeutige Bezeichner

    Eindeutige IDs für verschiedene Objekte:
    uid, uidNumber, gidNumber, cn, aeFqdn, macAddress...

    Durch den Eintrag einer ID in einer Zone werden Zonen-
    Admins zu “Besitzern” der ID

    Nützlich für die delegierte Administration von DNS/DHCP,
    NAC, PKI, etc.

STROEDER.COM                  - 11 -               KA-IT-Si 2018-12-13
Benutzerkennungen

    Benutzerkennungen sind Primärschlüssel auf
    Datenbestände angeschlossener Systeme

    Benutzerkennungen werden protokolliert

    → Nicht basierend auf Personennamen!

    → Werden nicht wieder verwendet!

    → Benutzerkonten können nur deaktiviert werden

    Status “archiviert” schränkt Sichtbarkeit ein (DSGVO)

STROEDER.COM                  - 12 -                KA-IT-Si 2018-12-13
LDAP-Integration

    Schema basiert auf Standards (inetOrgPerson, RFC
    2307,etc.)

    Æ-DIR-Schema wird nicht client-seitig benutzt

    nahezu jedes LDAP-fähige System direkt integrierbar

    Allgemeine Meta-Daten (Status, Nutzungsdauer,
    Verwendungszweck, Ticket-Nr.)

STROEDER.COM                 - 13 -                 KA-IT-Si 2018-12-13
Protokollierung

    Schreiboperationen werden in separate Datenbank
    protokolliert

    vollständige Repräsentation der LDAP-Schreiboperation

    Ein Traum für Auditoren

    Technisch: OpenLDAP-Overlay accesslog

    OpenLDAP protokolliert in syslog → zentraler Log-Dienst

    Automatische Log-Auswertung empfohlen (z.B. err=49)

STROEDER.COM                  - 14 -               KA-IT-Si 2018-12-13
Praxiseinsatz

    Ca. 150 Mitarbeiter, verteilte Standorte, 300+ Server

    Æ-DIR als zentrales IAM-System

    Personaldaten aus NetSuite

    MacOS-Integration

    “Basis-Accounts” werden in AD/Exchange synchronisiert

    “DevOps-Accounts” werden ins Azure AD sychronisiert

    Login Azure-Portal via SAMLv2 IdP

    2-Faktor authc mit yubikey
STROEDER.COM                     - 15 -              KA-IT-Si 2018-12-13
SOHO-Einsatz

    Eat you own dog food!

    7 W, libvirt/KVM

    postfix/dovecot

    Apache

    FreeRADIUS (WIFI)

                                       Image: thomas-krenn.com

STROEDER.COM                - 16 -     KA-IT-Si 2018-12-13
aehostd

    Spezielle Client-Komponente für Linux-Logins

    Für Integration vieler Linux-Systeme (1000+)

    Kennt Schema und kann effizienter suchen

    Spezieller Mechanismus für automatisches Enrollment des
    Host-Passworts

    Besseres Verhalten der LDAP-Verbindungen

    Nützliche Spezial-Features:
    virtuelle Rollengruppen, Client-Tracking-Logs, etc.

STROEDER.COM                  - 17 -                 KA-IT-Si 2018-12-13
SSH-Proxy mit Autorisierung
                                                       admin                                        Æ-DIR
                                                     workstation                                   consumer

                                           ssh @                                 slapd
                                            ProxyCommand looked up
                                            for  in local config
                                                                                                     mdb

                        SSH @

                               SSH proxy
                                                        sshd                    pam_sss
                                                                                          sssd
                                                                                nss_sss

       target
      system                        wrapper script                                               LDAPS
                                                                   full shell
                                  (ForceCommand)                                  sudo-ldap
                                                               for GW admins
                TCP
       ssh      (SSH tunnel)
                                    nc :22

                                                           SSH key
                               Authz Check                 query by ae-uid
                               
                                                                                  ae_checkd

STROEDER.COM                                                - 18 -                               KA-IT-Si 2018-12-13
Fazit

    Mehr Sicherheit ist möglich

    … ist aber anstrengend …

    Gute Modellierung der Berechtigungen meist erst im 2.
    Wurf

    Rückhalt des Managements hilft (Budget!)

    Schulung notwendig

    Change-Management!

STROEDER.COM                   - 19 -              KA-IT-Si 2018-12-13
Links

    Dokumentation:
    https://ae-dir.com

    Ausprobieren:
    https://ae-dir.com/demo.html

    Installieren:
    https://ae-dir.com/install.html

STROEDER.COM                 - 20 -   KA-IT-Si 2018-12-13
:-/

               ?…!

STROEDER.COM   - 21 -   KA-IT-Si 2018-12-13
Sie können auch lesen