Operator 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Hi coolsuper, aber nicht jeder möchte sofort die Rechte für die User erhöhen, um ein paar kleine Einstellungen vorzunehmen. Ich denke die Berechtigungsgeschichte in der Registry ist die elegantere Lösung! Gruß Andre aka Operator Zitieren Link zu diesem Kommentar
psychonatic 10 Geschrieben 8. April 2004 Autor Melden Teilen Geschrieben 8. April 2004 Hi, habe den Befehl im Active Directory gefunden, so dass meine User jetzt lokale Adminrechte besitzen. Vorteil: Mein Logon_Script funktioniert jetzt 100 %. Nachteil: User besitzen nun zu viele Rechte, und genau das sollen sie ja nicht. (Voteil an Nachteil, User sind nicht gerade die hellsten, d.h. selbst wenn sie alle Rechte hätte die sie bekommen könnten, würden sie nichts damit anfangen können... ;) ) Weiß irgendjemand den Befehl, den ich in mein Logon_Script schreiben kann, dass die User am Anfang wenn sie sich anmelden, Lokale-Adminrechte besitzen, und gleich nach der Anmeldung, diese wieder weg sind. Hoffe ihr könnt mir helfen. Gruß BP Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Hi psychonatic, nein das geht nicht! Musst schon ein wenig Finetuning betreiben was Deine scripte angeht! Mach doch einfach das auf, was dein script auch an Berechtigung benötigt und nicht mehr... Admin-Rechte sind definitiv zu viel und Hauptbenutzer muss auch nicht sein. Andre Zitieren Link zu diesem Kommentar
psychonatic 10 Geschrieben 8. April 2004 Autor Melden Teilen Geschrieben 8. April 2004 Wo sehe ich, was für Rechte ich für mein Script brauche? Habe noch eine zweite Frage. Ich würde gerne durch ein Passwort meinen Usern verbieten, auf den server zuzugreifen. Also sprich wenn sie z.b im Explorer eingeben \\srv01... Gruß BP Zitieren Link zu diesem Kommentar
crime4549 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 hi, wenn ich dein Script richtig gedeutet habe ist das eine .bat /.cmd file versuchs mal mit einer VBS die folgenden eintrag enthält: inhalt reg_entry.vbs Dim WshShell, bKey, oExec Set WshShell = WScript.CreateObject("WScript.Shell") 'WshShell.RegWrite("logon.reg") ---------------------------------- problem keine. rechte im Regesty Pfad auf jeder / Ändern/voll eintragen. best regrads Zitieren Link zu diesem Kommentar
crime4549 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 ich poste dir hier mal ein script von mir: '###################################################### '##### ***** WICHTIGER HINWEIS ***** ##### '## ## '## Die Laufwerksbuchstaben ## '### müssen ### '#### groß geschrieben Werden #### '##### ##### '###### ###### '######## Dieses Script ####### '######### ######## '########## wurde von crime4549@yahoo.de ######### '########### geschrieben ########## '###################################################### 'Systmpartner Anrufen . Durch beliebeigen Text ersetzten !! Die 10 fach bestätigung MUSS BLEIBEN !! public Const msg_sysp = "Ihr Terminal - Server - Profil wurde Zerstört !!!. Wenden Sie sich sofort an Ihren Systempartner unter xxxxxxxxx. Diese Nachricht muss 10 mal bestätigt werden. Sie werden unverzüglich Abgemeldet !!!" 'Ab hier nichts mehr verändern !!! '__________ Dim WshShell, bKey, oExec Set WshShell = WScript.CreateObject("WScript.Shell") 'WshShell.RegWrite("logon.reg") dim ReG on error resume next ReG = Wshshell.RegRead("HKCU\Software\shy-com\EsT\ReG\logon.reg") if ReG = "1" then call GO else msgbox "Netzlaufwerke können nicht Verbunden werden."& (chr(10)) & (chr(13)) & " Wenden Sie sich bitte an Ihren Systempartner!!" wscript.quit end if :GO Dim TS1, TS2, lw1, lw2, lw3, lw4,lw5,lw6, lw7, pf1, pf2, pf3, pf4, pf5, pf6, pf7, ad1, ad2, r_drv on error resume next TS1 = WshShell.RegRead("HKCU\Software\shy-com\EsT\SrV\TS1") TS2 = WshShell.RegRead("HKCU\Software\shy-com\EsT\SrV\TS2") r_drv = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\rdrv\rdrv") ad1 = WshShell.RegRead("HKCU\Software\shy-com\EsT\AdM\ad1") ad2 = WshShell.RegRead("HKCU\Software\shy-com\EsT\AdM\ad2") lw1 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW1") lw2 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW2") lw3 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW3") lw4 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW4") lw4 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW4") lw4 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\LW4") pf1 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf1") pf2 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf2") pf3 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf3") pf4 = WshShell.RegRead("HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf4") WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\LW1", lw1, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\LW2", lw2, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\LW3", lw3, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\LW4", lw4, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf1", pf1, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf2", pf2, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf3", pf3, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\Pfd\pf4", pf4, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NtzLw\rdrv\rdrv", r_drv, "REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\SrV\TS1", ts1,"REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\SrV\TS2",ts2,"REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\AdM\ad1",ad1,"REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\AdM\ad2",ad2,"REG_SZ" WshShell.RegWrite "HKCU\Software\shy-com\EsT\NfO\NfO","","REG_SZ" '----------- 'Ab hier nichts mehr verändern !!! dim x Set WshNetwork = WScript.CreateObject("WScript.Network") x= WshNetwork.userName dim logmsg call Start() '---------- Funktion ob root drive existiert !! ------------------ Function LWStatusBerichten(lwPfad) Dim fso, msg Set fso = CreateObject("Scripting.FileSystemObject") If fso.DriveExists(r_drv) Then ' Laufwerk ok dan ... . call chk_user() call drive_w() Else ' Benutzer Prüfen .... . call chkuser() call sys_partner() End If LWStatusBerichten = msg End Function '---------- Sub´s -------------------------- ' Sub START() public Sub Start() Dim WshNetwork, oNet, sUser, x, WshShell Set WshNetwork = WScript.CreateObject("WScript.Network") If WsHNetwork.ComputerName = TS1 then call LWStatusBerichten(lwPfad) else '--- +++ Die Computernamen Anpassen +++ --- If WsHNetwork.ComputerName = TS2 then call LWStatusBerichten(lwPfad) else call NetzVerbinden End If 'call NetzVerbinden End If End Sub ' Sub NETZVERBINDEN() public Sub NetzVerbinden() Dim WshNetwork, oNet, sUser, x, WshShell Set oNet = CreateObject("WScript.Network") Set WshShell = WScript.CreateObject("WScript.Shell") sUser = oNet.UserName Set WshNetwork = WScript.CreateObject("WScript.Network") '---- Netzlaufwerke Hinzufügen ------ On Error Resume Next '--- +++ Netzlaufwerke und Buchstaben anpassen!! +++ --- Zitieren Link zu diesem Kommentar
crime4549 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 WshNetwork.RemoveNetworkDrive lw1 WshNetwork.RemoveNetworkDrive lw2 WshNetwork.RemoveNetworkDrive lw3 WshNetwork.RemoveNetworkDrive lw4 WshNetwork.MapNetworkDrive lw1, pf1 WshNetwork.MapNetworkDrive lw2, pf2 WshNetwork.MapNetworkDrive lw3, pf3 WshNetwork.MapNetworkDrive lw4, pf4 MsgBox "Netzlaufwerke Erfolgreich eingerichtet",vbInformation,"Logon Script" logmsg= "Netzlaufwerke Erfolgreich eingerichtet" exit Sub End Sub ' Sub DRIVE_W() public Sub drive_w() Dim WshNetwork, oNet, sUser, x, WshShell, y, z Set oNet = CreateObject("WScript.Network") Set WshShell = WScript.CreateObject("WScript.Shell") sUser = oNet.UserName Set WshNetwork = WScript.CreateObject("WScript.Network") '---- Netzlaufwerke Hinzufügen ------ On Error Resume Next '--- +++ Netzlaufwerke und Buchstaben anpassen!! +++ --- WshNetwork.RemoveNetworkDrive lw1 WshNetwork.RemoveNetworkDrive lw2 WshNetwork.RemoveNetworkDrive lw3 WshNetwork.RemoveNetworkDrive lw4 WshNetwork.MapNetworkDrive lw1, pf1 WshNetwork.MapNetworkDrive lw2, pf2 WshNetwork.MapNetworkDrive lw3, pf3 WshNetwork.MapNetworkDrive lw4, pf4 x= WshNetwork.userName y="Es wurden Keine Fehler im Profil:" z=" gefunden" MsgBox y & (chr(10))& (chr(13))& x & z,vbInformation,"Terminal Patch Rev.1.1.2" logmsg = "Loggin und Profil OK !!" call pruefung() WsHShell.LogEvent 0, "Loggin und Profil "& x &" OK" WsHShell.LogEvent 4, "Logon Script ©by crime4549" & (Chr(13)) & (Chr(10)) & "Info´s unter crime4549@yahoo.de" End Sub ' Username Überprüfen '----Benutzername überprüfen ----- public Sub chk_user() Dim oNet, sUser Set oNet = CreateObject("WScript.Network") sUser = oNet.UserName '--- Benutzernamen Abfragen --- If sUser= ad1 then 'msgbox "Adminst anmeldung" If sUser= ad2 then call Admin2 else End If call Admin exit Sub else End If End Sub ' Systempartner Anrufen Hier kann Geändert werden !! public Sub sys_partner dim i, WshShell, oExec, WshNetwork, x, txt,prg Set WshNetwork = WScript.CreateObject("WScript.Network") Set WshShell = WScript.CreateObject("WScript.Shell") x= WshNetwork.userName prg="net send" txt = ("w2000srv" & "Profil von:" & (Chr(13)) & (Chr(10)) & x & (Chr(13)) & (Chr(10)) & " Zerstörrt. Benutzer hat 10 mal Bestätigt!!" & (Chr(13)) & (Chr(10)) & " Systempartner Anrufen!!") For i = 1 to 10 MsgBox msg_sysp ,vbCritical," +++ Achtung +++ Datenverlust +++ " 'Script By Roman Kress Next 'Set oExec = WshShell.Exec("scs_log.cmd") wsHShell.LogEvent 1, "Profil " & x &" Zersört. Bitte Systempartner Anrufen !!" WsHShell.LogEvent 4, "Logon Script ©by crime4549" & (Chr(13)) & (Chr(10)) & "Info´s unter crime4549@yahoo.de" '---- Bei fehler Sofort wieder Abmelden ---- 'Set WshShell = CreateObject("WScript.Shell") logmsg = "Terminal PROFIL ZERSTÖRRT BITTE AN SYSTEM PARTNER WENDEN !!!!" Set oExec = WshShell.Exec("logoff") End Sub ' Administ login !! public Sub Admin() dim WshShell, oExec Set WshShell = WScript.CreateObject("WScript.Shell") Set oExec = WsHShell.Exec("change user /install") Set oExec = WsHShell.Exec("change logon /disable") MsgBox "Sie Können nun Installieren," &(Chr(13)) &(Chr(10)) & "Terminal Server im Install-Mode" & (Chr(13)) & (Chr(10))&" User Logon wird Verweigert !!"&(Chr(13)) &(Chr(10)) & " Den install-Mode können Sie mit change user /execute verlassen!!" &(Chr(13)) &(Chr(10)) & " mit change logon /enable werden Terminal Anmeldungen wieder Akzeptiert!",vbOK, "+++ ACHTUNG WICHTIGER HINWEIS +++" WshShell.logEvent 4, " Terminal Server wurde in den Install-Mode Gesetzt und die User Anmeldung wird Verweigert" End Sub ' Administrator login public Sub Admin2() dim WsHShell Set WsHShell = WScript.CreateObject("WScript.Shell") For i = 1 to 3 MsgBox " Sie haben das recht User hinzuzufügen, jedoch keine PROGRAMM INSTALLATION !!" &(Chr(13)) & (Chr(10)) & " Um Programme zu installieren melden Sie sich als ADMINST an !!"& (Chr(13))&(Chr(10)) &" diese Meldung muss 3 Mal Bestätigt werden",vbCritical," +++ ACHTUNG WICHTIG INFO +++" Next wshshell.LogEvent 2, " Administrator Anmeldung Hinweis wurde gelesen und drei mal bestätigt !!" End Sub ' VERSUCH LOG FILE ******** Call logdatei(logtxt) DIM Ziel, Text1, Text2, FileIn 'DIM WSHShell, FSO, WSHNet Set WSHShell = WScript.CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set WSHNet = WScript.CreateObject("WScript.Network") Ziel = wshnet.ComputerName & ".tmp" If fso.FileExists(Ziel) Then fso.DeleteFile(Ziel), True Sub LogDatei (LogTxt) Dim FileOut, fso,pfad , name,pf11 Set fso = WScript.CreateObject("Scripting.FileSystemObject") Set WSHNet = WScript.CreateObject("WScript.Network") name =wshnet.username pfad ="\userdirs\" pf11 =pf1 & pfad & name & "\" Zitieren Link zu diesem Kommentar
crime4549 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Set FileOut = fso.OpenTextFile(pf11 & "logon " & WSHNet.username & ".log", 8, true) FileOut.WriteLine (vbCrLf & Now()& vbTab & "Beginne Log:" & (Chr(13)) ) FileOut.WriteLine (Now() & vbTab & logmsg & LogTxt) FileOut.Close Set FileOut = Nothing End Sub ' LogDatei dabei habe ich noch folgende Reg file: logon.reg Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\shy-com] [HKEY_CURRENT_USER\Software\shy-com\EsT] [HKEY_CURRENT_USER\Software\shy-com\EsT\AdM] "ad1"="adminst" "ad2"="Administrator" [HKEY_CURRENT_USER\Software\shy-com\EsT\NfO] "NfO"="" [HKEY_CURRENT_USER\Software\shy-com\EsT\NtzLw] "LW1"="L:" "LW2"="N:" "LW3"="S:" "LW4"="T:" [HKEY_CURRENT_USER\Software\shy-com\EsT\NtzLw\Pfd] "pf1"="\\\\w2000srv\\windvsw1" "pf2"="\\\\w2000srv\\Winprog" "pf3"="\\\\w2000srv\\Service" "pf4"="\\\\w2000srv\\work" [HKEY_CURRENT_USER\Software\shy-com\EsT\NtzLw\rdrv] "rdrv"="W:" [HKEY_CURRENT_USER\Software\shy-com\EsT\ReG] "logon.reg"="1" [HKEY_CURRENT_USER\Software\shy-com\EsT\SrV] "TS1"="W2TS1" "TS2"="W2TS2" [HKEY_CURRENT_USER\Software\shy-com\PrF] [HKEY_CURRENT_USER\Software\shy-com\PrF\NoK] "TnT"="NOK" "TmE"="" "PrG"="" [HKEY_CURRENT_USER\Software\shy-com\PrF\OK] "TnT"="OK" "PrG"="\\\\w2000srv\\netlogon\\prf.vbs" "TmE"="14:58" ---- beide muss natürlich ins netlogon verzeichniss. best regrads ich kann dir auch solch ein Script schreiben Falls du das nicht hinbekommst mail mich einfach an. ( Sorry konnte die Datei leider nicht anhängen ) VBS gehen bei uns nicht durch die Firewall Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Anscheinend glaubt hier jeder, daß alles gut ist, sobald jeder alles darf :) Warum sollte ich meinen Usern beispielsweise erlauben via Registry Diensteinstellungen zu ändern oder Systemeinstellungen? Z.B. ne Software-Verteilungssoftware oder Antivirus? Ließe sich ja damit alles beenden/manipulieren! Und wenns der User nicht macht, kanns irgendein Virus/Wurm der per Mail reinkommt.. Und das ganze am besten noch auf meinem Terminal Server :) Mal drüber nachgedacht? @psychonatic 1. Richte ordentliche Freigabeberechtigungen auf deinen Servern ein (via Ordner-Eigenschaften, Freigabe, Berechtigungen) 2. Schreib Dir auf, was Du mit dem Script alles anpassen willst, aber nicht funktioniert. Sind dies überwiegend Registry-Einträge vergibst du für diese Schlüssel entsprechende Berechtigungen mittels Gruppenrichtlinie (GPO). (unter Computerkonfiguration/Windows-Einstellungen/Sicherheitseinstellungen/Registrierung) Andre aka Operator Zitieren Link zu diesem Kommentar
pentium 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Hi psychonatic , HKCU = Hkeycurrentuser in der regedit GPO sind Gruppenrichtlinien aber was spricht dagegen wen du den usern lokale Hauptbenutzerrechte gibst, können damit ja nicht wirklich viel anstellen und man muß bei vielen applikationen oder programmen sogenannte kopfstände mit script machen. Es wird dir auch bei 5 Usern passieren, daß sie auf manche Verzeichisse diese Rechte brauchen um diverse applikationen auszuführen. zumindest meiner erfahrung nach, da XP Pro in der zugriffseinschränkung manchmal sehr rstriktiv sein kann und manche Programme auf diverse Ordner sogar lokale Adminrechte verlangen damit man sie überhaupt ausführen kann. Also würde ichen Benutzerrechten auf den lokalalen Rechnern die Domänenbenutzer eintragen und somit brauchst auch keine aufwendigen Scripts. lg Pentium Zitieren Link zu diesem Kommentar
psychonatic 10 Geschrieben 8. April 2004 Autor Melden Teilen Geschrieben 8. April 2004 @ pentium Danke. Werde es jetzt auch mal so laufen lassen (also mit den lokalen Rechten). Falls die User dann doch das ganze Netz werk auf n Kopf stellen, melde ich mich wieder ;) Dank an alle die in diesen Thread gepostet haben. @ crime4549 auch dir dank für die mühe. habe mich vom script aber jetzt erstmal weggelehnt. Gruß BP Zitieren Link zu diesem Kommentar
pentium 10 Geschrieben 8. April 2004 Melden Teilen Geschrieben 8. April 2004 Nochmals Hi psychonatic, Brauchst keine Angst zu haben wegen Hauptben. denn auch der ist noch einzuschränken über die lokalen richtlinen, findest sie in der Systemsteuerung, Verwaltng, dort kanst auch dem Hauptbenutzer noch einiges lokal verbieten. goog luck pentium Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.