Samba is the software stack that brings Active Directory functionality without the heavy price tag to a Linux server.
Samba can work as a file and print server, can serve as an Active Directory Domain Controller, provide DNS services, handle Kerberos-based authentication, and administer group policy. Group policy is a tool that allows you to push down specific configuration option to a specific user or group of users.
One of the other big uses for Active Directory is in the area of GPO (group policy objects) and permissions. Samba fully supports GPO settings for both computers and users. An example of Group Policy is to block access to the “Control Panel” on a Windows machine so that normal users are unable to alter settings or remove software. Each group policy created is tied to an organizational unit or OU, which then applies to all users and computers in that organizational unit.
The Samba Domain Controller can even be managed using the native Windows Active Directory admin tools. We suggest Samba for smaller installations for up to 100 users/computers. Linux is generally a lot less resource intensive that its Microsoft Windows counterpart which means less money is spent on hardware and none on licensing.
Samba can be setup in a primary/backup environment with 2 server for redundancy in case one domain controller is unavailable.
Below are graphs depicting a Samba virtual machine with 2 cores or a Xeon and 4 gigs of memory. This DC is responsible for 25 users.
CPU idle graph: This shows how much time the CPU spends with nothing to do as a percentage. Higher is better.
Memory availability graph: This shows how much memory is available on the Samba DC. More available memory is better. This D.C server has 4 gigs of memory installed and is responsible for 25 users.