PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [shell] passwort verstecken



Blackhawk
18-08-2004, 09:03
Folgendes Problem:

Ich will den Users gestatten, ein Script auf einem NFS-Verzeichnis auszufuehren, das ihren Samba-Rechner in die Domaene aufnimmt. Die User sollen das aber nicht das Passwort lesen koennen, das zum Domaenen-Add erforderlich ist.

Im Script muss im Prizip nur stehen:

net join -U DOMAENE\\adminuser%passwort
Wie verstecke ich das passwort???

peschmae
18-08-2004, 10:22
Das Problem ist dass Ausführen ohne Leserechte nicht geht.

Eine Möglichkeit wäre dass du das Script mit Besitzer Root und Berechtigungen 500 erstellst.
Die User kriegen dann via Sudo das Recht das Script auszuführen.

Ein entsprechender Eintrag in /etc/sudoers sieht etwa so aus:


User_Alias USERS = peschmae, sonstjemand
Cmnd_Alias SCRIPT = /usr/sbin/script.sh

USERS ALL=NOPASSWD:SCRIPT


MfG Peschmä

Blackhawk
18-08-2004, 12:09
Aber localer root ist doch nicht root auf NFS...
Und lokal ablegen will ich auch nicht, da der lokale root nicht alles wissen soll...

peschmae
18-08-2004, 15:46
Ich meinte auch mit Rechten des Lokalen Roots. Wenn das nicht geht, keine Ahnung.

Möglicherweise lässt sich da mit Access Control lists was hinkriegen - glaube ich aber eher nicht. Sonst sehe ich da keine Lösung.

MfG Peschmä

fork
18-08-2004, 19:49
> net join -U DOMAENE\\adminuser%passwort
>
> Wie verstecke ich das passwort???

Du bedenkst dabei auch das ein so eingegebener Befehl mit dem Passwort während der Ausfuehrung fuer jeden lesbar in /proc/$PID/cmdline steht. Ein findiger Nutzer schreibt ein kleines Perlscript das jede halbe Sekunde den procstatus nach solchen Befehlen abscannt ...

Vor dem lokalen root kannst Du es nicht verstecken es sei den du verschlüsselst es und belässt keine Möglichkeit es automatisch zu entschluesseln.

Täusche ich mich oder ging das nicht das erst am Server das Maschinenkonto erzeugt wird und (zu irgend einem späteren Zeitpunkt) bei der Aufnahme der Workstation dann keine Domänenrechte mehr erforderlich sind? Wenn ich mich weiterhin entsinne ist das aber auch ein sicherheitskritisches Zeitfenster. Denn bis zu dem Zeitpunkt an dem die Maschine beitritt kann jede andere Workstation mit dem gleichen Namen(des Maschinenkontos) ohne Rechte der Domäne beitreten.

Ich hoffe ich habe genug Verwirrung gestiftet...

Blackhawk
19-08-2004, 08:30
...
Täusche ich mich oder ging das nicht das erst am Server das Maschinenkonto erzeugt wird und (zu irgend einem späteren Zeitpunkt) bei der Aufnahme der Workstation dann keine Domänenrechte mehr erforderlich sind? Wenn ich mich weiterhin entsinne ist das aber auch ein sicherheitskritisches Zeitfenster. Denn bis zu dem Zeitpunkt an dem die Maschine beitritt kann jede andere Workstation mit dem gleichen Namen(des Maschinenkontos) ohne Rechte der Domäne beitreten...
Das stimmt, du hast vollkommen Recht. So haben wir es bisher auch gemacht.
Ich erklaere jetzt mal mein Problem:
- Unsere Entwicklungsabteilung will selbst (Linux)-Rechner in die Domaeine aufnehmen (und am liuebsten auch loeschen).
- Wir (UX-/Linux -Team) wollen nur eine Samba-Domaene haben.
- Windows-Team will nicht, dass RnD-ler das Domaenenadmin-Passwort kennen
- Windows-Team will kein Script zum anlegen und loeschen von Computerkonten scripten...

fork
19-08-2004, 17:17
> - Windows-Team will kein Script zum anlegen und loeschen von Computerkonten scripten...

Das genau hätte ich jetzt aber vorgeschlagen vorgeschlagen:
[list] Ein Rechner der Entwicklungsabteilung bekommt einen ssh-key der auf einem bestimmten Rechner auf einem bestimmten user Zugreifen darf
Dieser user bekommt via sudo das Recht Rechner in die Domaene aufzunehmen,

> - Windows-Team will nicht, dass RnD-ler das Domaenenadmin-Passwort kennen

Soweit ich weis braucht man kein Domänenadminrecht sondern nur das Recht "Hinzufügen/Entfernen von Arbeitsstationen zur/von der Domäne"(Das ist jetzt noch Stand NT 4) um mit den Windows-Admin-Tools den Rechner in die Domäne aufzunehmen.
Das könnten ja dann die RnD Leute so machen.