Basically every local service is accessed via a web interface, and every interface wants a username and password. Assuming none of these services are exposed to the internet, how much effort do you put into security here?
Personally, I didn’t really think about it when I started. I make a half-assed effort at security where I don’t use “admin” or anything obvious as the username, and I use a decent-but-not-industrial password - but I started reusing the u/p as the number of services I’m running grew. I have my browsers remember the u/ps.
Should one go farther than this? And if so, what’s the threat model? Is there an easier way?

  • pHr34kY@lemmy.world
    link
    fedilink
    English
    arrow-up
    60
    arrow-down
    1
    ·
    edit-2
    3 months ago

    Public-facing: Password generator, stored in a password manager.

    Internal LAN: Everything gets the same re-used, low-effort password.

    Nobody is going to hack my CUPS server.

    • BCsven@lemmy.ca
      link
      fedilink
      English
      arrow-up
      9
      arrow-down
      12
      ·
      3 months ago

      But if they do, they have every password for all your stuff. hopefutlly you have Ipv6 disabled

      • cmnybo@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        13
        arrow-down
        1
        ·
        3 months ago

        Just because each device has a globally routable IP address doesn’t mean they can be accessed from outside your LAN. You still have to add a firewall rule to open a port to the device.

        • BCsven@lemmy.ca
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          1
          ·
          edit-2
          3 months ago

          I was referring to the latest CVE for ipv6 where an attacker just sends a flood of IPv6 packets which puts things like WindowsOS into a mode for remote code execution, even via webpage. Windows remedy right now is turnoff all ipv6 capability, as they don’t have a fix yet

            • BCsven@lemmy.ca
              link
              fedilink
              English
              arrow-up
              2
              ·
              3 months ago

              I have seen both. Typically you expect somebody self hosting to be about privacy and freedom, and thus choosing Linux, but there are WinFans too

            • BCsven@lemmy.ca
              link
              fedilink
              English
              arrow-up
              1
              ·
              3 months ago

              Of course, but for a person with all machines on network having same user name and password it could become a larger problem

      • pHr34kY@lemmy.world
        link
        fedilink
        English
        arrow-up
        19
        arrow-down
        10
        ·
        3 months ago

        IPv6 should not be disabled under any circumstances.

        In fact, many devices in my house have IPv4 disabled. Disabling IPv4 on my public-facing SSH reduced the attack traffic to zero.

        IPv4 is shit.

        • Turbo@lemmy.ml
          link
          fedilink
          English
          arrow-up
          2
          ·
          3 months ago

          Why not disable ipv6 for local lan?

          I disable It on everything for next decade until it’s mainstream.
          .

        • BCsven@lemmy.ca
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          I was referring to the latest CVE for ipv6 where an attacker just sends a flood of IPv6 packets which puts things like WindowsOS into a mode for remote code execution, even via webpage. Windows remedy right now is turnoff all ipv6 capability, as they don’t have a fix yet

          • pHr34kY@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            ·
            3 months ago

            I know about that one. The 800MB “fix” for it has been crashing machines quite hard.

            I don’t have that problem because I don’t run Windows.

            Windows is shit.

        • seaQueue@lemmy.world
          link
          fedilink
          English
          arrow-up
          12
          arrow-down
          1
          ·
          edit-2
          3 months ago

          Ipv6 is fantastic, it has less overhead than v4 and removes the need for NAT or other translation. Support can be spotty in cheaper and older devices but there’s no reason not to learn and adopt it where possible.

          • DaGeek247@fedia.io
            link
            fedilink
            arrow-up
            5
            arrow-down
            2
            ·
            3 months ago

            You have to take extra steps to ensure that the benefits of NAT aren’t lost when you switch to ipv6. Everyone knowing exactly which device you’re using because a single ipv6 IP per-device is the default.

            Ipv6 is nice, but also you need to know what you’re doing to get all the benefits without any of the downsides.

            • cmnybo@discuss.tchncs.de
              link
              fedilink
              English
              arrow-up
              4
              ·
              3 months ago

              Most devices generate a random IPv6 address and change it frequently. Your browser fingerprint is much more useful for device tracking than your IP address anyways.

              • seaQueue@lemmy.world
                link
                fedilink
                English
                arrow-up
                4
                ·
                3 months ago

                +1, your list of browser extensions, list of plugins and list of available fonts are also available to anyone trying to fingerprint you. This idea that NAT will somehow obscure you enough to be anonymous online is security voodoo.

            • seaQueue@lemmy.world
              link
              fedilink
              English
              arrow-up
              4
              arrow-down
              1
              ·
              edit-2
              3 months ago

              Your firewall should take care of that, it’s pretty rare to be connected directly without one and by default any decent routing package will filter incoming traffic that’s not in the state tracking table. NAT isn’t designed for security, any security benefit it provides is a side effect rather than the intended purpose.

              Edit: check out ipv6 privacy extensions too, there are solutions there that can reduce info disclosure if that’s a concern. You can accomplish many of the same benefits of NAT with v6 features without the downsides that NAT brings.

              • DaGeek247@fedia.io
                link
                fedilink
                arrow-up
                2
                ·
                3 months ago

                Not access, knowledge. Giving a specifically unique device identifier every time you visit a page is different from the website guessing if you visited recently based on your screen size and cookies.

                You have to set up ipv6 to change regularly to avoid that.

                • seaQueue@lemmy.world
                  link
                  fedilink
                  English
                  arrow-up
                  4
                  arrow-down
                  1
                  ·
                  3 months ago

                  I mean, the horror of having to tick a box to use rotating v6 addresses. These are all solved problems, they’re not a flaw worth ignoring the entire ipv6 protocol over. Most major operating systems have moved to stable privacy preserving addresses by default, that’s true, but it’s not all that difficult to turn on address randomization and rotation either. And, hell, if you’re that married to NAT as security just use NAT66 and call it a day, nothing about NAT is exclusive to ipv4.

              • BCsven@lemmy.ca
                link
                fedilink
                English
                arrow-up
                2
                ·
                3 months ago

                There was an article that many Routers were shipped with Ipv6 firewall off, and less savvy users would never know to check

  • WhyJiffie@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    24
    ·
    3 months ago

    Everything gets a different, long random password. It’s not a hassle because my password manager handles everything. It’s bitwarden for whatever I may need to access elsewhere, few admin logins there, keepass everything else.

  • youmaynotknow@lemmy.ml
    link
    fedilink
    English
    arrow-up
    16
    ·
    edit-2
    3 months ago

    All my local services follow the same rules as any other service. I have no idea what the passwords are, they are all random and long as fuck in my password manager. 2FA with a hardware key where allowed, TOTP if not.

    What possible reason would anyone have to “relax” or security on local services? That would mean having 2 streamlines which only adds friction.

    I strongly suggest you move all your credentials out of your browsers and into a password manager.

  • arcayne@lemmy.today
    link
    fedilink
    English
    arrow-up
    11
    ·
    edit-2
    3 months ago

    Apps: SSO via Authentik where I can, unique user/pass combo via Bitwarden where I can’t (or, more realistically, don’t want to).

    General infra: Unique RSA keys, sometimes Ed25519

    Core infra: Yubikey

    This is overkill for most, but I’m a systems engineer with a homelab, so it works well for me.

    If you’re wanting to practice good security hygiene, the bare minimum would be using unique cred pairs (or at least unique passwords) per app/service, auto-filled via a proper password manager with a browser extension (like KeePassXC or Bitwarden).

    Edit: On the network side, if your goal is to just do some basic internal self-hosting, there’s nothing wrong with keeping your topo mostly flat (with the exception of a separate VLAN for IoT, if applicable). Outside of that, making good use of firewalls will help you keep things pretty tight. The networking rabbit hole is a deep one, not always worth the dive unless you’re truly wanting to learn for the sake of a cert/job/etc.

  • fmstrat@lemmy.nowsci.com
    link
    fedilink
    English
    arrow-up
    9
    ·
    3 months ago

    Unify them.

    Now I have a full FOSS Active Directory for SSO logging into computers and services that supports 2FA where desired.

  • RegalPotoo@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    3 months ago

    Keycloak to provide OIDC, although in hindsight I should have gone with Authelia Authentik

  • CarbonatedPastaSauce@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    3 months ago

    Same way I do at work. Different accounts and passwords for each service internally. Any service exposed to the net (game and email servers mostly) is on a segregated network and each machine has unique credentials to help prevent lateral movement. Self hosted Bitwarden tracks it all.

    I do it for the same reason I require outbound firewall rules for almost everything on my home network - I’m a masochist.

  • cheddar@programming.dev
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    edit-2
    3 months ago

    Since I’m already using Bitwarden, generating and storing passwords is easy. I use my name as the username, though that user doesn’t have admin privileges.

  • corroded@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    3 months ago

    Like several people here, I’ve also been interested in setting up an SSO solution for my home network, but I’m struggling to understand how it would actually work.

    Lets say I set up an LDAP server. I log into my PC, and now my PC “knows” my identity from the LDAP server. Then I navigate to the web UI for one of my network switches. How does SSO work in this case? The way I see it, there are two possible solutions.

    • The switch has some built-in authentication mechanism that can authenticate with the LDAP server or something like Keycloak. I don’t see how this would work as it relies upon every single device on the network supporting a particular authentication mechanism.
    • I log into and authenticate with an HTTP forwarding server that then supplies the username/password to the switch. This seems clunky but could be reasonably secure as long as the username/password is sufficiently complex.

    I generally understand how SSO works within a curated ecosystem like a Windows-based corporate network that uses primarily Microsoft software for everything. I have various Linux systems, Windows, a bunch of random software that needs authentication, and probably 10 different brands of networking equipment. What’s the solution here?

    • cm0002@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      Your confusion is confusing me lol

      I don’t see how this would work as it relies upon every single device on the network supporting a particular authentication mechanism.

      Wdym? That’s not a thing, you can have some devices on LDAP some with local logins and some with OIDC or any other combination. Authentication is generally an application layer thing and switches operate at layer 2 maybe 3 if it’s doing some routing. As long as your network has a functioning DHCP server the web UI of the switch will be able to communicate with the LDAP server that you configure it to

      • corroded@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        3 months ago

        I think I’m misunderstanding how LDAP works. It’s probably obvious, but I’ve never used it.

        If my switch is expecting a username and password for login, how does it go from expecting a web login to “the LDAP server recognizes this person, and they have permissions to access network devices, so I’ll let them in.”?

        Also, to be clear, I’m referring to the process of logging in and configuring the switch itself, not L2 switching or L3 routing.

        • cm0002@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          3 months ago

          If the switch supports it, you login with local credentials first, navigate to its config page and configure LDAP under there. You’ll tell it the IP address of the LDAP server as well as give it its client side configuration. You give it a bind account credentials (a dedicated service account with as minimal permissions as needed) that it uses to lookup the users on the server as well as Organization Unit paths and such

          When a user goes to login the switch will query the provided credentials against the LDAP server, if it’s valid the LDAP server will respond with a success and the switch will log the user in

          Generally there is always a local account fallback in the event that the LDAP server is unavailable for whatever reason

  • Sunny' 🌻@slrpnk.net
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    3 months ago

    Personally keep it very simple using same username and password for my services. But I also don’t host anything of value, just messing around with a few different projects I come across. Yes it’s not good practice, but nothing is exposed works well for me.