npub19lagad90ncl2ryqvgctg84wal4mus8wznx950a0trhw85lnflucquphm4g (npub19la…hm4g) npub1cpmamsweqfv259w54mkpgvfzrwgt64tx2wnue5rgvnwx3tx68nssuxuycf (npub1cpm…uycf) I agree that setuid executables are really troublesome and that sudo is far from the best approach to root privileges on a host.
The SSH approach is interesting, but at the same time using encryption over a local unix socket feels like a bit of not really needed overhead. But to base it on the the authentication aspect sounds good. And the possibility to require a hardware token to do privileged operations is a really good idea.
I'm just wondering how hardware tokens will work on a remote host configured like this. That is, you ssh into a remote host and use the "ssh-based-sudo" ... can that be prepared to also make use of hardware tokens as well?
And how could the management of "ssh-based-sudo" access be centrally managed? On hosts enrolled in FreeIPA, you can define sudo policies centrally. How could this be made to work with FreeIPA? I suspect it would be some extension to sss_ssh_authorizedkeys, which could add the needed public keys lines with the additional restrictions. But at the same time, this can end up being quite a lot of data needed to be processed on more detailed restrictions.