I’m curious as to why someone would need to do that short of having a bunch of users and a small office at home. Or maybe managing the family’s computers is easier that way?

I was considering a domain controller (biased towards linux since most servers/VMs are linux) but right now, for the homelab, it just seems like a shiny new toy to play with rather than something that can make life easier/more secure. There’s also the problem of HA and being locked out of your computer if the DC is down.

Tell me why you’re running it and the setup you’ve got that makes having a DC worth it.

Thanks!

  • @Nollij@sopuli.xyz
    link
    fedilink
    English
    231 year ago

    You’re overlooking a very common reason that people setup a homelab - practice for their careers. Many colleges offer a more legitimate setup for the same purpose, and a similar design. But if you’re choosing to learn AD from a free/cheap book instead of a multi-thousand dollar course, you still need a lab to absorb the information and really understand it.

    Granted, AD is of limited value to learn these days, but it’s still a backbone for countless other tools that are highly relevant.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      11 year ago

      Learning was definitely a goal, but I’d like to actually find use for what I’m hosting than just “learning”, which would affect my motivation and I’d probably delete it right away if I didn’t get much use out of it

  • @Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    2
    edit-2
    1 year ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    DNS Domain Name Service/System
    Git Popular version control system, primarily for code
    IP Internet Protocol
    Plex Brand of media server package
    SSH Secure Shell for remote terminal access
    SSO Single Sign-On
    VNC Virtual Network Computing for remote desktop access
    VPN Virtual Private Network
    VPS Virtual Private Server (opposed to shared hosting)

    [Thread #507 for this sub, first seen 13th Feb 2024, 02:55] [FAQ] [Full list] [Contact] [Source code]

  • @mikyopii@programming.dev
    link
    fedilink
    English
    121 year ago

    I ran it previously because I came from that world and I just thought that’s what you did. I was less Linux-y then. It’s really overkill for such a small network but if you want to learn AD then it might be worth it. Personally I hope to never look at AD again but alas I need moneyz.

    If you do decide to run it make sure you enable profile caching in group policy, it will prevent you from being locked out when your DC is down. Also if you have laptops you can safely bring them outside your network and they will still be able to log in.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      31 year ago

      Oh, that’s a great idea. I always wondered how I would be able to log into my work laptop even without being connected to the company network; now I know why!

      Would love more tips if you would have them for someone very new to AD!

  • @VelociCatTurd@lemmy.world
    link
    fedilink
    English
    21 year ago

    It seems cool but it’s just going to be a big headache man. I would just spin up a domain controller and maybe some workstations to play around with.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      11 year ago

      I can see that. I will probably do the same before I even think of integrating a DC in my homelab - that goes for both AD and FreeIPA. Thanks

  • @computergeek125@lemmy.world
    link
    fedilink
    English
    8
    edit-2
    1 year ago
    1. Yes I do - MS AD DC

    2. I don’t have a ton of users, but I have a ton of computers. AD keeps them in sync. Plus I can point services like gitea and vCenter at it for even more. Guacamole highly benefits from this arrangement since I can set the password to match the AD password, and all users on all devices subsequently auto-login, even after a password change.

    3. Used to run single domain controller, now I have two (leftover free forever licenses from college). I plan to upgrade them as a tick/tock so I’m not spending a fortune on licensing frequently

    4. With native Windows clients and I believe sssd realmd joins, the default config is to cache the last hash you used to log in. So if you log in regularly to a server it should have an up to date cache should your DC cluster become unavailable. This feature is also used on corporate laptops that need to roam from the building without an always-on VPN. Enterprises will generally also ensure a backup local account is set up (and optionally auto-rotated) in case the domain becomes unavailable in a bad way so that IT can recover your computer.

    5. I used to run in homemade a Free IPA and a MS AD in a cross forest trust when I started ~5-6y ago on the directory stuff. Windows and Mac were joined to AD, Linux was joined to IPA. (I tried to join Mac to IPA but there was only a limited LDAP connector and AD was more painless and less maintenance). One user to rule them all still. IPA has loads of great features - I especially enjoyed setting my shell, sudoers rules, and ssh keys from the directory to be available everywhere instantly.

    But, I had some reliability problems (which may be resolved, I have not followed up) with the update system of IPA at the time, so I ended up burning it down and rejoining all the Linux servers to AD. Since then, the only feature I’ve lost is centralized sudo and ssh keys (shell can be set in AD if you’re clever). sssd handles six key MS group policies using libini, mapping them into relevant PAM policies so you even have some authorization that can be pushed from the DC like in Windows, with some relatively sane defaults.

    I will warn - some MS group policies violate Linux INI spec (especially service definitions and firewall rules) can coredump libini, so you should put your Linux servers in a dedicated OU with their own group policies and limited settings in the default domain policy.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      2
      edit-2
      1 year ago

      Thanks for the great answer.

      Using AD for SSO in git-frontends and other applications is a fantastic idea. I will probably also run FreeIPA (that’s a name I hadn’t heard in a while till this thread, from another commenter) and have a trust relationship.

      You’re right, this is probably better for learning rather than actually using at home, since most of my computers are linux/BSD, so if I needed a central auth server, I’d probably be better off using something made for *nix.

      With that said, I had a curious idea - can I spin up temporary credentials, using something akin to service/machine accounts, rotate credentials and invalidate credentials freely etc? In essence, I’m wondering if this can be a way to implement a sort of homegrown “AWS STS” alternative, for app secrets, workers and the like. I was initially looking at secret management suites like Vault and Conjur but what if this can do it?

      Also, can AD encrypt the DB? Can FreeIPA do it? I’d like such an option for security.

      Thanks!

      • @computergeek125@lemmy.world
        link
        fedilink
        English
        21 year ago

        I don’t have an immediate answer for you on encryption. I know most of the communication is encrypted in flight for AD, and on disk passwords are stored hashed unless the “use reversible encryption field is checked”. There are (in Microsoft terms) gMSAs (group-managed service accounts) but other than using one for ADFS (their oath provider), I have little knowledge of how it actually works on the inside.

        AD also provides encryption key backup services for Bitlocker (MS full-partition encryption for NTFS) and the local account manager I mentioned, LAPS. Recovering those keys requires either a global admin account or specific permission delegation. On disk, I know MS has an encryption provider that works with the TPM, but I don’t have any data about whether that system is used (or where the decryptor is located) for these accounts types with recoverable credentials.

        I did read a story recently about a cyber security firm working with an org who had gotten their way all the way down to domain admin, but needed a biometric unlocked Bitwarden to pop the final backup server to “own” the org. They indicated that there was native windows encryption going on, and managed to break in using a now-patched vulnerability in Bitwarden to recover a decryption key achievable by resetting the domain admin’s password and doing some windows magic. On my DC at home, all I know is it doesn’t need my password to reboot so there’s credentials recovery somewhere.

        Directly to your question about short term use passwords: I’m not sure there’s a way to do it out of the box in MS AD without getting into some overcomplicated process. Accounts themselves can have per-OU password expiration policies that are nanosecond accurate (I know because I once accidentally set a password policy to 365 nanoseconds instead of a year), and you can even set whole account expiry (which would prevent the user from unlocking their expired password with a changed one). Theoretically, you could design/find a system that interacts with your domain to set, impound/encrypt, and manage the account and password expiration of a given set of users, but that would likely be add on software.

  • @alomsimoy@lemmy.world
    link
    fedilink
    English
    11 year ago

    I’m running truenas scale with truecharts and I manage all users and groups with the LLDAP chart, which is an stripped down version of ldap. I’m considering deploying another server and running 389ds with replication to increase the features and to learn more about ldap, but overall lldap covers all my necessities regarding user and group managment in all my homelab apps

  • @conorab@lemmy.conorab.com
    link
    fedilink
    English
    71 year ago

    Run at home/lab to learn AD and also gives you a place to test out ideas before pushing to production. You may be able to run a legit AD server with licensing on AWS or similar if they have a free tier.

  • @h3ndrik@feddit.de
    link
    fedilink
    English
    3
    edit-2
    1 year ago

    Uh, why use a Microsoft product that doesn’t even tie into the rest of the selfhosted services very well? There are easier and way better solutions for SSO and web services. And I don’t have a pool of 30 windows laptops that’d need to share a set of login credentials and software rollout, at home.

    I’d rather use the time I’d put into such a project that is just work and little to no benefit for something else. For example doing backups, deleting the Windows on those laptops and replacing it with free software.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      21 year ago

      The main idea was to see if AD will bring any benefit to my homelab. The idea of running a domain controller is very intriguing, and it doesn’t need to be AD specifically, although I’d like to get some hands-on time with it too.

    • RedFox
      link
      fedilink
      English
      21 year ago

      Sometimes it’s for career progression or familiarity.

      Just for SSO, might be easier ways, sure.

  • @Treczoks@lemmy.world
    link
    fedilink
    English
    101 year ago

    Keep in mind that AD, Office, and Exchange is he holy trinity of getting hacked in the last years.

    • slazer2au
      link
      fedilink
      English
      51 year ago

      Active Directory. Manages users, devices, and permissions.

  • @viking@infosec.pub
    link
    fedilink
    English
    81 year ago

    I had it running in a genuine small office environment with 8 employees, who all need to run Windows due to some software constraints.

    Policy management and user account controls are great for security, and remote management via rdp is also neat.

    • Possibly linux
      link
      fedilink
      English
      31 year ago

      Plus if you use Samba AD DC you can install it on Debian which will run no issues for years without anything but unattended upgrades.

  • @Unforeseen@sh.itjust.works
    link
    fedilink
    English
    101 year ago

    You could look at freeIPA or something similar to stay on Linux.

    I’m an AD specialist, starting when it came out with server 2000, and can tell you it’s a waste of time for a home network unless you are doing this just because you want to learn it.

    It will definitly not make your life any easier, and will increase attack vectors, especially if you don’t know how to secure and protect it.

    • @MigratingtoLemmy@lemmy.worldOP
      link
      fedilink
      English
      11 year ago

      Thank you. I was planning to keep my domain controller offline (not connected to the internet) and run a WSUS to update it, but I’ll keep that in mind. Indeed, I could use FreeIPA too, and I’ll probably need to consider if it’s even worth it to run a DC at all. It just seemed like a really solid idea for learning more about DCs, but indeed, now that I think about it, it doesn’t have much use in a homelab other than the people running mini datacenters in their labs.

      Thanks!

    • @Godort@lemm.ee
      link
      fedilink
      English
      31 year ago

      I agree that for this size of network AD is definitely not something you want to deal with unless you want to learn how it works.

      However, I’m not sure it really increases attack vectors to have it running, outside of the fact that it’s a new network service on the LAN. The out of the box default configuration is not bad these days, security-wise

      • @Unforeseen@sh.itjust.works
        link
        fedilink
        English
        41 year ago

        The attack vectors I’m thinking of just come from the inherent complexity and centralization. I’m just considering the amount of damage that can be done with a compromised DA account for example vs a non directory environment.

        It’s complicated. Done right it can be more secure, not done right it’s less secure.

        I also only get brought in for problems for the last however many years, so I’m probaby a bit biased at this point haha.

        I have had to tell companies they are going to have to rebuild thier AD from scratch because they didn’t know what thier DSRM password was (usually after a ransomware attack). These are the sort of hassles I think about vs non AD.

  • Monkey With A Shell
    link
    fedilink
    English
    31 year ago

    Not AD proper but a compatible controller Linux distro to tie the desktops to, plus common credentials across several services. Just simplifies things not having a dozen different logins.

      • Monkey With A Shell
        link
        fedilink
        English
        2
        edit-2
        1 year ago

        No, currently univention corporate server (UCS), but I’ll give those a look since I’ve been eyeing a replacement for a while due to some long standing vulns that I’m keen to be rid of.

    • @w2tpmf@lemmy.world
      link
      fedilink
      English
      21 year ago

      What is that controller distro you use?

      I used to use a Linux based AD replacement years ago but they turned that one into a pay model and if I’m going to pay for something I’ll just use Windows Server

      • Monkey With A Shell
        link
        fedilink
        English
        1
        edit-2
        1 year ago

        https://www.univention.com/

        It has all the needed parts plus an interesting plug in app ecosystem if you like that kind of thing. My only real gripe with it though is a pile of high sev vulnerabilities that are picked up by a scanning engine that haven’t been fixed for a long time, so I’m reluctant to recommend it unless you have a solid security/segmentation setup in place.