Implementing SAM replication in Samba 3



Similar documents
Univention Corporate Server. Operation of a Samba domain based on Windows NT domain services

Common Internet File System

Samba as an Active Directory Domain Controller

Samba. Samba. Samba 2.2.x. Limitations of Samba 2.2.x 1. Interoperating with Windows. Implements Microsoft s SMB protocol

MCSE TestPrep: Windows NT Server 4, Second Edition Managing Resources

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

# Windows Internet Name Serving Support Section: # WINS Support - Tells the NMBD component of Samba to enable its WINS Server ; wins support = no

Windows Services. Support Windows and mixed-platform workgroups with high-performance, affordable network services. Features

Session 17 Windows 7 Professional DNS & Active Directory(Part 2)

Univention Corporate Server. Extended Windows integration documentation

How the Active Directory Installation Wizard Works

DameWare Development. DameWare NT Utilities Mini Remote Control Help Manual. Brought to you by Optrics Engineering, a division of Optrics Inc.

SAMBA VI: As a Domain Controller

Dell Spotlight on Active Directory Deployment Guide

Planning Domain Controller Capacity

Securing Active Directory Presented by Michael Ivy

Implementing Active Directory Hurdles, Obstacles, and the Finish Line. Jim McDonough Samba Team IBM Linux Technology Center April 6, 2004

Integrating LANGuardian with Active Directory

Successful DB2 NETLOGON in LAB (Sniffer on LAB HUB)

Coveo Platform 7.0. Microsoft Active Directory Connector Guide

NT4 PDC Migration to Samba 3

Intel Entry Storage System SS4200-E Active Directory Implementation and Troubleshooting

Security Options... 1

Managing Celerra for the Windows Environment

Migration Strategies and Tools for the HP Print Server Appliance

Windows Server 2008 Active Directory Resource Kit

Vector HelpDesk - Administrator s Guide

Testing Samba for Bigger Environments Samba / Linux / OpenLDAP at the german federal parliament

WirelessOffice Administrator LDAP/Active Directory Support

<Samba status report>

Samba's AD DC: Samba 4.2 and Beyond. Presented by Andrew Bartlett of Catalyst //

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Configuring and Troubleshooting Windows 2008 Active Directory Domain Services

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Course 6425C: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Using WhatsUp IP Address Manager 1.0

Migration of Windows Intranet domain to Linux Domain Moving Linux to a Wider World

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain MOC 6425

NE-6425C Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Troubleshooting Cisco Secure ACS on Windows

Skybot Scheduler Release Notes

6425C - Windows Server 2008 R2 Active Directory Domain Services

Computer Security: Principles and Practice

Configuring HP Integrated Lights-Out 3 with Microsoft Active Directory

9. Which is the command used to remove active directory from a domain controller? Answer: Dcpromo /forceremoval

How to troubleshoot Active Directory operations that fail with error 8456 or 8457: "The...

MS-6425C - Configuring Windows Server 2008 Active Directory Domain Services

Lesson Plans LabSim for Microsoft s Implementing a Server 2003 Active Directory Infrastructure

Web. Security Options Comparison

6425C: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Samba on HP StorageWorks Enterprise File Services (EFS) Clustered File System Software

Course 6425C: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Configuring Controller 8.2 to use Active Directory authentication

Designing a Windows Server 2008 Active Directory Infrastructure and Services

Agenda. NT4 PDC Migration to Samba-3. Site Objectives. Samba-3 is NOT MS Windows NT. John H Terpstra, Samba-Team jht@samba.org

TZWorks Windows Event Log Viewer (evtx_view) Users Guide

Integration with Active Directory. Jeremy Allison Samba Team

Samba 4 AD + Fileserver

AWS Directory Service. Simple AD Administration Guide Version 1.0

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

6436: Designing a Windows Server 2008 Active Directory Infrastructure and Services (5 Days)

Course 6425B: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

OpenChange overview and current server implementation

LDAP User Guide PowerSchool Premier 5.1 Student Information System

NT Authentication Configuration Guide

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

User-ID Best Practices

FreeIPA 3.3 Trust features

User Management Resource Administrator 7.2

Course 6425C: Five days

Open-Xchange Hosted Edition Directory Integration

Getting Started Guide

SQL Server Protection Whitepaper

Microsoft Windows 2000 Active Directory Service. Technology Overview

Upgrade Guide BES12. Version 12.1

Cross-Realm Trust Interoperability, MIT Kerberos and AD

Note that if at any time during the setup process you are asked to login, click either Cancel or Work Offline depending upon the prompt.

Guide to deploy MyUSBOnly via Windows Logon Script Revision 1.1. Menu

SonicWALL Global Management System Configuration Guide Standard Edition

Administering Computer Accounts and Resources in Active Directory

Modular Messaging. Release 4.0 Service Pack 4. Whitepaper: Support for Active Directory and Exchange 2007 running on Windows Server 2008 platforms.

How To Manage Ip Address Management In Windows Server 2012 (Gipam)

Course 6425C: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

Active Directory. Learning Objective. Active Directory

WHITE PAPER. Infoblox IPAM Integration with Microsoft AD Sites and Local Services

Joining. Domain. Windows XP Pro

CONFIGURING ACTIVE DIRECTORY IN LIFELINE

Issue 2EN. Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation

INTRODUCING SAMBA 4 NOW, EVEN MORE AWESOMENESS

Configuring Windows Server 2008 Active Directory

Transcription:

Implementing SAM replication in Samba 3 Richard-Guillaume Renard <rrenard@idealx.com> > IDEALX solutions > SAM replication howto > BDC side > PDC side

IDEALX the Open Source leader in France Founded in feb. 2000 Engineering Team : 60 people in january, growing... Main Shareholder : Caisse des Dépôts et Consignation (largest french investor, financing leading e-gov. projects like electronic citizen cards) IDEALX is the reference Open Source partner for French Fortune-100 and Government IDEALX User Club gathers requests from corporations and enable partial financing of Samba developments (Thanks to Gaz de France for funding the TSE work)

Best Open Source Solutions > Security solutions IDX-PKI is the #1 PKI in France Beating every large proprietary editor Expanding in Europe Recommended in the latest O'Reilly book ( PKI Open Source ) > Infrastructure Solutions Migration Server is an integrated package of OSS components for NT replacement projects (Samba, LDAP, DNS, DHCP, etc.) Adopted by most of the retail sector (Auchan, Décathlon, Castorama/King Fisher, etc.) New IMC platform for developping user friendly Web console tools

IMC in action... See more at idealx.org

Did we mention our PKI offering...? See details at idx-pki.idealx.org

And now for something completely different...

Why implementing NT replication protocol Allow NT and Samba to work together. in organizations when DCs are at distant locations Easier migration Smoother transition, and test period Samba could use this mechanism for replication too We could add some Samba specific fields.

NT4 Domain One master called PDC (Primary Domain Controller) Holds the master copy of the SAM database Many secondary called BDC (Backup DC) Holds read-only copy of the SAM SAM composed of 3 Databases Accounts Built-in LSA

Synchronisation Mechanism When a modification is made on the PDC's SAM, a notification message is sent to BDCs. Notification message contains serial number for each Databases. Synchronisation can occur immediately after a change accout policy change, locked account or after a delay (5 to 15 min) adding/deleting users/groups

Synchronisation Mechanism Replication is a pull process, BDC makes a call on the \\NETLOGON pipe of the PDC for changes after receiving notification When asking, BDC gives its databases state (serial n ) The three databases are independent for sync, database is specified when the request is made.

Two Synchronisation Types Partial Sync (NetDatabaseDeltas) contains only recent changes made on the domain based on sequence number Full Sync (NetDatabaseSync) contains all SAM database informations initiated when BDC enters in a domain when BDC is out of sync if crash happened during last sync

Notification Message Notification message contains serial n for each DBs, this number have two states: current database state BDC should be in sync, does not ask for deltas 0xFFFFFFFF BDC not in sync, ask for deltas If given serial number is wrong or outdated a Full Sync is requested by the PDC

Notification Message... Microsoft Windows Logon Protocol... Command: Announce Change to UAS or SAM (0x0a) Low Serial Number: 350 Date/Time: 1073551413 Pulse: 7200 Random: 1 PDC Name: PDC Domain Name: DOMAIN Unicode PDC Name: PDC Unicode Domain Name: DOMAIN DB Count: 3 DBChange Info Structure: index 0 Database Index: 0 Large Serial Number: 4294967295 NT Date/Time: Jan 8, 2004 09:43:33.448547363 DBChange Info Structure: index 1 Database Index: 1 Large Serial Number: 2 NT Date/Time: Jan 8, 2004 08:54:53.791530609 DBChange Info Structure: index 2 Database Index: 2 Large Serial Number: 30 NT Date/Time: Jan 8, 2004 08:56:40.934349060

DatabaseDeltas Reply contains an array of SAM objects users groups and synchronisation points modification_count delta The next serial number that should be used for the next sync is contained before the delta array

DatabaseDeltas DCE RPC Microsoft Network Logon Operation: NetrDatabaseDeltas (7) AUTHENTICATOR: return_authenticator Credential: CDB74399FCD60FB8 Timestamp: Oct 13, 2033 10:40:20.000000000 MODIFIED_COUNT: domain modified count Modify Count: 384 DELTA_ENUM_ARRAY: deltas Referent ID: 0x00167420 Num Deltas: 1 DELTA_ENUM: deltas Referent ID: 0x0016d2d0 Max Count: 1 DELTA_ENUM:User VMNTBDC3$ Delta Type: User (5) DELTA_ID_UNION: DELTA_UNION: VMNTBDC3$ Delta Type: User (5) DELTA_USER: VMNTBDC3$

DatabaseSync Serial number is contained in DOMAIN delta Microsoft Network Logon Operation: NetrDatabaseSync2 (16) AUTHENTICATOR: return_authenticator Credential: 2EA86FD3F8C14890 Timestamp: Feb 7, 1970 05:02:11.000000000 Sync Context: 1 DELTA_ENUM_ARRAY: deltas Referent ID: 0x00165f88 Num Deltas: 11 DELTA_ENUM: deltas Referent ID: 0x00165fd0 Max Count: 11 DELTA_ENUM:Domain VMTEST DELTA_ENUM:Group DELTA_ENUM:User DELTA_ENUM:Group Member

BDC side what is needed We need to act upon reception of a notification event Mailslot\NETLOGON Need to store serial number for next sync Should consider our local SAM as a read-only copy

BDC side what is working Understands notification message Ask PDC for deltas or full sync Supported domain operations : adding/deleting user, group modifying username all password policy options Based on vampire code, which is moved into rpc_client/cli_netlogon_util.c Serial numbers stored in tdb

BDC side what is left to do SAM attributes local groups privileges, trusted domains Add a system to prevent modifications of the SAM by command line tools or RPC calls?

BDC side suggestions, shortcomings Why not temporarily store deltas before applying? Current implementation requires smbd to be started before nmbd (because of the need to get PDC name) Should we remove our local SAM when full sync is requested? NT PDC seems to see Samba as a second class BDC PDC keeps sending notifications immediate notifications are not immediately sent to us

PDC side what is needed We need to support all SAM attributes, even if we don't use them. Need to keep a list of all our BDCs and their synchro status Need to keep track of operations done on the domain (users, groups, policy, etc...), all or only a part? Some fields are still unknown

Serial numbers Serial numbers seems to have their own life sometimes incrementation makes sense 1 for a user or group, 2 for domain infos sometimes not 4 deltas, increment is only 3 As a PDC should we care about?

PDC side what exists rpc_parse/parse_net.c contains stuff to marshall / unmarshall deltas client code

PDC side what's left 2 missing RPC calls NetDatabaseSync NetDatabaseDeltas All the system to keep track of the modifications done on the SAM The notification system

Roadmap The goal is to have something that works by the end of June So it can be tested and merged into 3.x