Kurze Durchsage:
mit sudo -i holt man sich eine Loginshell als anderer User.
Also nicht: sudo su - (damit macht man sich per sudo erst zu root und macht sich dann mit su - erneut zu root)
Sondern: sudo -i
Und vor allem nicht: sudo su - andereruser (damit macht man sich per sudo erst zu root und dann mit su - andereruser zum anderen User)
Sondern: sudo -i -u andereruser
In einem halben Jahr komme ich noch einmal vorbei und prüfe, ob ihr das im täglichen Betrieb wirklich richtig macht.
@YoSiJo Leute, die nicht per sudo von einem unprivilegierten User auf den anderen wechseln können, wenn sie nicht gleichzeitig sudo auf root haben, sind ein ganz großes Thema da draußen. 🙈
@unixtippse Ich habe heufig das Gefühl das es einfach nur zu wenig kennen und zu selben mitbekommen.
Leider findet man es auch zu oft falsch im Internet.
Es ist bei mir aber auch etwas das ich mir nie aus der MANPAGE angelesen hätte, sonder durch abschauen kennengelernt habe.
@unixtippse auch wichtig:
sudoedit $file statt "sudo vim $file"
so läuft der editor unpriviligiert und kann nicht einfach ne rootshell spawnen.
@tercean @unixtippse gibt's da nen Unterschied zu visudo?
@tsia_ @tercean @unixtippse AFAIK spawned sudoedit $EDITOR, während visudo per default vi nutzt.
@paalsteek @tercean @unixtippse achso ja klingt naheliegend
@paalsteek @tsia_ @tercean Nein, visudo und sudoedit sind komplett verschiedene Baustellen. -> https://mastodon.online/@unixtippse/108576575561768286
@tsia_ @tercean visudo bearbeitet ja die Konfiguration, das ist immer gleich.
Mit sudoedit kannst du einen Doofuser als anderen User eine Datei editieren lassen, ohne dass er aus vi heraus eine Shell starten kann (:!/bin/bash). Er bearbeitet dann eine Kopie der Datei mit seinen eigenen Rechten und sudo kopiert sie am Ende über die Zieldatei drüber.
Also:
martin ALL=(nagios) sudoedit /etc/nagios/nrpe_local.cfg
Und der User führt dann aus:
sudoedit -u nagios /etc/nagios/nrpe_local.cfg
@unixtippse @tercean achso also eher eine sinnvolle Variante von `sudo $EDITOR $file`
@tsia_ @tercean Ja, ich sehe es nur sehr sehr selten in Benutzung. Da wo es in meinen Projekten versucht wurde, haben die Leute immer die Nerven verloren und dann ihre geheiligte Shell auf den jeweiligen Zieluser bekommen. Es selbst zu benutzen bringt unmittelbar erstmal nichts, außer halt, dass sichtbar wird, dass sudoedit überhaupt existiert.
@unixtippse @tsia_ @tercean achso, ich kannte nur sudo -e, das nutze ich tatsächlich regelmäßig
@paalsteek @tsia_ @tercean sudoedit ist sudo -e, das passt also von selbst. 🔩
@unixtippse @tercean ich wüsste spontan nicht Mal wo ich sowas gebrauchen könnte
@tsia_ immer wenn du eine Datei editieren willst die dein Account nicht dürfte, Configs meist. Brauchst du natürlich nur wenn nicht sowieso alles aus dem Configmanagement kommt.
@tercean das sind halt die 2 Situationen bei uns. Ich bin root oder ich mach configmanagement
@tsia_ naja, ich mag so wenig wie es nur geht root sein. und bei sudoedit hab ich meine vim-config, nicht die vom root-user :)
@tercean nachvollziehbar. Ist bei uns leider nicht so praktikabel meine vim config auf mehrere hundert Server zu verteilen
@tsia_ ~ kommt bei uns per ipa/nfs, hätten wir das nich würd ich .vim per ansible rüberrollen…
@tercean gibt's eigentlich auch noch nen Trick in der Richtung wenn ich als nicht-root keine Leserechte auf nen Ordner habe? `sudo cd` ist halt nicht so hilfreich :P
@tsia_ um reinzuwechseln? nich das ich wüsst… aber wenn du den ganzen pfad kennst klappt sudoedit natürlich auch :D
@tercean ohne autocomplete bin ich verloren 😅
@tsia_ man könnte bestimmt n zsh-autocompleter um sudo ls basteln :D
@tercean dann müsste ich erst Mal zsh installieren dürfen. Aber ich glaube ne vimrc und so krieg ich ausgerollt
@tsia_ @unixtippse ja, das $file muss nicht /etc/sudoers sein ;)
@unixtippse sudo su -l <USER> 🙃
Ich merke mir doch nicht extra was für sudo 🤭
@unixtippse Lustig, erst gestern jemand drauf hingewiesen dass die Variante existiert und schöner ist.