• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Script ausführen bei "fast user switch"

  • Ersteller Ersteller Gelöschter User 77612
  • Erstellt am Erstellt am

Gelöschter User 77612

Gast
Moin,

ich bin auf der Suche nach einer Möglichkeit, ein Script auszuführen, welches laufen soll, bevor ich per "fast user switch" auf ein anderes, laufendes Profil wechsel.

Diese Script soll jedes mal Laufen (in dem aktuellen Profil), bevor der Mac das zweite Profil öffnet.

Warum das?
Ich baue über ein definiertes Profil eine VPN Verbindung auf und sollte der Nutzer auf "sein" persönliches, nicht eingeschränktes Profil wechseln, will ich verhindern dass er per root-Rechte Dateien aus dem VPN Profil kopieren kann, bzw. ich will diese vor dem Zugriff auf sein privates Profil verschlüsseln.
Ich möchte unseren Nutzern gerne die Möglichkeit des "fast user switch" geben, welches genommen werden muss, sofern keine Lösung wie oben existieren sollte.

Dank und Gruß, Tobi
 
Normale Benutzer bekommen keine root-Rechte, nur Administratoren haben diese Möglichkeit.
Nimm den anderen Nutzern das Recht den Computer zu verwalten, Problem beseitigt.
(Alles andere wäre Quatsch, denn root kann sowieso jede von dir vorgenommene Änderung widerrufen. Deine niedlichen Skripte wären so einfach zu exterminieren wie sonst noch was.)

BTW
Was ist ein "Profil"?
 
Moin,
danke für die Antwort.

Das Szenario ist folgendes:
Ein Nutzer bekommt ein Script (bereits existent) und lässt dieses auf seinem, privaten Mac laufen. Daraufhin wird ein neuer Nutzer angelegt, welcher seeeeehr eingeschränkt ist, spricht er darf sich nur per VPN Einwählen, ansonsten nichts. Beim Abmelden wird das Profil in den Urzustand zurückversetzt, sprich alles runtergeladene wird gelöscht.

Ich möchte mit dem Script verhindern, dass der User den "fast user switch" macht um die runtergeladenen Daten per "sudo su -" als root aus dem eingeschränkten Profil in sein eigenes kopiert. Was auch helfen würde ist, dass die Daten während dem switch verschlüsselt werden, so dass der User nicht direkt auf die Inhalte zugreifen kann.

Danke und Gruß, Tobi

PS: Mist... Profil -> Userprofil -> Account
 
1) Was soll ein "sudo su -" sein?
Im Klartext: "Benutze ein Programm zur Erlangung von root-Rechten, um damit ein anderes Programm zu starten, welches ebenfalls der Erlangung von root-Rechten dient."
Womit klar wäre dass hier ein ganz bestimmtes Sprichwort einfach fallen muss:
"Messer, Gabel, Schere, Licht....."

2) Hat ein Benutzer *irgendeine* Möglichkeit an root-Rechte zu gelangen, dann kannst du ihn nicht an solchem Unterfangen hindern. Kein Skript und keine obskure Verschlüsselung wird das jemals bewerkstelligen können. Nicht mal das abschalten der schnellen Benutzerumschaltung wird helfen. Mit solchen Gedankengängen zu spielen ist pure Schildbürgerei und reine Zeitverschwendung.
Egal wie weit dieses "Projekt" schon fortgeschritten ist - stampfe es ein.
 
Moin,

"sudo su -", weil ein "su -" normalerweise nicht funktioniert.

Ein Kollege hat ein Script erstellt, welches einen Account anlegt, welcher in soweit beschränkt ist, dass genau der VPN Zugang aufgebaut werden darf, mehr nicht. Die Schnelle Benutzerumschaltung abzuschalten ist möglich und wird wohl auch umgesetzt, außer ich finde ein Möglichkeit, dieses nicht zu benötigen. Ansonsten muss der Nutzer während der Arbeit per VPN auf seine private Umgebung verzichten.

Rein technisch ist es so gelöst, dass der Account eine "Datei" (laut Juniper) verfügt, die als Gegenprüfung für eine SSL VPN Gateway dient, somit der VPN Aufbau erlaubt wird. Der Aufbau muss in einer gesicherten Umgebung passieren, alle während der VPN Session gesammelten Daten müssen beim Abbau der VPN Session restlos gelöscht werden, was schon funktioniert.

Ich versuche nur, nebenbei noch die Möglichkeit zu geben, seine private Umgebung nutzen zu können, z.B. für E-Mails, Surfen, etc...
 
"sudo su -", weil ein "su -" normalerweise nicht funktioniert.
Verbesserungsvorschlag:
Code:
sudo sudo sudo sudo sudo sudo sudo sudo sudo su -
Dann bist du ganz bestimmt noch viel mehr und ganz feste "root", eigentlich sogar "Doppelroot"!
Nein, nennen wir es besser "knallroot".

Ein Kollege hat ein Script erstellt, welches einen Account anlegt, welcher in soweit beschränkt ist, dass genau der VPN Zugang aufgebaut werden darf, mehr nicht.
Und inwiefern soll das einen Benutzer auch nur ansatzweise beeindrucken, der jegliche dieser auferlegten Beschränkungen jederzeit umgehen bzw nach Belieben wieder ausser Kraft setzen kann?

Ansonsten muss der Nutzer während der Arbeit per VPN auf seine private Umgebung verzichten.
Du wirst einen Admin nicht dazu zwingen können.

Der Aufbau muss in einer gesicherten Umgebung passieren
Für Benutzer mit root-Rechten gibt es keine "gesicherten Umgebungen".
 
Verbesserungsvorschlag:
Code:
sudo sudo sudo sudo sudo sudo sudo sudo sudo su -
Dann bist du ganz bestimmt noch viel mehr und ganz feste "root", eigentlich sogar "Doppelroot"!
Nein, nennen wir es besser "knallroot".
Also, ein frisches Mac OS 10.6 lässt ein "su -" im Terminal nicht zu, ein "sudo su -" jedoch funktioniert. Und nein, ich bin kein Profi, ich habe es einfach nur probiert.


Und inwiefern soll das einen Benutzer auch nur ansatzweise beeindrucken, der jegliche dieser auferlegten Beschränkungen jederzeit umgehen bzw nach Belieben wieder ausser Kraft setzen kann?
Mmmmh, Apple hat uns ein Script zur Verfügung gestellt, welches einen Account erstellt. Innerhalb dieses Account ist es definitiv nicht möglich irgendeine Aktion auszuführen, welche nicht explizit freigeschaltet ist. Natürlich gilt dieses nur, solange die schnelle Benutzerumschaltung deaktiviert ist.


Du wirst einen Admin nicht dazu zwingen können.
Kein Admin, weil toller Account, der macht was wir wollen.
 
Also, ein frisches Mac OS 10.6 lässt ein "su -" im Terminal nicht zu, ein "sudo su -" jedoch funktioniert.
Du sitzt momentan extrem schwer auf der Leitung, hm?
Ein einziges mal zu "root" zu werden genügt. Wofür denn noch das "su" ??????
Versuch doch mal ein "sudo -s", ein "sudo -i" oder einfach nur ein "sudo irgendeinkommando".

Mmmmh, Apple hat uns ein Script zur Verfügung gestellt, welches einen Account erstellt.
Du kannst auch hunderte oder tausende davon erstellen, mit Beschränkungen so hart wie du willst. Solange der gleiche Anwender am gleichen System auch noch über ein einziges weiteres Admin-Konto verfügt, bleibt das alles völlig ohne jede Bedeutung.

Druck dir diesen Satz aus und häng ihn an die Wand:
"EINMAL root --> FÜR IMMER root"​
Deine Opfer HABEN dieses Privileg auf ihren eigenen Rechnern doch längst.
Es gibt für dich KEINEN WEG, es ihnen wieder zu entziehen. Betonung auf: "keinen", in Zahlen ausgedrückt: Null.

Innerhalb dieses Account ist es definitiv nicht möglich...
Hervorhebung:
Innerhalb dieses Account ist es definitiv nicht möglich...
Jetzt die Preisfrage:
Wie willst du dafür sorgen, dass das gleiche auch ausserhalb gilt, damit das irgendwas bewirken kann?

Natürlich gilt dieses nur, solange die schnelle Benutzerumschaltung deaktiviert ist.
Dir ist schon klar, dass diese "schnelle Benutzerumschaltung" einzig und allein dazu dient, mehrere komplette grafische Benutzersitzungen simultan ausführen zu können, oder?
Für ein simples Kommandozeilentool, welches im Hintergrund die von dir "geschützten" Daten abgreift, schon während du sie herunterlädst oder sonstwie benutzt, braucht man sowas überhaupt nicht.

Kein Admin, weil toller Account, der macht was wir wollen.
Du richtest also nicht nur ein neues Konto ein, sondern löscht gleichzeitig alle anderen?
Und lässt damit schon nach einmaliger Anwendung dieses Wunder-Skripts einen absolut überhaupt nicht mehr verwendbaren Rechner zurück, an dem sich niemand mehr anzumelden vermag? Na, das wird bei deinen Klienten sicher helle Freude auslösen.
 
Zuletzt bearbeitet:
Also, ein frisches Mac OS 10.6 lässt ein "su -" im Terminal nicht zu, ein "sudo su -" jedoch funktioniert.
Du sitzt momentan extrem schwer auf der Leitung, hm?
Ein einziges mal zu "root" zu werden genügt. Wofür denn noch das "su" ??????
Versuch doch mal ein "sudo -s", ein "sudo -i" oder einfach nur ein "sudo irgendeinkommando".

Mmmmh, Apple hat uns ein Script zur Verfügung gestellt, welches einen Account erstellt.
Du kannst auch hunderte oder tausende davon erstellen, mit Beschränkungen so hart wie du willst. Solange der gleiche Anwender am gleichen System auch noch über ein einziges weiteres Admin-Konto verfügt, bleibt das alles völlig ohne jede Bedeutung.

Druck dir diesen Satz aus und häng ihn an die Wand:
"EIN MAL root, FÜR IMMER root"​
Deine Opfer HABEN dieses Privileg auf ihren eigenen Rechnern doch längst.
Es gibt für dich KEINEN WEG, es ihnen wieder zu entziehen. Betonung auf: "keinen", in Zahlen ausgedrückt: Null.

Innerhalb dieses Account ist es definitiv nicht möglich...
Hervorhebung:
Innerhalb dieses Account ist es definitiv nicht möglich...
Jetzt die Preisfrage:
Wie willst du dafür sorgen, dass das gleiche auch ausserhalb gilt, damit das irgendwas bewirken kann?

Natürlich gilt dieses nur, solange die schnelle Benutzerumschaltung deaktiviert ist.
Dir ist schon klar, dass diese "schnelle Benutzerumschaltung" einzig und allein dazu dient, mehrere komplette grafische Benutzersitzungen simultan ausführen zu können, oder?
Für ein simples Kommandozeilentool, welches im Hintergrund die von dir "geschützten" Daten abgreift, schon während du sie herunterlädst oder sonstwie benutzt, braucht man sowas überhaupt nicht.

Kein Admin, weil toller Account, der macht was wir wollen.
Du richtest also nicht nur ein neues Konto ein, sondern löscht gleichzeitig alle anderen?
Und lässt damit schon nach einmaliger Anwendung dieses Wunder-Skripts einen absolut überhaupt nicht mehr verwendbaren Rechner zurück, an dem sich niemand mehr anzumelden vermag? Na, das wird bei deinen Klienten sicher helle Freude auslösen.
 
Wofür denn noch das "su" ?
Das ist eine Angewohnheit von mir, ich arbeite gerne, solange ich administrative Aufgaben übernehme, als root und möchte nicht jeden Befehl per sudo authorisieren.

Es gibt für dich KEINEN WEG, es ihnen wieder zu entziehen. Betonung auf: "keinen", in Zahlen ausgedrückt: Null.
Genau das will ich auch nicht.

Wie willst du dafür sorgen, dass das gleiche auch ausserhalb gilt, damit das irgendwas bewirken kann?
Genau hier setzt meine Überlegung an. Ich möchte keine root Rechte entfernen, ich möchte nur, dass auch der root keinen Zugriff auf eine unverschlüsselte Datei erhält. Natürlich, sollte ein Script im Hintergrund laufen, welches alle Datein des Accounts "VPN" kopiert, habe ich keine Change. Aber, sollte der User vom Accounv "VPN" auf einen anderen wechseln, so wäre es schön, wenn die vorhandenen Dateien verschlüsselt werden könnten. Es geht hier keinesfalls um absolute Sicherheit, die es ja eh nicht gibt. Es geht darum, den Standardanwender daran zu hintern, die Dateien aus dem Profil "VPN" zu bekommen, solange diese noch unverschlüsselt sind.


Dir ist schon klar, dass diese "schnelle Benutzerumschaltung" einzig und allein dazu dient, mehrere komplette grafische Benutzersitzungen simultan ausführen zu können, oder?
Natürlich

Du richtest also nicht nur ein neues Konto ein, sondern löscht gleichzeitig alle anderen?
Auf keine Fall! Da es sich um private Rechner handelt, legen wir einen Account "VPN" an, auf diesem können wir Veränderungen vornehmen, aber sicherlich nicht auf den Accounts, die der User eh schon eingerichtet hat.

Und lässt damit schon nach einmaliger Anwendung dieses Wunder-Skripts einen absolut überhaupt nicht mehr verwendbaren Rechner zurück, an dem sich niemand mehr anzumelden vermag? Na, das wird bei deinen Klienten sicher helle Freude auslösen.
Auch das nicht. Das Script gibt uns die Möglichkeit, jedwege Aktion im Account "VPN" zu unterbinden, außer wir erlauben es explizit, z.B. das Aufrufen der Webseite, welche den VPN Client pusht.

Natürlich hätte ich auf der einen Seite gerne ein sehr geschlossenes System, auf der anderen Seite, als Mac Nutzer, möchte ich soviel wie möglich Komfort für den User erhalten. Aber, bei über 20.000 Kunden, welche einen Mac nutzen, sind immer welche darunter, die alles was wir machen, aushebeln können. Um diese geht es aber nicht.

Dank und Gruß, Tobi
 
Das ist eine Angewohnheit von mir
Lege sie ab.

ich arbeite gerne, solange ich administrative Aufgaben übernehme, als root und möchte nicht jeden Befehl per sudo authorisieren.
1) Nicht empfehlenswert. Unsicher.

2) Nicht nötig.
sudo gewährt einen Zeitrahmen von 5 Minuten, in dem keine weitere Authentifizierung nötig ist. Der Zeitrahmen kann beliebig geändert werden (nicht empfehlenswert).

3) Genau das leisten "sudo -s" oder "sudo -i".

Genau das will ich auch nicht.
Aha. Was genau an dem...
"...will ich verhindern dass er per root-Rechte Dateien aus dem VPN Profil kopieren kann..."
...habe ich missverstanden?

ich möchte nur, dass auch der root keinen Zugriff auf eine unverschlüsselte Datei erhält.
root hat Zugriff auf alles. Punkt.

Es geht darum, den Standardanwender daran zu hintern, die Dateien aus dem Profil "VPN" zu bekommen, solange diese noch unverschlüsselt sind.
Standardanwender haben auch auf unverschlüsselte Daten aus anderen Sitzungen keinerlei Zugriff.
Und auf Administratoren wirken solche obskuren Verschleierungsversuche lediglich desolat vertrauenszerstörend, und das völlig zurecht.
Von wem würdest du allen Ernstes verlangen wollen, solchem Treiben sein "OK" zu geben?
Völlig egal was das Thema dieses "Dienstes" sein soll - so gewinnt man keine Kunden, so vergrault man sie.

Aber, bei über 20.000 Kunden...
Sowas kannst du mit Chuzpah durchdrücken wenn du ein Quasimonopol mit 200.000.000 oder mehr Kunden vorweisen kannst.
Und auch dann wirst du daran scheitern, dass keine 3 Tage nach der Veröffentlichung die entsprechenden Anleitungen zum effektiven Aushebeln solcher Schikanen im Netz kursieren.
 
ok, so vertraut war ich mit sudo nicht nicht, vielen Danke!

root hat Zugriff auf alles. Punkt.
Das ist doch auch vollkommen ok. Jeder darf sich die Dateien angucken können, sobald sich der User im Account "VPN" abmeldet, wird das Profil eh zurückgesetzt, somit bleiben keine Dateien zurück. Es geht darum, die Dateien während der Laufzeit, z.B. bei einer schnellen Benutzerummeldung, zu verschlüsseln. Die Vorstellung ist, dass ein anderer User vielleicht die Dateien hat, diese aber nicht einsehen kann, weil "Datensalat".

Sowas kannst du mit Chuzpah durchdrücken wenn du ein Quasimonopol [...] vorweisen kannst.
Das ganze ist Firmenintern, somti haben wir tatsächlich das Monopol, auch wenn es aus Deinen Fingern irgendwie negativ klingt :)
 
Die Vorstellung ist, dass ein anderer User vielleicht die Dateien hat, diese aber nicht einsehen kann, weil "Datensalat".
Auf der Basis privat genutzter Rechner mit lokalen Admin-Privilegien ist so etwas nicht realisierbar.
In Firmennetzen gibt es Praktiken wie "NetBoot", und damit verbunden eine Anmeldeprozedur am Server, die nur dann (und wirklich NUR dann) Zugriff gewährt wenn unter einem solchen ***total*** "zugenagelten" System gearbeitet wird.
 
Auf der Basis privat genutzter Rechner mit lokalen Admin-Privilegien ist so etwas nicht realisierbar.
Danke Dir, somit wird die schnelle Benutzerumschaltung deaktiviert, dann müssen sich die User nach dem Arbeiten per VPN aus dem VPN Account abmelden.

Grüße, Tobi