Slashdot Mirror


Samba 4.0 Released: the First Free Software Active Directory Compatible Server

Jeremy Allison - Sam writes "We released Samba 4.0 today, containing the first compatible Free Software implementation of Microsoft's Active Directory protocols. 'Samba 4.0 comprises an LDAP directory server, Heimdal Kerberos authentication server, a secure Dynamic DNS server, and implementations of all necessary remote procedure calls for Active Directory. Samba 4.0 provides everything needed to serve as an Active Directory Compatible Domain Controller for all versions of Microsoft Windows clients currently supported by Microsoft, including the recently released Windows 8. The Samba 4.0 Active Directory Compatible Server provides support for features such as Group Policy, Roaming Profiles, Windows Administration tools and integrates with Microsoft Exchange and Free Software compatible services such as OpenChange.'" Full release notes are available, and you grab the files from the download page.

47 of 343 comments (clear)

  1. No more licensing fees :) by somersault · · Score: 5, Interesting

    Oh hell yes

    --
    which is totally what she said
    1. Re:No more licensing fees :) by somersault · · Score: 4, Interesting

      I already have loads of client licenses, but this means no more server licensing, so it will be significantly cheaper for small businesses to build a small network with full redundancy, and massively cheaper to build out large networks. Get this onto Ubuntu Server with a friendly interface, and MS will be close to dead in the water as far as servers go.

      --
      which is totally what she said
    2. Re:No more licensing fees :) by wonkey_monkey · · Score: 4, Informative

      SQL may be SQL, but MSSQL is not MySQL is not PostgreSQL.

      --
      systemd is Roko's Basilisk.
    3. Re:No more licensing fees :) by kagaku · · Score: 5, Informative

      Spoken like someone who has NEVER done SQL development. SQL most definitely is not SQL, it's a world full of vendor specific dialects of SQL, each varying in subtle and incompatible ways. Not to mention each requires a different method of connection, protocol, authentication and integration.

      --
      everyday is another shooter.
    4. Re:No more licensing fees :) by Tailhook · · Score: 4, Informative

      ODBC? JDBC?

      Neither of these normalize vendor specific dialects. Both of these require vendor specific drivers to implement vendor protocols. All of this leads to costly subtleties.

      The grandparent is correct, both in its assertions about SQL and of you.

      --
      Maw! Fire up the karma burner!
    5. Re:No more licensing fees :) by bigstrat2003 · · Score: 4, Insightful

      I'd still wait 1/2 a year to put it into a test environment...

      Why? Isn't the whole point of a test environment to find out if something has issues? I think that interested parties should put it into a test environment immediately, cause that's why they have a test environment. But yes, wait some time to put it into production.

      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    6. Re:No more licensing fees :) by erroneus · · Score: 5, Insightful

      Sorry, but no. There are bunches and bunches of PHBs out there who will perpetually doubt that anyone can make a Microsoft server as good as Microsoft and would be more than a little afraid that by doing this, they would be in violation of some sort of license requirement. At the very least, it would void any support services if an exchange server were to connect to a Samba 4 AD domain. PHBs care a lot about stuff like that even if people rarely if ever use Microsoft's support.

      For that dream to become a reality, a big player out there would have to step up and put their branding and reputation behind it. For example, IBM might be a great candidate for that. PHBs still know who IBM is. RedHat might not get the reception Linux users might think they deserve. Oracle, as much as I would like to see them die in a fire, might also be able to pull it off.

      For now, the IT world is ruled by PHBs and one must always consider what things they might believe regardless of how ridiculous it may actually be.

    7. Re:No more licensing fees :) by aquarajustin · · Score: 5, Interesting

      This is why I don't work for a PHB. In fact, he's balding a bit. I have the best boss ever. He just gave me the green light to be early adopters and run this in production (once it passes a few sanity checks). We've been running the alphas and betas with much success. Samba team ftw!! Thanks guys! I've been waiting for this for so long.

    8. Re:No more licensing fees :) by Bill+Dimm · · Score: 4, Interesting

      Why would you be adding/dropping fields outside of installation/upgrading?

      I'm not sure whether you intend "you" in the above to mean the person who wrote the "accounts software" referenced at the beginning of this thread, or me personally. My personal experience was with writing document clustering software (groups related documents together based on analysis of the content) that could analyze the text stored in virtually any SQL database with an ODBC driver and export the cluster results back into the database as a set of additional columns. It would add a Cluster ID column (rows with the same ID would be in the same cluster), a column indicating whether the document was the representative document (i.e. approximately the center) for the cluster, and a few other columns. If the user ran multiple calculations on the same database and wanted to replace some old results instead of adding new columns, the old columns would be dropped and replacement columns would be added -- this was done because sizes needed for the columns may vary between different calculations, so simply overwriting the old ones wouldn't necessarily work. Getting everything to work across all test databases (Oracle, MSSQL, DB2, MySQL, PostgreSQL) was a major pain.

    9. Re:No more licensing fees :) by Em+Adespoton · · Score: 3, Interesting

      The problem is that SQL is all about the query language formalized structure. It says nothing about the procedures or how to control the backing server.

      Think about SWL (structured written language). There are a few standards, one of which is the Roman standard. Using this standard, we can use the same character set to represent many different spoken languages. We can store meaning using the Roman SWL and anyone else who knows the structure can extract it.

      However, the transforms and functions, cliches and linguistic interlinks all exist outside of that structure. As a result, a lexicon is also required in order to put in IItalian and have it usable by someone in the Philippines. The information stores just fine, but updating and making sense of what you've retrieved takes more work.

      Annoyingly (to me anyway), almost every SQL server vendor out there has hard-coded a way of handling this extra meta-data and interfacing it with the data itself. Some of their solutions are similar enough that ODBC and OLE DB can handle basic procedure calls -- but anything written to take advantage specifically of the strengths of a specific SQL-backed service tends to be incompatible.

      So yes, you can connect SQL to SQL in any form, but actually managing the data and preserving context in a way an existing application wants to... that's another kettle of fish altogether.

      Of course, once it's done, it's done -- so someone could easily re-tool a Postgres DB to act enough like a MySql DB *for a specific DB instance* that the samba service should function "mostly" as expected -- and the actual structured data should migrate just fine once the re-tooling and testing is complete.

    10. Re:No more licensing fees :) by erroneus · · Score: 3, Interesting

      Actually, I have read right here among the commentary that one can still use the Microsoft tools for managing a Samba server. Getting Samba set up initially might require some level of ability, but you know? As much as it pains me to admit it, you have to have at least as much ability to do it with Microsoft. Anyone who thinks they can't learn to do it under Linux is simply limiting themselves needlessly.

    11. Re:No more licensing fees :) by LurkerXXX · · Score: 4, Informative

      MySQL is utter crap. It's not a replacement for MS SQL, it's not a replacement for any decent SQL server. It took those bozos YEARS to finally get MySQL to not recognize Feb 31st as a valid date.

      PostgreSQL is a potential replacement, but certainly not a drop-in replacement. Lots and lots of work would need to be done to convert between the different lingo's they speak and way features are implemented.

    12. Re:No more licensing fees :) by dgatwood · · Score: 4, Informative

      Just as long as you don't have to create a table, add any sort of triggers, or do anything interesting like automatic time stamping on modification/creation, choosing a random n entries out of the matches without shipping the entire huge set over a slow network, etc., then yes. As soon as you have to do something even slightly nontrivial, the difference between SQL dialects becomes the tenth circle of hell.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    13. Re:No more licensing fees :) by ArsonSmith · · Score: 4, Informative

      My anecdote: 5 years ago we were a 95% Windows shop with only 15 Linux servers. Today we are a 90% Linux shop with near 1000 Linux servers. We went from 5 Windows Admins and 1 Linux admin to 6 Linux admins and 3 Windows Admins. Yet we are unlikely to convert AD to this for the exact same reasons. It's not just AD it's the plugins to AD the monitoring and the fact that, while it rarely breaks anyway, if something does break the amount of repair tools and articles on how to fix it are numerous. As that original 1 Linux admin I would like to see this as an option. But it's not very likely.

      --
      Paying taxes to buy civilization is like paying a hooker to buy love.
  2. fsck yeah! by Netdoctor · · Score: 5, Insightful

    Oh My Gawd.

    I have been waiting literally *years* for this.

    This just made up for an otherwise very crappy day. No, this just fixed my whole year.

    1. Re:fsck yeah! by neokushan · · Score: 5, Funny

      I'm going to take a wild stab in the dark and assume you're a sysadmin.

      --
      +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
    2. Re:fsck yeah! by MightyMartian · · Score: 4, Funny

      Or he's into some really bizarre porn.

      "Ooh yeah baby. That's it. Shove that NTFS ACL into a Posix ACL. Come on, harder... deeper... Oooh yeah! Map it to that sticky bit, baby! Map it!"

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:fsck yeah! by MrHanky · · Score: 5, Funny

      Ah, POSIX porn. Most people never even thought it existed, yet there it is, already a standard.

  3. Wow by Anonymous Coward · · Score: 5, Insightful

    I'll be interested to see the reviews on this over the next several months. I'm interested to see how well this performs under different levels of load, and how it utilized group policy. Kind of exciting in an extremely nerdy sort of way.

  4. How does Microsoft feel about this? by gstoddart · · Score: 5, Interesting

    I'm assuming if Microsoft could legally stop this, they would.

    Likely the interfaces aren't copyrightable and this is probably a clean implementation -- but I'm sure if Microsoft could trot out a patent or something else to stop people they would.

    I can't imagine they want implementations of their stuff out there. (Granted, they mostly started out by implementing other people's stuff, so there may not be much they can do about it.)

    --
    Lost at C:>. Found at C.
    1. Re:How does Microsoft feel about this? by mcl630 · · Score: 5, Informative

      Microsoft provided them with documentation and helped them with interoperability testing. From TFA:

      The Samba 4.0 Active Directory Compatible Server was created with help from the official protocol documentation published by Microsoft Corporation and the Samba Team would like acknowledge the documentation help and interoperability testing by Microsoft engineers that made our implementation interoperable.

      "Active Directory is a mainstay of enterprise IT environments, and Microsoft is committed to support for interoperability across platforms," said Thomas Pfenning, director of development, Windows Server. "We are pleased that the documentation and interoperability labs that Microsoft has provided have been key in the development of the Samba 4.0 Active Directory functionality."

    2. Re:How does Microsoft feel about this? by Jeremy+Allison+-+Sam · · Score: 5, Informative

      Ahem. Microsoft provided a positive quote for the press release, and were involved in bug fixing to ensure interoperability.

      So no, I don't think they hate it :-).

      Jeremy.

    3. Re:How does Microsoft feel about this? by Xtifr · · Score: 4, Interesting

      Really? I was about to post a snarky reply when I noticed the name and the low-enough-to-be-convincing slashdot ID, so I'll make it more of a simple question.:Given that Microsoft was required to publish the documentation by the EU, and the fact that this basically proves they did comply with the courts orders, can you really be sure they don't hate it? Sure, it gets them off the hook, which is reason enough for them to have helped with the effort, but they can still hate it.

    4. Re:How does Microsoft feel about this? by leoxx · · Score: 5, Informative

      Of course what you failed to mention is that Microsoft only did this because the European Commission forced them to:

      December 20th 2007. Today the Protocol Freedom Information Foundation (PFIF), a non-profit organization created by the Software Freedom Law Center, signed an agreement with Microsoft to receive the protocol documentation needed to fully interoperate with the Microsoft Windows workgroup server products and to make them available to Free Software projects such as Samba. Microsoft was required to make this information available to competitors as part of the European Commission March 24th 2004 Decision in the antitrust lawsuit, after losing their appeal against that decision on September 17th 2007.

    5. Re:How does Microsoft feel about this? by Aaden42 · · Score: 3, Informative

      Wasn't Microsoft *required* by a court judgement or two to provide documentation and interoperability for several of their protocols? I don't think this was entirely out of the goodness of their hearts

      See the heading "February 2008 fine" here: http://en.wikipedia.org/wiki/Microsoft_litigation

    6. Re:How does Microsoft feel about this? by Jeremy+Allison+-+Sam · · Score: 4, Funny

      In the words of Francis Urquart:

      "You might think that. I couldn't possibly comment.." :-).

    7. Re:How does Microsoft feel about this? by Jeremy+Allison+-+Sam · · Score: 5, Interesting

      Possibly their marketing and senior exec's hate it (although I doubt that - Thomas Pfenning is at director level in the Windows org and he think's it's pretty cool.

      But I know their engineers think it's cool :-).

      Jeremy.

    8. Re:How does Microsoft feel about this? by Bengie · · Score: 5, Informative

      Microsoft actually invited several of the SAMBA team over, had 2 senior engineers on hand to answer any questions they had about SMB and even gave the SAMBA team their own VM environment complete with Win7/Win8/Linux to run SMB2/3 compatibility testing. Lots of questions about RDMA, Interface teaming, and multi-pathing.

      The SAMBA team said they received a lot of insight and understanding from their time with the MS engineers and were impressed and excited.

      I'm not sure Microsoft is too concerned about SAMBA 4 being released.

    9. Re:How does Microsoft feel about this? by erroneus · · Score: 5, Informative

      From the Groklaw article, the documentation for active directory was sold to the Samba project. The Samba project then went about using the documentation as a reference. Microsoft did not want to sell this documentation to the Samba project and were required to do so under court order. So no. They weren't all that willing to help out.

      And if Microsoft starts playing "undocumented features" games again to break compatibility, they will find themselves in court again.

    10. Re:How does Microsoft feel about this? by Jeremy+Allison+-+Sam · · Score: 4, Informative

      There isn't a court-ordered requirement for them to test it. There's a market enforced requirement :-).

      Go into Frys (or local Geek store). Look at all the NAS boxes on the shelf. That's all Samba. Every one.

      Now imagine you're Microsoft. A new version of Windows comes out and it doesn't work against all the "home NAS media servers" people have. Ooops :-(.

      They test against Samba *all the time*, as it's good for their business to do so.

      They also go a little above and beyond by helping test the AD server part of Samba (which isn't in wide production use yet) - they do that in their interop labs up in Redmond.

      They provide free food for the engineers working late up there. It's not as good as the free Google food (but then again, hey - what is ? :-) :-).

      Jeremy.

    11. Re:How does Microsoft feel about this? by abartlet · · Score: 4, Insightful

      I do have to say, the AD interop labs were some of the most fun I've had in IT. And yes, it was great having the food brought in as we worked late into the night, night after night.

      The best bits were being able to work side-by-side with their engineers solving some of the trickiest parts of the puzzle, or working over the results of running their testsuite. These things made Samba much better, and I'm happy to say how much we appreciate these opportunities.

      Andrew Bartlett
      Samba Team

  5. Re:If only it were samba-ng by Jeremiah+Cornelius · · Score: 3, Informative

    Gates is forked.

    This will be embeddable on ARM appliances, and baked into VM management software, etc.

    It only took 12 years... :-)

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  6. Re:What's new? by bluefoxlucid · · Score: 4, Informative

    The domain is run by Samba straight on Linux, not by an Active Directory Domain Controller on Windows 2008 Server.

  7. Re:First post by Jerslan · · Score: 3, Insightful

    Because Windows isn't always the best tool for the job? Because having a diverse ecosystem of IT appliances that can all share authentication and other such services is a VERY valuable thing?

  8. Microsoft helped by Gazzonyx · · Score: 4, Informative

    Stop them? Microsoft helped the Samba team. Microsoft even uses the samba torture testing framework internally for their own products as I understand it. The torture tests catch crap that their own testing wouldn't since it tries to send packets that Windows clients would never send.

    The EU is still a bit angry at Microsoft (remember when they had to release all of the documentation on their implementation of the SMB protocol?) and they don't need to be stoking that flame.

    --

    If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.

  9. Re:Administrative UI by Jeremy+Allison+-+Sam · · Score: 5, Informative

    Yes :-). That's why you can use the Windows tools to administer Samba4.0 AD server :-).

    Jeremy.

  10. Re:Too Late by X0563511 · · Score: 5, Funny

    Where the fuck do you think all that web-based administration plugs into, a unicorn?

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  11. Re:GPLv3 by Jeremy+Allison+-+Sam · · Score: 5, Insightful

    Oh you mean corporations like IBM, EMC, Netgear, WDC,Google ? Yeah, the GPLv3 really scared them :-).

    Listen to my presentation here:

    http://www.softwarefreedom.org/podcast/2011/may/10/why-samba-switched-to-GPLv3/

    to explain why GPLv3 is a *better* license for commercial use the GPLv2.

    Jeremy.

  12. Re:I wouldn't jump the gun just yet by Zombie+Ryushu · · Score: 5, Informative

    Samba 3+OpenLDAP+Heimdal Kerberos created what were often termed "Open Directory Services" by the Apple Crowd. They were mutant NT 4.0 Domains that had broken a bunch of the limitations of NT4, (such as multiple PDCs and levels of trusts.) provided LDAP and Kerberos, but to Windows, they were still just NT Domains to Windows. Not true ADs. XP and 2000 would disable Kerberos because it thought it was talking to NT4. Windows 7 dropped support for NT4 EXCEPT there was a special mode just for Samba 3 to work, and you had to edit the registry to get it working.

  13. Re:GPLv3 by Jeremy+Allison+-+Sam · · Score: 5, Informative

    Yes, I'm Jeremy Allison - the original poster. I created Samba along with tridge (he was there first, and is much smarter than me though :-). I thought that was obvious, sorry :-).

    Jeremy.

  14. Microsoft Don't support Shit by Anonymous Coward · · Score: 5, Interesting

    Sorry to point this out so bluntly, but I'm sick to death of this argument. that Microsoft is better than open source, because they offer full support to business customers. As a sys admin with 15 years under the belt, I can tell you that I have never gotten anything from Microsoft past a link to a technet support wizard that asks 4 obvious, general questions and always ends with "Sorry we cannot provide a solution to this problem, Do you find this article helpful?"

    NO I FUCKIN' DON'T.

    Microsoft would be the last place I would ever call if there was a critical server failure where downtime is money.

    In the real world, this kind of support is provided by 3rd party Managed Service Companies who are paid separately anyways, so you might as well pay for support on a nix based system, as they are well known to be much more stable (look at your average local nix admin with his feet up knitting or making chainmail, because he's got his systems singing and cron-grepping him hourly reports about how awesome he is and why he deserves a raise, compare this you your best of breed bad ass wizard windows admin, stressed as fuck, up till 4am fixing stupid shit for peanuts)

  15. Re:GPLv3 by Jeremy+Allison+-+Sam · · Score: 3, Interesting

    /. is not what it was, but then again it never was :-).

    I miss the .bruce.perens/bruce.perens/bruce.perens./ wars.. and the "information wants to be wiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiide" guy :-). And who could forget sig11's "will the real Bruce Perens please stand up" ?

    But Tim Potter (old Samba Team member) and I loved the trolls :-).

    Jeremy.

  16. Re:No more job security :) by Jeremy+Allison+-+Sam · · Score: 5, Interesting

    You do realize that many enterprise storage servers made by companies like IBM, Symantec, EMC, Dell etc. are or have been based on Samba code, right ?

    Nah, probably not... :-). After all, you know that only Windows storage servers work with Windows clients don't you :-).

    Jeremy

  17. Existing OpenLDAP setups by abartlet · · Score: 5, Informative

    I agree, existing OpenLDAP sites using Samba 3.x in cooperation with a host of other packages, using the traditional LDAP directory structure deployed on many Linux oriented sites are not going to migrate to Samba 4.0 as an AD DC any time soon. The change is just as big as the change to migrate to Microsoft's Active Directory, except that we provide a tested upgrade tool to handle the Samba-essential parts.

    We want this to be easier, and the tools can certainly be extended to cover other schema items, and integration of these services can improve, because many of these can work well against a Microsoft Windows AD. However, we know this is a big leap, so we continue to support existing configurations (with the existing features. (For want of a better term, we call it a 'classic' domain).

    The issue isn't as much being unable to use an LDAP server as a data store (but this became more difficult as we became more like AD), as that unless we were to implement on the fly schema translation, most of the same issues would remain (assumptions about AD or traditional schema and layout between Samba and the other tools on the LDAP backend), and so the result would not have be useful anyway!

    As such, the LDAP backend has been put aside as an interesting technical modal that didn't work out. If a plausible use case ever comes up, then interested developers might revive some of it (the code and some tests remain where they are not impeding development), but for now there are no plans for support of anything other than local LDB files and native replication with other AD servers.

    Andrew Bartlett
    Samba Team

  18. Not Invented Here by abartlet · · Score: 4, Interesting

    Samba uses Heimdal Kerberos precisely because we did not wish to re-invent Kerberos. We bundle a known-working copy of that in the tree, and launch the KDC inside the samba process so it behaves as a seamless part of the AD DC. We provide plugins for the things that need to be AD-specific (such as PAC handling and reading the AD Database) for the Heimdal codebase to use.

    For LDAP, we took a different approach, and instead wrote our own LDAP-like database on top of tdb. LDAP is in many ways much simpler at the core, and the hard parts are all the schema rules and special cases that are AD-specific anyway, and which we have special modules to handle (on top of LDB, which remains quite lightweight). That isn't to say that this would not have been possible - indeed, Luke Howard's XAD shows it is - but just that we decided to do that part in-house. I'm quite comfortable with that choice.

    Andrew Bartlett
    Samba Team

  19. Samba 4.0 vs 'classic' NT4 like domains on LDAP by abartlet · · Score: 3, Informative

    Indeed, it was seeing the limitations of the NT4 modal that held back these domains that was one of the major reasons I started on the AD DC effort for Samba. I deployed (and indeed was involved in the creation of) a mixed Heimdal/Samba/LDAP domain, and saw how the lack of Group Policy caused real issues for a large network of Windows PCs. In my specialist area of Authentication, I also saw how NTLM authentication did and did not work, particularly in the load it put on the DCs. Kerberos is a much better authentication prototcol than NTLM, and I'm glad that Samba now not only can accept Kerberos authentication, but as the Domain Controller, it can now be the KDC too!

    In the same way, I saw the writing on the wall for NT4 support for a long time, and I'm just very glad that the interoperability environment changed enough in time that we were able to get changes made to Samba and Windows to allow Samba NT4-like 'classic' domains to continue, long past when NT4 DCs became not only unsupported, but deliberately broken (in the name of increased security). As you mention it still requires a registry patch however, and so with the release of Samba 4.0 as an AD DC I look forward to Samba administrators being able to deploy a 'just works' solution again, even for the latest windows versions.

    Andrew Bartlett
    Samba Team

  20. Re:If only it were samba-tng by abartlet · · Score: 5, Informative

    The AD DC is actually is a bunch of core libraries and services. To make things easiest for our users, the services are linked into and started up by one binary, but internally each different task ends up in a forked process (if appropriate). But we do one better, and allow this to be controlled at runtime, so with '-M single' it essentially becomes a giant state machine, and can be handled with a single gdb. Inter-process communication is via a unix domain socket based messaging system or full DCE/RPC pipes.

    External processes can register specific named pipes (when, as we do by default, we use smbd as the file server, this is actually a key part of the design), or DCE/RPC server modules can be loaded (the OpenChange project provides such a module).

    We could discuss if more or less of Samba's internal communication should use one design pattern or another, but what is more interesting is that without fanfare or bother, some of those ideas, implemented pragmatically rather than dogmatically, have become an essential part of how Samba is implemented. That pragmatism has then brought us the AD DC that we are so proud to announce today.

    I also love that the shared libraries that we now use internally make Samba much smaller as well, reducing the disk space overhead.

    Finally, a surprising amount of the code is actually in modules on ldb, our ldap-like database at the core of the system.

    I know you were hoping to troll with what has been a long-running design philosophy, but when you spend the time building the system, you find the pragmatism rules the day, and we use a variety of tools to get the job done, and to get it done is a way that is most seamless to our users.

    Andrew Bartlett
    Samba Team