On a server I have a public key auth only for root account. Is there any point of logging in with a different account?

  • truthfultemporarily@feddit.org
    link
    fedilink
    arrow-up
    2
    ·
    9 days ago

    Its a concept called defense in depth. Without root login now you require the key AND sudo password.

    Also, outside of self hosted you will have multiple people logging in. You want them to log in with their own users for logging and permission management.

      • markstos@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        8 days ago

        This was downvoted, but is a good question.

        If your account is compromised, the shell init code could be modified to install a keylogger to discover the root password. That’s correct.

        Still, that capture doesn’t happen instantly. On a personal server, it could be months until the owner logs in next. On a corporate machines, there may be daily scans for signs of intrusion, malware, etc. Either way, the attacker has been slowed down and there is a chance they won’t succeed in a timeframe that’s useful to them.

        It’s perhaps like a locking a bike: with right tool and enough time, a thief can steal the bike. Sometimes slowing them down sufficiently is enough to win.

          • Lemmchen@feddit.org
            link
            fedilink
            English
            arrow-up
            0
            ·
            edit-2
            9 days ago

            How did the attacker gain your user’s privileges? Malware-infected user installation? A vulnerability in genuine software running as your user? In most scenarios these things only become worse when running as root instead.

            • ShortN0te@lemmy.ml
              link
              fedilink
              arrow-up
              0
              ·
              9 days ago

              The scenario OC stated is that if the attacker has access to the user on the server then the attacker would still need the sudo password in order to get root privileges, contrary to direct root login where the attack has direct access to root privileges.

              So, now i am looking into this scenario where the attack is on the server with the user privileges: the attacker now modifies for example the bashrc to alias sudo to extract the password once the user runs sudo.

              So the sudo password does not have any meaningful protection, other then maybe adding a time variable which is when the user accesses the server and runs sudo

                • ShortN0te@lemmy.ml
                  link
                  fedilink
                  arrow-up
                  0
                  ·
                  9 days ago

                  And what do you suggest to use otherwise to maintain a server? I am not aware of a solution that would help here? As an attacker you could easily alias any command or even start a modified shell that logs ever keystroke and simulates the default bash/zsh or whatever.

                • JasonDJ@lemmy.zip
                  link
                  fedilink
                  arrow-up
                  0
                  ·
                  9 days ago

                  Nah just set up PAM to use TOTP or a third party MFA service to send a push to your phone for sudo privs.

  • ohshit604@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    1
    ·
    8 days ago

    Is there any point of logging in with a different account?

    When you edit & save a file as root, root takes ownership of that file. I personally don’t like having to run chmod or chown every time I make minor changes to something.

    • Futurama@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 days ago

      No, that’s not correct. If you create a new file as root, it will own that file. But editing an existing file doesn’t change the owner or group of that file.

  • deadbeef79000@lemmy.nz
    link
    fedilink
    arrow-up
    1
    ·
    9 days ago

    That server’s root access is now vulnerable to a compromise of the systems that have the private key.

    • BCsven@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      8 days ago

      Only the server should have the private key. Why would other systems have the private key?

      • forbiddenlake@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 days ago

        The client has the private key, the server has the corresponding public key in its authorized keys file.

        The server is vulnerable to the private key getting stolen from the client.