Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Befehle ohne Passwort

Empfohlene Antworten

Hi @all,

ich hab folgende Problemstellung. Ich muss einen Benuter XXX die Möglichkeit bieten, einen /bin/su - auf 3 verschiedene VerfahrensUser zu machen, ohne das der User XXX ein passwort eingeben muss.

Ich dachte mir, ich trag das im SUDO ein und somit kann bzw. darf das nur der Benutzer XXX machen. Nun ist das so, dass der benuter mit den 3 verschiedenen Verfahrensuser einen /bin/su - verfahrensuser1 -c "BEFEHL" absetzen möchte.

Nun habe ich das folgendermasen im sudo eingetragen:

sudo ein /bin/su - verfahrensuser1 -c *

Was denkt ihr, könnte dies zu einem Sicherheits Problem führen ? Wenn ja welchen ?

Danke schon mal im voraus.

Gruß

Merenda

Hi,

danke erst mal für dein Post, leider nicht, weil ich auf diesen Maschienen kein SSH einsetzen darf. Das ist ein bisschen komplieziert zu erläutern.

Also mit dem Sudo funktioniert es aufjedenfall.

Aber die Frage ist nur, ob das zu Sicherheitslücken führen könnt ?!

Gruß

Merenda

Also wenn ich das richtig verstanden habe, hast du keine Probleme mit der Realisierung (also keine Erklärung von mir hier), du willst nur wissen, ob das schlau ist.

Du musst dir klar werden, dass alle, die den Benutzer XXX verwenden, zu den 3 Benutzern mutieren können, sprich, du kannst nicht mehr sagen, wer welche Aktion wirklich ausgeführt hat.

Warum machst du überhaupt

sudo ein /bin/su - verfahrensuser1 -c *
und nicht
sudo -u <user> <command>

?

Außerdem würde ich nicht eine vollständige shell hergeben, sondern nur die benötigten Befehle freischalten (kommt auf deine Aufgabenstellung drauf an).

PS: Du solltest die Befehle absolut eintragen (z.B. /sbin/shutdown), damit nicht ein Programm in ~/bin/ dein Passwort klaut :)

Hi,

also das mit den Absoluten Befehle habe wollte ich auch einrichten, aber das geht nicht, die Brauchen eine volle shell.

Wie kann ich das einstellen

sudo -u <user> <command>

Das habe ich nicht so ganz verstanden, das hört sich aber gut an, würde dann nur als User laufen...

Und wie meinst du das mit dem Passwortklau ?

Gruß

Merenda

Also möchtest du doch einen Auszug aus /etc/sudoers?

(benutze zum Bearbeiten visudo)

In etwa so:


Runas_Alias	VERFAHRENSUSER = verfahrensuser1,verfahrensuser2,verfahrensuser3

xxx		ALL=(VERFAHRENSUSER) NOPASSWD: /bin/sh

Die Felder bedeuten: 1. Benutzer, den die Regel betrifft 2. Rechner, auf dem die Regel gilt, ALLe :) 3. Benutzer, zu denen gewechselt werden kann 4. Ich mag kein Passwort 5. Befehle siehe google->man sudoers der Befehl
sudo verfahrensuser1 -c /bin/sh

wird dann von xxx benutzt, wenn die sudoers-Datei installiert ist.

Wenn der Benutzer xxx in ~/bin ein programm sh hat, und du sh statt /bin/sh verwendest, wird diese Datei aufgerufen! Also Sicherheitslöchli.

Aha ok ich verstehe was du jetzt meinst mit dem Sicherheitsloch ...

Also ich hab die Sudoers folgendermasen Configuriert:

User_Alias SWITCHUSER = XXX,  test_visudo


Cmnd_Alias SWITCHUSERCMD = /bin/su - user1 -c *, \

                                           /bin/su - user2 -c *, \

                                           /bin/su - user3 -c *, \



SWITCHUSER MARS = NOPASSWD: SWITCHCMD

Aber ich verstehe immer noch nicht wie das mit dem sudo -u funktioniert ?!

Ich hab mir die manpage für sudo schon ein paar mal angeschaut, aber ich steig da nicht durch :confused:

Gruß

Merenda

1. Vergiss su!!

2. visudo verwendest du um die Konfiguration von sudo zu bearbeiten.

Dein sudo ruft einen Befehl, i.e. eine Shell als ein anderer Benutzer auf.

Mit der config in /etc/sudoers


User_Alias	SWITCHUSER = XXX

Runas_Alias	VERFAHRENSUSER = verfahrensuser1,verfahrensuser2,verfahrensuser3

Cmnd_Alias	SWITCHUSERCMD = /bin/sh


SWITCHUSER ALL = (VERFAHRENSUSER) NOPASSWD: SWITCHCMD

Also ruf visudo auf und schreib das in deine config. 2. Gehe in den Account XXX, und versuche
xxx$ sudo -u verfahrensuser2 /bin/sh /bin/sh

verfahrensuser2$whoami

verfahrensuser2

und so ... verstanden?

Hi,

ok ich hab verstanden, wie ich das jetzt einrichten soll, aber was habe ich für ein Vorteil ?

Merenda

Dass du kein Passwort eingeben musst, wenn du den Benutzer von xxx auf einen der verfahrensuser wechseln willst, was du bei su machen müsstest.

Und dass es funktioniert :) <-- hoffe ich

Dass du kein Passwort eingeben musst, wenn du den Benutzer von xxx auf einen der verfahrensuser wechseln willst, was du bei su machen müsstest.

Und dass es funktioniert :) <-- hoffe ich

Ja aber wenn ich es so eintrage wie hier muss ich auch kein Passwort eingeben, wenn ich mit dem User xxx oder test_visudo zu einem der Verfahren user welchsle, bzw. ein Commando ausführe.

User_Alias SWITCHUSER = XXX,  test_visudo


Cmnd_Alias SWITCHUSERCMD = /bin/su - user1 -c *, \

                           /bin/su - user2 -c *, \

                           /bin/su - user3 -c *, \



SWITCHUSER MARS = NOPASSWD: SWITCHCMD

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.