SSSD. Client side identity management. LinuxAlt 2012 Jakub Hrozek 3. listopadu 2012



Similar documents
CAC AND KERBEROS FROM VISION TO REALITY

Integrating Linux systems with Active Directory

System Security Services Daemon

Identity Management based on FreeIPA

AD Integration options for Linux Systems

Managing Identity & Access in On-premise and Cloud Environments. Ellen Newlands Identity Management Product Manager Red Hat, Inc

Identity Management: The authentic & authoritative guide for the modern enterprise

Advancements in Linux Authentication and Authorisation using SSSD

Red Hat Enterprise Identity (IPA) Centralized Management of Identities & Authentication

Red Hat Identity Management

Interoperability Update: Red Hat Enterprise Linux 7 beta and Microsoft Windows

LinuxCon North America

Building Open Source Identity Management with FreeIPA. Martin Kosek

Handling POSIX attributes for trusted Active Directory users and groups in FreeIPA

FreeIPA - Open Source Identity Management in Linux

FreeIPA 3.3 Trust features

RHEL Clients to AD Integrating RHEL clients to Active Directory

SSSD Active Directory Improvements

Red Hat Enterprise ipa

FreeIPA Cross Forest Trusts

Integration with Active Directory. Jeremy Allison Samba Team

How to build an Identity Management System on Linux. Simo Sorce Principal Software Engineer Red Hat, Inc.

Implementing Linux Authentication and Authorisation Using SSSD

Fedora 18 FreeIPA: Identity/ Policy Management

Fedora 17 FreeIPA: Identity/ Policy Management

SSSD DNS Improvements in AD Environment

IPA Identity, Policy, Audit Karl Wirth, Red Hat Kevin Unthank, Red Hat

Hadoop Elephant in Active Directory Forest. Marek Gawiński, Arkadiusz Osiński Allegro Group

Univention Corporate Server. Extended domain services documentation

Cross-Realm Trust Interoperability, MIT Kerberos and AD

Windows Security and Directory Services for UNIX using Centrify DirectControl

Integrating Red Hat Enterprise Linux 6 with Microsoft Active Directory Presentation

FreeIPA Client and Server

CYAN SECURE WEB HOWTO. NTLM Authentication

Security with LDAP. Andrew Findlay. February Skills 1st Ltd

SSSD and OpenSSH Integration

Likewise Security Benefits

Securing VMware Virtual Infrastructure with Centrify's Identity and Access Management Suite

Vintela Authentication from SCO Release 2.2. System Administration Guide

External and Federated Identities on the Web

Mac OS X Directory Services

Configuring User Identification via Active Directory

FreeIPA Client and Server

External Authentication with Juniper SSL VPN appliance Authenticating Users Using SecurAccess Server by SecurEnvoy

Using SUSE Linux Enterprise Desktop with Microsoft * Active Directory Infrastructure

SUSE Manager 1.2.x ADS Authentication

CONFIGURING ACTIVE DIRECTORY IN LIFELINE

Authentication in a Heterogeneous Environment

Open Directory. Apple s standards-based directory and network authentication services architecture. Features

Integrating Lustre with User Security Administration. LAD 15 // Chris Gouge // 2015 Sep

Active Directory and Linux Identity Management

Global Filesystems in the Real World: Comparing Experiences with AFS and NFS. Phillip Moore

Integrating UNIX and Linux with Active Directory. John H Terpstra

White Paper. Managing Group Policies for Non Windows Computers through Microsoft Active Directory

ipad or iphone with Junos Pulse and Juniper SSL VPN appliance Authenticating Users Using SecurAccess Server by SecurEnvoy

FreeIPA v3: Trust Basic trust setup

Best Practices: Integrating Mac OS X with Active Directory. Technical White Paper April 2009

Linux Operating System Security

Creating a DUO MFA Service in AWS

Going in production Winbind in large AD domains today. Günther Deschner (Red Hat / Samba Team)

What s New in Centrify Server Suite 2014

Red Hat Linux Administration II Installation, Configuration, Software and Troubleshooting

Alternative authentication methods. Niko Dukić/Mario Šale CS Computer Systems

Security Provider Integration Kerberos Authentication

SSSD AD Provider: Access Control

Active Directory Integration

Unifying Authorization Models

Chapter 3 Authenticating Users

Centralized Oracle Database Authentication and Authorization in a Directory

Whitepaper: Centeris Likewise Identity 3.0 Security Benefits

RH033 Red Hat Linux Essentials or equivalent experience with Red Hat Linux..

Active Directory and DirectControl

A brief on Two-Factor Authentication

ENTERPRISE LINUX SECURITY ADMINISTRATION

User Source and Authentication Reference

The Mac OS X Server Essentials v10.5 Exam Skills Assessment Guide

Websense Support Webinar: Questions and Answers

GL-550: Red Hat Linux Security Administration. Course Outline. Course Length: 5 days

Allowing Linux to Authenticate to a Windows 2003 AD Domain. Prepared by. Thomas J. Munn, CISSP 11-May-06

LDAP User Guide PowerSchool Premier 5.1 Student Information System

Integrating a Hitachi IP5000 Wireless IP Phone

MIGRATING DESKTOP AND ROAMING ACCESS. Migrating Desktop and Roaming Access Whitepaper

Integrating Red Hat Enterprise Linux 6 with Active Directory. Mark Heslin Principal Software Engineer

LDAP-UX Client Services B with Microsoft Windows Active Directory Administrator's Guide

User Identification (User-ID) Tips and Best Practices

What s New in Centrify Server Suite 2015

NETASQ SSO Agent Installation and deployment

Install and Configure an Open Source Identity Server Lab

Integrating Ubuntu 8.04 LTS into Microsoft Active Directory using Likewise Open

Managing Group Policies for Non-Windows Computers through Microsoft Active Directory

GL550 - Enterprise Linux Security Administration

Configuring Sponsor Authentication

INTEGRATION GUIDE. IDENTIKEY Federation Server for Juniper SSL-VPN

Best Practices: Integrating Mac OS X with Active Directory. Technical White Paper September 2007

GL254 - RED HAT ENTERPRISE LINUX SYSTEMS ADMINISTRATION III

Borderware Firewall Server Version 7.1. VPN Authentication Configuration Guide. Copyright 2005 CRYPTOCard Corporation All Rights Reserved

INTEGRATION GUIDE. DIGIPASS Authentication for Juniper SSL-VPN

Open-source Single Sign-On with CAS (Central Authentication Service)

VINTELA AUTHENTICATION SERVICES

Integrating EJBCA and OpenSSO

Transcription:

Client side identity management LinuxAlt 2012 Jakub Hrozek 3. listopadu 2012

Section 1 Centralized user databases

Centralized user databases User accounts in a large environment it is not practical to distribute files synchronization problems retention large organizations need to centralize user information usually not only identities but also policies several industry-standard solutions UNIX/Linux LDAP, LDAP + Kerberos, NIS Windows Active Directory (LDAP + Kerberos) LDAP is the most common identity store

Centralized user databases Basic LDAP client configuration overview using NSS and PAM modules NSS - nss pam ldapd using /etc/nslcd.conf PAM - pam ldap using /etc/ldap.conf

Centralized user databases The trouble with nss pam ldapd and pam ldap logging in as accounts from different organizations on a single client how does one ensure 1:1 mapping between identities and authentication? server redundancy and fail over what if the servers are not reachable network down, roaming laptop, disconnected corporate VPN

Centralized user databases The trouble with nss pam ldapd and pam ldap several existing solutions: ldapsearch awk > /etc/passwd in a cronjob :-) local LDAP replica persistent nscd cache usually replica of the whole directory all entries, potentially huge including attributes we are not interested in still need to solve server fail over

Centralized user databases The real LDAP clint configuration overview using traditional NSS and PAM modules NSS - nss pam ldapd using /etc/nslcd.conf id cache - nslcd PAM - pam ldap using /etc/ldap.conf auth cache - pam ccreds SUDO - sudo using /etc/sudo-ldap.conf automounter - autofs using /etc/sysconfig/autofs

Centralized user databases Integration is the key An admin can build his own identity management solution, but.. Bad level of abstraction admin wants to enroll a client, not mess around with LDAP the admin needs to understand and master several non-trivial technologies configuration scattered across the system admins get frustrated with all the config options..

Centralized user databases Integration is the key An admin can build his own identity management solution, but.. Bad level of abstraction admin wants to enroll a client, not mess around with LDAP the admin needs to understand and master several non-trivial technologies configuration scattered across the system admins get frustrated with all the config options..

Section 2 SSSD

System Security Services Daemon http://fedorahosted.org/sssd a system daemon that provides access to remote identity and authentication services developed since Sep 2008

SSSD a system daemon that provides access to identity and authentication remote resource communicates with the rest of the system using its own Name Service Switch module and a PAM module modules only act as forwarders the logic is in the daemon supports several 3rd party applications the project began as a FreeIPA client but can be (and is) used standalone.

Back ends supported by the SSSD the currently supported back ends are: LDAP for both identity and authentication Kerberos for authentication IPA Active Directory proxy

The benefits of SSSD on-disk persistent cache reduces server load seamless offline support, including authentication stateful, keeps track of state of remote servers supports server fail over detects networking change to retry operations over the network multiple identity information sources (domains) only one connection to the LDAP server is open automatic Kerberos ticket acquisition passwords stored in kernel keyring when logging in offline automatic Kerberos ticket renewal KDC must issue renewable tickets

Advanced SSSD features In addition to providing identity lookups and authentication IPA specific features Host Based Access Control SELinux user mapping OpenSSH host key caching support for 3rd party applications that store data in LDAP SSSD acts as a transparent proxy and looks up data on behalf of the applications Caching of sudo rules Caching of autofs maps

Advanced SSSD features access providers simple, per-service, per-host, IPA-specific Cross-realm Kerberos trust support pre-seeding of users for first boot

Advanced SSSD features access providers simple, per-service, per-host, IPA-specific Cross-realm Kerberos trust support pre-seeding of users for first boot

SSSD Configuration a single config file /etc/sssd/sssd.conf /etc/sssd/sssd.conf [sssd] domains = LDAP.EXAMPLE.COM [domain/ldap.example.com] id_provider = ldap ldap_uri = ldaps://ldap.example.com ldap_search_base = ou=accounts,dc=example,dc=com cache_credentials = true

Active Directory Integration SID to UID and GID mapping tokengroups support Range retrieval support Native AD schema mapping

Joining an Active Directory Domain provided by the realmd project a new package, under active development very easy to use yum install realmd realm join --user Username ad.example.com both server and desktop use case

The availability of SSSD stable release 1.9.2 - AD provider, Sudo, SELinux,... LTM release 1.8.5 SSSD is part of all the major Linux distributions Fedora, RHEL, Ubuntu, Debian, Gentoo, FreeBSD ports

Future directions further AD integration improvements Smart Card support Two Factor Authentication Desktop integration with general D-Bus interface Monitoring of expiring tickets RADIUS authentication provider

The end. Thanks for listening.

SSSD Architecture monitor - central process monitoring other worker processes the services itself run in separate processes NSS responder responds to identity information coming from the nss sss module PAM responder performs authentication on behalf of the pam sss module each domain runs in a separate process as well processes communicate using D-Bus protocol

Architecture SSSD

talloc hierarchical, reference counted memory pool system with destructors Code example struct foo *X = talloc(mem_ctx, struct foo); X->name = talloc_strdup(x, "foo"); talloc_free(x); talloc free(x->name)!= talloc free(x)!= talloc free(mem ctx) n-ary tree where you can free any part of the tree with talloc free provides destructors provides means to steal pointers from one context to another