How to migrate from Microsoft Active Directory to Samba AD without a domain outage
Samba AD is migrated by coexistence: you join Samba domain controllers to the existing Active Directory domain, let them replicate alongside the Windows DCs, move the operational roles and services over, and retire a Windows DC only after a defined set of checks passes. The work is usually carried out by an internal platform or identity team, often with an implementation partner for the planning, the replication testing and the first cutover, because a mistake in the middle of the process affects every authentication request in the domain. Effort and risk depend mostly on the estate: the number of DCs, the Windows Server version and functional level, how many applications depend on Group Policy and SYSVOL, whether DNS is Windows-hosted, and how many Windows file servers or AD-integrated services rely on the domain. Confirm each of these with your own inventory before you commit to a timeline.
Before the first Samba DC is promoted, confirm the forest and domain functional level that Samba supports, since the Samba wiki documents support for the 2016 level from Samba 4.20 onward, and check that your current domain does not sit above that. Plan the DNS backend (SAMBA_INTERNAL or BIND9_DLZ) and the Kerberos implementation, because Samba uses Heimdal by default. Then move the FSMO roles deliberately with samba-tool and verify SYSVOL and idmap behavior on each DC, since Group Policy replication and UID or GID mapping are the areas where coexistence most often surprises teams. The Samba wiki also advises against running file services on a DC when several DCs exist, so move file shares to a separate domain member first. Use the Samba AD DC setup guide as the reference for these steps.
Demote the last Windows DC only after replication health, DNS resolution, Kerberos ticket issuance, GPO application on sample clients, and application authentication have all been tested against Samba DCs in a non-production copy of the domain. Keep a tested recovery path, including a verified backup of the Windows DCs and a documented rollback plan, until the Samba estate has run stably through a full business cycle. Ask your implementation partner for a written scope that lists these checks, the owner of each one and the exit criteria, and confirm with Samba's release planning page which release series your chosen build belongs to so that you plan for its support window.
Which Active Directory capabilities move to Samba AD cleanly and which need rework
This table maps each major Active Directory capability to its Samba AD equivalent and marks it as clean, needs rework or gap. Read it as a checklist for your estate: any row marked needs rework or gap is a design decision to resolve before the first Samba DC joins the domain. Group Policy and SYSVOL replication status must be confirmed against the Samba version you plan to deploy.
| Active Directory capability | Samba AD equivalent and status | What to check before cutover |
|---|---|---|
| AD DS domain and directory services | Clean: Samba AD DC joins the existing domain and replicates the directory with Windows DCs | Confirm the domain functional level is at or below what the Samba version supports |
| Kerberos authentication | Clean: Samba uses Heimdal KDC by default, with experimental MIT Kerberos support when built against the system library | Test ticket issuance and service principal names for every application that uses Kerberos |
| DNS with SAMBA_INTERNAL backend | Clean for small estates: built-in DNS server that Windows clients can use for AD records | Review zones, forwarders and scavenging settings against your current Windows DNS configuration |
| DNS with BIND9_DLZ backend | Needs rework: requires a BIND build with the DLZ module, and the wiki warns against the NONE backend and does not support BIND9_FLATFILE | Plan DNS build and patch ownership, and confirm which backend your Samba release supports |
| Functional levels up to 2016 | Needs rework or gap: Samba supports up to the 2016 level, so 2019 and later domain levels are not available | Check the current domain and forest functional level, then confirm the Samba release that supports it |
| Administration with samba-tool | Needs rework: command-line administration replaces ADUC and PowerShell AD module workflows | Train administrators and script existing AD tasks with samba-tool equivalents |
| Group Policy and SYSVOL replication | Gap or needs rework: GPO objects are replicated through SYSVOL, and feature coverage varies by Samba version | Confirm the GPO features you rely on against the Samba release in use before planning any migration |
| File serving on domain controllers | Gap by design: Samba advises against file serving from an AD DC when multiple DCs exist | Move shares to a separate Samba domain member or file server before retiring Windows file servers |
| Windows client behavior | Needs rework: clients join and authenticate, but policy, login scripts and printer or driver behavior must be tested | Pilot with representative Windows client builds and record any sign-in or policy differences |
The migration sequence from inventory to decommissioning Windows DCs
This sequence moves a Microsoft Active Directory domain onto Samba AD domain controllers in stages, so each change is tested, observed and reversible before the next one begins. The end state is a Samba-only domain with the Windows DCs removed and a documented record of every check that passed.
Inventory the forest before changing anything
The directory team records where each FSMO role sits, which DNS zones are Active Directory-integrated, how sites and subnets map to the replication topology, and which GPOs and SYSVOL contents exist, including scripts and preferences that clients depend on. They also record the current domain and forest functional levels and the Windows Server version of every DC. The output is a written inventory, reviewed by the identity, DNS and application owners, that lists every item Samba must reproduce or that the team has agreed to retire. Confirm the Samba release and the functional level it supports in the Samba documentation before you start.
Run a lab pilot on a copy of the domain
The team restores a recent backup of the domain into an isolated network, or builds an equivalent test forest, and runs the coexistence steps there first. Staff join a Samba DC to the copy, transfer a test role, and check DNS resolution, Kerberos ticket issuance, LDAP queries and sample client logons from Windows and Linux machines. Each failure is logged with its root cause, such as an unsupported DNS backend, a GPO setting that Samba does not apply, or a client that depends on an AD-only feature. The pilot closes when the runbook runs end to end without manual fixes and the rollback procedure has been rehearsed.
Join Samba DCs as additional domain controllers
On production, the team provisions Samba DCs on Linux hosts, joins them to the existing domain as additional DCs, and lets replication bring the directory data across. The DNS backend is chosen from the supported options (SAMBA_INTERNAL or BIND9_DLZ), and the team does not use the NONE backend or BIND9_FLATFILE. Administrators confirm that the Samba DCs appear in the correct sites, that SYSVOL content has replicated, and that the idmap configuration assigns stable UID and GID values across all DCs. The step is complete when replication health checks are clean on every Windows and Samba DC and clients resolve the domain through both sets of servers.
Transfer FSMO roles to Samba
The team moves each FSMO role from the Windows DCs to the Samba DCs in a planned window, one role at a time, and checks ownership after each transfer. Administrators verify that the schema, domain naming, infrastructure, RID and PDC emulator roles report the expected holders, and that time synchronization on the PDC emulator is correct for Kerberos. Anything that still depends on a specific role holder, such as a legacy script or a backup product, is updated and retested. The output is an updated role map that matches the plan, with each change recorded alongside the time it was made.
Validate replication and client behavior in parallel
For a defined observation period agreed with the business, the team runs Windows and Samba DCs side by side and compares directory state, GPO application, DNS answers and authentication logs. They test logons from representative client builds, file access through the separate file servers, and the applications that bind to LDAP or use Kerberos. Replication errors, SYSVOL drift and Kerberos failures are treated as blockers. The step is complete when the team has evidence that normal logon, policy and application behavior is unchanged, and the owners of each application have signed off in writing.
Demote Windows DCs one at a time
The team demotes Windows DCs individually, starting with those that hold no roles and are least used, and waits for replication to settle after each one. Before each demotion they take a current backup, confirm that remaining DCs answer for every site, and confirm that DNS delegations and DHCP or application references no longer point to the server being removed. The output is a dated record for each demotion showing the replication state before and after, and a verified backup retained under the organization's retention policy.
Run final checks before demoting the last Windows DC
Before the final Windows DC is removed, the team confirms that every FSMO role and the PDC emulator are held by Samba DCs, that Samba DCs hold the DNS zones and that no client, service account or application is still authenticating against the Windows server. They review logs for NTLM or Kerberos traffic addressed to the last Windows DC, check that the Samba domain functional level meets the requirement of the remaining Windows Server features, and confirm that a restore from backup has been tested. The owner of identity operations signs the go or no-go record, and rollback steps are kept ready until the decision is final.
Decommission Windows hosts and document the result
After the last Windows DC is demoted and removed from the network, the team powers down the hosts, revokes or reassigns their licenses where the contract requires it, and removes stale DNS records, computer objects and monitoring entries. They update the runbook, the disaster recovery plan and the access reviews to reflect Samba as the only domain controller platform. The step closes when the inventory from the first stage is reconciled with the live environment and the final evidence pack is stored where auditors and the security team can retrieve it.
How Samba DCs and Windows DCs run side by side during cutover
During cutover, Samba DCs join the existing Active Directory domain as additional domain controllers, replicate with the Windows DCs, and keep serving Kerberos and LDAP while FSMO roles and clients move over. Nothing in the parallel run should change the domain itself, so the first task is to confirm that every Windows DC, the domain functional level and the forest functional level are where you expect them to be before any Samba DC is promoted. The Samba wiki covers the join steps in *Setting up Samba as an AD DC*, and the functional level behavior in *Raising the Functional Levels*. Samba supports the 2008 R2 level since 4.0, the 2012 and 2012 R2 levels since 4.19, and the 2016 level since 4.20, so confirm which Samba release you will run before you plan any level changes.
The highest-risk items in a mixed domain are DNS and replication. Each DC must resolve the domain's SRV records, and clients should point at DNS servers that can answer for the domain. If a Samba DC uses the SAMBA_INTERNAL backend while Windows DCs run Microsoft DNS, or the zones are only partly transferred, clients can split between two views of the directory. Confirm the DNS backend (SAMBA_INTERNAL or BIND9_DLZ, since the wiki warns against NONE and does not support BIND9_FLATFILE), check replication with samba-tool drs showrepl on each DC, and check that SYSVOL content matches across DCs. Samba's SYSVOL and idmap handling need the same scrutiny, because Group Policy and UID or GID mapping must agree on every DC that a client can reach.
The Samba wiki advises against running an AD DC as a file server when more than one DC is present, so file serving should move to a separate Samba domain member. In practice, that means existing shares are re-created on member servers joined to the domain, with permissions re-applied and tested with real user accounts, before any DC is retired. Treat this as its own work item with its own rollback plan, since it changes where users reach their data. Before you demote the last Windows DC, confirm with your team which services still depend on it, including Group Policy processing, DNS delegation, time synchronization and any application that hard-codes a Windows DC name.
What data and integrations need to be rebuilt in Samba AD
A domain move is more than copying objects. Each item below has a different source of truth, a different Samba-side task, and a different owner, so the inventory should be built before the first Samba DC joins. The ldifde export is one documented starting point to review, not a complete copy of the domain.
Users and groups
Users, groups and their memberships live in the AD database and replicate with it, so Samba joins them through replication rather than through an import. Review the export for AD-only attributes, disabled accounts and nested group membership before planning any rebuild. Passwords are not carried in the AD export, so each account needs a reset or a re-established credential under the migration plan. Confirm which accounts must keep their current passwords for service use and which can be reset by users.
Computers and machine accounts
Computer objects represent domain-joined Windows and Linux machines and carry their own secure channel passwords. These do not move as a list you can re-create by hand. Plan which hosts rejoin the Samba domain, which are retired, and which keep working through the transition. Check every workstation and server against the Windows client compatibility notes before the first client is pointed at a Samba DC.
DNS zones and records
AD-integrated DNS zones hold the SRV records that clients use to find domain controllers and Kerberos services. Samba serves these through the SAMBA_INTERNAL or BIND9_DLZ backends, and the wiki warns against the NONE backend. Rebuild each zone, including reverse zones and forwarders, then verify SRV records from clients before moving any DNS query traffic. Confirm which backend your team will operate and who owns zone changes during coexistence.
Group Policy and SYSVOL content
GPO definitions sit in the AD database, while their files sit in SYSVOL and replicate with DFS-R on Windows DCs. Samba does not reproduce every Group Policy behavior, so inventory each GPO, its scope and its settings before deciding what to keep, rewrite or retire. Copy SYSVOL content only after you have confirmed the synchronization method you will run during coexistence, and test each policy on a pilot OU first.
Kerberos service accounts and SPNs
Service accounts with service principal names (SPNs) hold keytabs that applications and databases use for Kerberos. Keytabs bound to AD keys break when the service moves, so each SPN and its keytab needs an owner and a rebuild step. Samba uses the Heimdal KDC by default, with MIT Kerberos support available when built against the system library. Check which applications depend on the KDC and whether they need new keytabs after cutover.
LDAP, RADIUS, SSO and file shares
Applications bound to LDAP, RADIUS clients, SSO connectors and file shares each store their own bind accounts, search bases and share permissions. These are the integrations most often missed in an inventory because they sit outside AD itself. For each one, record the bind DN, the search base, the attributes it reads and the share ACLs, then test it against Samba. Where SSO runs through a federation product, confirm how that product will read identity from Samba before retiring the Windows source.
How the migration differs by domain size and starting point
A single-site domain with a small number of domain controllers usually has the shortest coexistence period, because there are fewer replication paths to validate and fewer clients that depend on a specific DC. The work is concentrated in one site, so the team can join a Samba DC, verify it, move the FSMO roles and then retire the Windows DCs in a short, controlled sequence. Testing can be done in one change window with a clear rollback point for each stage.
- Join and verify first: Add one Samba DC, confirm replication with the existing domain controllers and check DNS resolution from a sample of Windows and Linux clients before adding a second.
- Fewer role moves: Transfer the FSMO roles deliberately and record which DC holds each role before and after the change.
- Client sampling: Test logon, group membership and Kerberos ticket issuance from representative workstations and service accounts, not only from administrator accounts.
- Short rollback window: Keep a verified backup of the Windows DCs until the final checks pass, since a single site leaves little room for error.
- Last-DC checks: Confirm that no service still points to the Windows DC being demoted, including hard-coded addresses in applications and network devices.
Before demoting the last Windows DC, confirm that every role, replication partner and application dependency has been verified against the Samba domain controllers in writing.
A multi-site estate with branch domain controllers needs a longer sequence because each site has its own replication topology, DNS configuration and local authentication dependency. Branch DCs are often the last systems anyone reviews, so they need explicit inventory and staged replacement. The sequence usually moves from the hub sites outward, with each branch proving that it authenticates users locally before its Windows DC is removed.
- Site and subnet inventory: Map every site, subnet and site link to its domain controllers before the first Samba DC is joined.
- Staged replacement by site: Add a Samba DC to a site, confirm replication and client authentication, and only then retire the Windows DC in that site.
- Branch failure tests: Simulate loss of the WAN link from each branch and confirm that local users can still log on and that services resolve names locally.
- DNS and site-aware clients: Verify that DNS records for each site resolve to the correct DCs and that clients locate a DC in their own site.
- Hardware and virtualization review: Check that each branch host meets the Samba platform requirements and has a tested backup and restore path.
Confirm that every branch passes a logon and DNS test with the Windows DC switched off, because a site that works only when a neighboring DC is reachable is not yet ready for retirement.
A domain that relies heavily on Group Policy, SYSVOL-based scripts or file servers needs more testing than a directory-only domain. Group Policy and SYSVOL replication behavior differ from Windows, so the team must confirm which policies apply, which scripts run and which file shares depend on domain controllers. The Samba wiki advises against running file serving on an AD DC when multiple DCs exist, so file shares usually move to separate domain member servers as part of the plan.
- Group Policy inventory: List every GPO, its scope, its settings and whether it is still needed, then test each one on a Samba-joined client before the cutover.
- SYSVOL and script checks: Confirm how logon scripts and policy files are distributed and synchronized between DCs during coexistence.
- File serving separation: Plan new file servers as domain members so that shares do not depend on the directory role of a DC.
- Share permission tests: Validate ACLs, group membership and access from each client type against the new file servers.
- Application dependency review: Identify line-of-business applications that query AD directly for groups or attributes and test them against Samba.
Before retirement, confirm that every GPO and script has been tested on current client builds, since policy behavior is the most common source of unexpected change in these domains.
A domain still running older functional levels must have its levels raised before the Samba migration can be planned in detail. Samba supports the Windows Server 2008 R2 level since Samba 4.0, the 2012 and 2012 R2 levels since Samba 4.19 and the 2016 level since Samba 4.20. Because the domain functional level is a property of the forest and domain, the raise is a change to the existing Windows estate and needs its own change control, backup and rollback plan before any Samba DC is added.
- Check the current level first: Confirm the forest and domain functional levels and the Samba release that supports the target level.
- Raise levels on Windows first: Raise the levels in a test forest where possible, then in production, with a documented rollback path.
- Match the Samba release to the target: Choose a Samba release that supports the level you need, and confirm its support window on the Samba release planning page.
- Retest clients after the raise: Older clients and applications may behave differently at a higher level, so test them before the migration begins.
- Document the baseline: Record the functional levels, replication health and DC inventory before and after the raise.
Confirm the target functional level and Samba version together in writing before any DC is joined, because the two must match for the coexistence path to be supported.
What usually goes wrong when Windows DCs are retired
Most failed retirements of Windows domain controllers trace back to a short list of causes: a demotion done before the checks pass, a functional level that Samba does not support, or dependencies nobody wrote down. Each card below names one failure point in a Samba AD migration and the check that prevents it.
Demoting the last Windows DC early
Demotion removes the only copy of AD services that remaining clients and applications still rely on, so it cannot be treated as a cleanup step. Before demoting the last Windows DC, confirm that every Samba DC replicates cleanly, that FSMO roles have moved, that DNS resolves the domain from every subnet, and that a recent system state backup exists. Treat the demotion as the final step of a signed-off checklist, not as the start of one.
Unsupported functional levels
Samba supports the 2008 R2 functional level from Samba 4.0, the 2012 and 2012 R2 levels from Samba 4.19, and the 2016 level from Samba 4.20. A domain still at a level newer than the Samba version in use cannot be served correctly, so the Samba release must be chosen after the current level is read. Confirm the domain level with the Windows tools and the target Samba release on the Samba functional level guidance before any DC joins.
DNS misconfiguration
Clients find domain controllers, Kerberos realms and global catalog entries through DNS SRV records, so a Samba DC that is missing from DNS or points to stale Windows addresses will break logons without any obvious error. Choose the DNS backend deliberately: SAMBA_INTERNAL or BIND9_DLZ are supported, while the NONE backend and BIND9_FLATFILE are not. After each DC change, query the SRV records from a Windows client and a Linux host.
SYSVOL and policy drift
Group Policy objects and logon scripts live in SYSVOL, and a Samba DC that holds a stale or partial copy will apply different policy than the Windows DCs it replaces. Compare SYSVOL contents across all domain controllers before and after each change, and check that the replication path carries the expected GPO folders. Plan for Group Policy gaps separately, because Samba does not cover every Windows policy extension that administrators rely on.
Idmap and UID mismatches
Samba assigns POSIX UIDs and GIDs through its idmap configuration, and a range that differs from the one already used by Linux file servers or NFS clients changes file ownership on the same data. Set the idmap backend and ranges before the first user logs on, record the SID to UID mapping, and test ownership on a sample share. Mismatches discovered after production access are hard to reverse without rewriting permissions.
Undocumented application LDAP dependencies
Line-of-business applications, scanners, printers and older appliances often bind to a DC with a hard-coded hostname, a service account or an LDAP query that nobody on the current team wrote down. These bindings fail silently or lock users out after a DC is retired. Collect bind DNs, LDAP ports, query base DNs and Kerberos service principals from firewall logs and application configurations, then test each one against Samba before the Windows DC is turned off.
What drives cost and effort in an Active Directory to Samba AD migration
What drives the effort of moving from Active Directory to Samba AD?
The size and shape of the existing domain drives most of the effort: the number of domains and forests, the count of domain controllers, the Group Policy estate, the DNS zones, and how many applications authenticate with Kerberos, LDAP or NTLM. Each application that depends on a specific Windows behavior adds test work before any Samba DC is promoted. Ask the implementation partner to inventory these dependencies first, because the inventory sets the test scope and the cutover plan. Confirm with Samba's documentation which features your estate uses before assuming parity.
Which costs are one-time and which recur after a Samba AD migration?
One-time costs cover the assessment, the lab build, the coexistence work, testing, cutover and decommissioning of Windows DCs. Recurring costs cover staff time to patch and monitor Samba DCs, backups, monitoring tools, and any support contract you choose to buy. Samba itself is licensed under GPL-3.0, so there is no per-server license fee for the directory software. Samba publishes release series with six months of full support, six months of maintenance mode and six months of security fixes only, so budget for a planned upgrade cadence rather than long-term reliance on one release.
How does Samba's support window affect ongoing operating cost?
Samba's release planning gives each release series six months of full support, six months in maintenance mode and six months of security fixes only, and Samba 4.25 started in September 2026. This means each DC fleet needs an upgrade cycle that fits inside those windows. Each upgrade carries test and change-control effort, and it recurs. Decide who performs upgrades, whether that is your team, a retained partner or a commercial support provider, and write the cadence into the operating model. Confirm the current support status of any series with the Samba release planning page before you choose a version.
What skills does a team need to run Samba AD domain controllers?
The team needs working knowledge of Kerberos, DNS, LDAP, Group Policy behavior, and the samba-tool command used to administer Samba AD domains. Engineers who already run Linux servers and understand Windows domain concepts usually adapt faster than teams that have only managed Windows. Budget for training or pairing time, and for one or two people who own the directory after cutover. Ask any partner to show how knowledge transfers to your staff through runbooks, reviewed change records and joint operations, and to name who holds on-call responsibility for the directory.
How much testing does an Active Directory to Samba AD move require?
Testing usually costs more time than the directory build itself. Plan test cases for Windows client logons, Group Policy application, SYSVOL replication, DNS resolution, file access through separate member servers, and every application that binds to the directory. Samba's wiki advises against using an AD DC as a file server when there are multiple DCs and recommends a separate Samba domain member for file serving, so file services may need their own build and test cycle. The functional level you need also limits which Windows Server features can be enabled. Samba supports functional levels up to 2016 in the release line described by the wiki, so confirm the level your domain requires before scoping tests.
What should a written scope for this migration include?
A written scope should list the domains and forests in scope, the number of DCs and their roles, the functional level now and after migration, the DNS backend chosen, and the SYSVOL and idmap synchronization approach. It should name the applications and services to be tested, the rollback plan for each stage, and the criteria for demoting the last Windows DC. Add the named deliverables, such as runbooks and test evidence, the acceptance criteria, the exclusions, and who is responsible for each step. Most engagements are fixed-scope at DeployOpen, so the written scope sets the price and timeline.
Can we run this migration ourselves, and when should we hire help?
A capable team can run a Samba AD migration itself if it has the Linux, DNS and Kerberos skills, a lab to rehearse in, and time to test each application. Hire help when the estate is large, when Group Policy or file services carry heavy dependencies, when regulated evidence is required, or when the team cannot absorb the cutover risk alongside daily operations. DeployOpen plans, implements, tests, documents and supports self-hosted platforms in your own infrastructure, and it prepares evidence for compliance assessments without issuing audit reports. Ask for a written scope that separates the parts your team keeps from the parts a partner delivers.
What are the main risks that change the cost of the migration?
The largest cost drivers are unplanned dependencies, failed coexistence tests and extended parallel running. Risks grow when Windows-only applications, legacy NTLM dependencies or custom Group Policy settings appear late in the project. Parallel running adds cost because two directories must stay in step. Ask for a risk register in the scope, with each risk linked to a test and an owner, and agree on a rollback point before the last Windows DC is demoted. Confirm each Samba capability you rely on against the official Samba wiki pages before the cutover date is fixed.
Which factors raise or lower migration cost and duration
This table lists the factors that most change the effort of moving from Active Directory to Samba AD, with why each matters and how to reduce it. Read each row against your own estate, since the largest driver is often the one you have measured least.
| Driver | Why it changes cost or effort | How to keep it down |
|---|---|---|
| Domain size and number of DCs | More domain controllers, sites and replication links mean more promotion, replication checks and rollback planning. Each extra DC is another system to build, monitor and retire. | Inventory every DC, site and replication link first. Promote Samba DCs in small batches and confirm replication health after each one. |
| Applications bound to LDAP | Every application that binds to LDAP, LDAPS or Kerberos needs a test for its bind method, search base, attribute names and service accounts. Apps with hard-coded Windows assumptions are the usual source of delay. | Build a register of bound applications with their bind DN, attributes and protocol. Group them by risk and test the highest-impact ones first. |
| Group Policy complexity | Samba does not provide full Group Policy parity, so GPO settings must be inventoried and either reimplemented, moved to another tool or retired. Large, layered GPO sets take far more analysis than a simple policy set. | Export and list GPOs with their scope and settings. Remove unused policies and decide per setting whether it still applies before migration starts. |
| File server dependencies | Samba's documentation advises against running an AD DC as a file server when there are multiple DCs. Shares, DFS namespaces and SYSVOL-dependent logon scripts may need a separate file server design, which adds scope. | Map every share, DFS target and logon script. Plan a separate Samba domain member for file serving and confirm the SYSVOL and idmap design with the Samba wiki. |
| Functional level | Samba supports domain functional levels up to 2016 (since Samba 4.20). A domain already at a level Samba cannot reach needs a different decision, and raising the level is a one-way change that must be tested. | Check the current domain and forest functional levels early. Confirm the target level with the Samba raising functional levels guide and plan a test domain before raising anything in production. |
| Samba version lifecycle | Each Samba release series gets six months of full support, six months of maintenance and six months of security fixes only. Deploying on a series near the end of its support window means a second upgrade during the project. | Choose the stable series at the start of the project and confirm its support dates on the Samba release planning page. Schedule the upgrade cycle into the project plan. |
| Testing scope | Testing covers Windows client logon, Kerberos ticket behavior, DNS, GPO results, application binds and failover. Broader test coverage lengthens the project but reduces the risk of a failed cutover. | Write test cases from the application and GPO registers. Agree in writing which tests are required for sign-off and who runs each one. |
| Staff skills | Running Samba DCs requires Linux administration, Kerberos, DNS and samba-tool experience. Teams without these skills either train during the project, which takes time, or buy outside help, which adds a recurring or one-time cost. | Assess the team's skills against the runbook before scheduling. Ask any implementation partner for a written handover and runbook, and confirm which tasks remain with your staff afterward. |
What your team must confirm before committing to Samba AD
Before you commit, confirm that Samba supports the features your estate depends on in the exact release you plan to run. Samba's documentation lists supported functional levels and feature gaps by version, and the functional levels the Samba wiki describes are the first thing to check: the 2008 R2 level has been supported since Samba 4.0, the 2012 and 2012 R2 levels since Samba 4.19, and the 2016 level since Samba 4.20. If your forest sits above the level your target release supports, the migration cannot proceed as planned. Pull the current domain and forest functional levels from your Windows environment, then compare them against the Samba release you intend to deploy, not the one you tested. Because Samba 4.25 is the current stable release, confirm whether your chosen series is still in full support or has moved to maintenance or security-only status under the Samba release planning schedule.
Next, decide your DNS backend and your Kerberos library, and confirm both with Samba's current documentation. The Samba wiki names SAMBA_INTERNAL and BIND9_DLZ as supported DNS backends, warns against the NONE backend, and states that BIND9_FLATFILE is not supported. Samba's AD DC uses Heimdal Kerberos, and the wiki describes experimental MIT Kerberos support in Samba 4.7 or later when built against the system library. Check whether your Windows DNS zones, dynamic update rules and forwarders can be reproduced on the chosen backend, and whether your monitoring or security tools expect a particular Kerberos implementation. Treat any use of the experimental Kerberos path as a decision to be documented and tested separately, not a default.
Finally, inventory every Group Policy Object, logon script, SYSVOL file and file-server role in use, and test each one against Samba. Samba's wiki advises against running an AD DC as a file server when there are multiple DCs, so plan a separate domain member for file serving. Confirm how your GPOs, administrative templates and client-side extensions behave on the Windows client versions you still run, and confirm SYSVOL replication behavior in a lab that mirrors your DC count and sites. Record the results in a written compatibility matrix, have each owner sign off their items, and do not demote the last Windows domain controller until that matrix is complete and the rollback path has been rehearsed.
Questions buyers ask before moving from Active Directory to Samba AD
What does a move from Active Directory to Samba AD cost?
The cost is mostly people time, plus the Linux servers and any support contract you choose. Samba itself is licensed under GPL-3.0, so there is no per-server software license for the directory itself. The main cost drivers are the number of domains and DCs, how many Group Policy, DNS and application dependencies you must re-test, how much of the Windows Server and CAL spend you can actually remove (some Windows client CALs may still apply to other servers), and the skills your team already has. Ask any implementation partner for a fixed-scope quote that lists each phase, the environments covered, the test plan, the rollback steps and what is delivered in writing. Ongoing support is a separate, recurring line item.
How long does an Active Directory to Samba AD migration take?
The duration depends on the size of the forest, the number of DCs and the number of systems that authenticate against them, and no duration is fixed by the Samba documentation. Most of the calendar time goes to inventory, testing DNS and Kerberos behavior, and running Samba DCs alongside Windows DCs in a coexistence period. Ask for a timeline that separates the coexistence stage from the cutover and the decommissioning stage, and confirm which dependencies each stage must clear. Check the Samba release planning page for the support window of the release series you intend to deploy, because a long project should not start on a series near the end of full support.
Can our internal team run this migration without outside help?
A team with strong Linux, DNS, Kerberos and Group Policy experience can run a Samba AD project, but the work is more than installing a package. Your team needs to plan the functional level, handle SYSVOL and idmap configuration, verify DNS backends, and test every Windows client and application that depends on AD. The Samba wiki advises against using an AD DC as a file server when multiple DCs exist, so file services need their own design. If the team has not run a directory before, budget for training or for an outside partner to plan, implement and document the work. Ask any partner to state in writing who performs each task and which tasks remain with your staff.
What happens to passwords when we export users from Active Directory?
Passwords do not come with a standard AD export, so user accounts must be re-created or re-set through a controlled process. Plan how each user gets a new credential: a forced reset at first logon, a staged rollout by group, or a coordinated cutover window. Confirm with your security team how MFA enrolment, service account credentials and Kerberos keytabs will be rebuilt, because these do not move with a user list. Keep the export as a reconciliation source, and check the results against the source directory before anyone signs off on the cutover. The export file itself contains personal data and should be stored and deleted under your data handling rules.
What should we check before demoting the last Windows domain controller?
Before demoting the last Windows DC, confirm that every FSMO role is held by a Samba DC and that replication is healthy in both directions. Check that DNS resolves the domain, SRV records and the global catalog answer correctly from every subnet, and that Kerberos authentication works for test users and service accounts. Verify that SYSVOL content and Group Policy objects are present and applied on sample clients, and that idmap ranges are consistent so file permissions keep their meaning. Run a rollback rehearsal, confirm backups of the Windows DC and its configuration, and make sure every application that bound to the old DC has been re-tested. Record the results so the sign-off can be reviewed later.
Does Samba AD support the functional level we run today?
Samba supports the Windows Server 2008 R2 functional level since Samba 4.0, the 2012 and 2012 R2 levels since Samba 4.19, and the 2016 level since Samba 4.20. If your forest runs a level above 2016, Samba is not a drop-in replacement for that level, so confirm the level before you plan the coexistence period. Raising a functional level is done with samba-tool, and it is one-way in most cases, so test it in a non-production copy first. Ask your partner to confirm the Samba version that matches your current level and to document the steps for the raise.
Which Group Policy and file services gaps should we expect?
Expect gaps in Group Policy and file serving rather than in basic authentication. Samba documents its own support for Group Policy and SYSVOL, but the features your estate uses, such as specific policy extensions, must be tested against your own GPOs before you rely on them. The Samba wiki recommends a separate Samba domain member for file serving when multiple DCs exist, which changes your file server design. Build an inventory of GPOs, logon scripts and file shares, then test each one on a Samba DC with a sample of Windows clients. Record anything that does not behave the same way and decide whether to rework it, keep a Windows server for that function, or accept the change.
Will Windows clients and Linux hosts keep working after the cutover?
Most Windows clients keep working when the domain, DNS and Kerberos settings are correct, but each client type should be tested before cutover. Pay attention to DNS configuration, time synchronization, domain join state and any application that relies on specific AD schema attributes. Linux hosts that join through SSSD or Winbind need their own tests, and those hosts may also be a reason to review whether FreeIPA is a better fit for Linux identity. Ask for a test matrix that covers each Windows version, each Linux distribution and each line-of-business application you run today.
How DeployOpen scopes and runs an Active Directory to Samba AD migration
DeployOpen agrees the scope, deliverables and timeline in writing before any migration work starts. For a move from Microsoft Active Directory to Samba AD, that written scope is where the real decisions get made: which domain controllers become Samba DCs, which Windows DCs are retired and in what order, whether the SYSVOL and idmap approach is confirmed in your environment, and which applications, DNS zones and file shares depend on the existing domain. Each of these is a named deliverable with an owner and an acceptance check, so you can see what is being done before you commit. DeployOpen does not publish a price list. A quote follows from the written scope, and the components that drive it are the number of domains and sites, the number of Windows DCs to retire, the depth of application testing, and whether your team or DeployOpen performs the cutover steps.
DeployOpen implements and hardens Samba AD inside your own infrastructure, whether that is your data centers, your cloud accounts or an isolated network. The work covers provisioning the Samba DCs, confirming the functional level before any raise, and running the pre-demotion checks: replication health, FSMO role placement, DNS resolution from every client subnet, and a verified restore path for the last Windows DC. Hardening follows your own baseline, including how the Samba DCs are patched and monitored. Because the Samba wiki advises against running an AD DC as a file server when multiple DCs exist, any file serving that stays in scope is designed as a separate Samba domain member as a fixed deliverable, not an afterthought. Ask us to confirm each of these in the written scope before work begins.
DeployOpen delivers documentation the operations team can run without us: the as-built configuration, the runbook for adding or removing a DC, the cutover and rollback plan, and the evidence that each check passed. Where your organization needs control evidence for an assessment, DeployOpen prepares the systems and records for it, but independent auditors issue any report or attestation. After handover, ongoing support, upgrades when new Samba releases ship, and continuous testing are available as retainers, which are priced separately from the fixed-scope project. Samba's release planning, which describes how long each release series receives full support, maintenance and security fixes, is the reference to build the retainer around, and it should be confirmed against the current release calendar before you sign.

