Jump to content

brauche lokale Admin-Rechte durch Logon-Script


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

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

Link zu diesem Kommentar

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

Link zu diesem Kommentar

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!! +++ ---

Link zu diesem Kommentar

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 & "\"

Link zu diesem Kommentar

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

Link zu diesem Kommentar

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

Link zu diesem Kommentar

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

Link zu diesem Kommentar

@ 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

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...