Run command as not-root

Hi everyone

At work, I have to run a command in an AWS instance. In that particular instance only exists the root user. The command should not be executed with root privileges (it executes mpirun, which is not recommended to run as sudo or the machine might break), so I was wondering if there is a way to block or disable the sudo privileges while the command is running. As mentioned, the only user existing there is root, so I suppose “sudo -u” is not an option.

Does anyone know how to do it? Thanks in advance!

@linux

  • Nicolas RojasOP
    link
    fedilink
    211 months ago

    @astraeus yep, completely agree on the security issues, that is a mistake that should be fixed. But for the moment I confirmed that root is the only user, and every file and program in the instance can only be used by root (I just created a new user and tried to run the command with su -c but got a lot of permission denials and command not found)
    If I could hide or disable my own sudo permissions that would save me a lot of work, but I’m starting to think that something like that doesn’t exist 🙁

    • astraeus
      link
      411 months ago

      Unfortunately hiding sudo from root would lead to much greater issues. You can remove sudo privileges from a non-root user, but I don’t think there’s a feasible way to do so for root.

      Does your new user have a proper shell setup? If you type bash in the new user’s terminal does it give you anything?

      • @[email protected]
        link
        fedilink
        311 months ago

        If everything on the machine is owned by root and does not provide global read or execute permissions then a new user would not be able to access it without being in the root group. Assuming the files have group permissions set at all anyways.

        • astraeus
          link
          111 months ago

          It’s nothing but root all the way down

      • Nicolas RojasOP
        link
        fedilink
        111 months ago

        @astraeus yes, the new user has bash and all the gnu utils, but not access to some files or the tools needed to run the command I want (it uses python and postgres). I can configure all of that but I really wanted to skip all that work lol. But looks like the security concerns are greater that my lazyness so I’ll start setting the system correctly so the new user can execute what I want

    • @[email protected]
      link
      fedilink
      311 months ago

      I don’t think you understand what root is. By definition it has those permissions because it’s root.