Wie kann man sudo mit der POSIX-Shell verbessern?

373
amn

Ich habe Änderungen an meinem Arch Linux x86-64 - System gemacht, wo ich bash laufen ausschließlich durch das, was ich denke, ist POSIX - Modus, durch den Einsatz von /bin/sh( in Verbindung mit ‚/ bin / bash‘) als meine Login - Shell und stattdessen Sachen des Setzens in /etc/profileI definiert ENV=/etc/shrcin my /etc/environmentas per Bash manual, so dass es die /etc/shrcDatei beim Start ausführt, wo alle meine Aliase, Eingabeaufforderungen und ähnliches stehen.

Grundsätzlich wollte ich die spezifischen Funktionen von Bash, einschließlich der /etc/profileund der Freunde, vollständig aufgeben .

Es hat sich jedoch das Problem ergeben, dass nach der Ausführung sudokeine ENVVariablen vorhanden sind, da die sudoUmgebung anscheinend zurückgesetzt wird (entweder nach dem Parsen /etc/environmentoder ohne dies überhaupt zu tun), und somit sind alle meine Aliase und Dinge weg. sudo -imacht das gleiche, im Grunde - nein ENV.

Sollte ich dies als vorteilhaft für die Systemsicherheit betrachten, oder sollte ich etwas dagegen tun, wie zum Beispiel sudo preserve ENVvariable machen?

Um diese Trauer hinzuzufügen, fehlt su -(aber auch nicht su) ENVund somit auch das ganze Zeug /etc/shrc. Also ist das vielleicht nicht nur ein sudoProblem? Bash - Manpage nicht spezifisch auf das ist, denke ich - es nur sagt : „Wenn es als interaktiv Shell mit dem Namen sh aufgerufen wird, sieht bash für variable ENV ...“ Nun, ich kann es aufrufe als interaktiv Shell, nicht ich ? Warum gibt es in meiner Umgebung keine ENV (getestet mit env)

Ich verstehe nicht, wie man die POSIX-Qualität von allem bewahrt und gleichzeitig keine Sicherheitsschwäche einführt, während man sudoeine oder mehrere Umgebungen bewahrt. Variablen. Zumindest sollte es bewahren ENV, nein?

Ich hoffe, ich mache mich hier klar.

0
Welche Plattform ist das? Auf einigen Plattformen verlinkt "/ bin / sh" auf [Almquist-Shell] (http://en.wikipedia.org/wiki/Almquist_shell). Elliott Frisch vor 10 Jahren 0
Entschuldigung, es ist Arch Linux x86-64, ich habe es in die Frage gestellt. amn vor 10 Jahren 0

0 Antworten auf die Frage