Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

GPO LoginScript Benutzer

Frage Microsoft Windows Netzwerk

Mitglied: JOML

JOML (Level 1) - Jetzt verbinden

13.11.2007, aktualisiert 17.11.2007, 9352 Aufrufe, 6 Kommentare

Hallo allerseits,

Folgendes Problem:

Ich muss per GPO ein LoginScript verteilen, dass einen Update auf dem Client durchführt.

Frage:
Ist es möglich, das LoginScript mit Adminrechten laufen zu lassen und es soll NUR einmal ausgeführt werden.
(Sonst würde es ja bei jedem login durchlaufen).

Filecheck wird im Script abgearbeitet, doch wäre es Sinnvoll, wenn diese GPO nur einmal pro Client ausgeführt wird.

Vielen Dank

Gruss
JOML
Mitglied: TuXHunt3R
13.11.2007 um 21:06 Uhr
Falls das Ganze eine einmalige Sache ist (wenn du regelmässig solche Updates verteilen musst, musst du dir was besseres einfallen lassen):

Mit Adminrechten laufen lassen:
Erstell einen temporären Account ohne Passwort (möglichst einen nicht-schlüssigen Benutzernamen), welcher auf den Clients lokale Adminprivilegien hat. Bastel dir nachher eine Batchdatei, welche mit dem Befehl "runas" dein Script aufruft. Diese Batchdatei verteilst du dann per GPO. Sobald das Script auf allen Clients durchgelaufen ist, lösche diesen temporären Benutzer sofort wieder.

Warum einen Account ohne Passwort?
Klar, es ist unsicher, aber der Runas-Befehl erlaubt es nicht, das Passwort des Accounts mit zu geben. Jeder Benutzer müsste also das Passwort eingeben, was nicht gerade eine praktikable Lösung ist. Wenn der Account 2-3 Tage existiert, das Update dann auf allen Kisten drauf ist und du nicht gerade einen offensichtlichen Benutzernamen gewählt hast, sollte das schon gehen.


Update nur einmal ausführen:
Du kannst ein zentrales Logfile anlegen und den oben erwähnten Batch zuerst überprüfen lassen, ob das Update auf diesem PC schon durchgeführt wurde.
Deine Batch könnte dann z.B. so aussehen (nicht getestet):
01.
@ echo off 
02.
 
03.
::Herausfinden, ob der aktuelle Computername schon im Logfile existiert 
04.
::Wenn ja, springe ans Ende des Batchs 
05.
find /i "%computername%" <Pfad zu deinem zentralen Logfile> 
06.
if errorlevel 0 goto end 
07.
 
08.
::Aufruf des Scripts mit priviligiertem Account 
09.
runas ... 
10.
 
11.
::Aktuellen Computernamen ins Logfile schreiben 
12.
echo %computername% >><Pfad zu deinem zentralen Logfile> 
13.
 
14.
:end


Dies ist eine Bastellösung, die ich in der Form bisher einmal angewendet habe. Das war aber eine einmalige Sache und ich fand es damals eine schnelle Lösung für ein Netzwerk-weites Problem. Wie gesagt, wenn solche Updates regelmässig vorkommen, solltest du dir was besseres überlegen.

Vergiss vor allem nicht, den priviligierten Account sofort wieder zu löschen, wenn das Update überall drauf ist!!!!!!


Edit:

Eine andere Lösung wäre natürlich, das Update mit deinem Account (der wahrscheinlich dazu priviligiert ist) irgendwann in der Nacht per geplanten Task zu starten. Dann müssten aber sämtliche Clients entweder die ganze Nacht durchlaufen oder du müsstest Wake On Lan in deinem Netzwerk eingerichtet haben (so läufts bei uns im Betrieb)
Bitte warten ..
Mitglied: Dani
13.11.2007 um 21:26 Uhr
Abend JOML,
eine andere Lösung wäre ein Computerloginscript. Sprich es wird beim System hochfahren ausgeführt. Alles was dort drinne steht, wird unter dem Benutzer "System" ausgeführt und somit volle Administratorenrechte.
Somit brauchst du keine Accounts ohne Passwörter und der Aufwand ist gering.

Filecheck wird im Script abgearbeitet, doch wäre es Sinnvoll, wenn diese GPO nur einmal pro
Client ausgeführt wird.
Ich würde innerhalb der Batch nachdem 1. Ausführen einen Checkpoint auf dem Clients hinterlassen. In deinem Fall eine Textdatei mit dem Namen des Updates und darin das Ausführungsdatum. Ein Schritt mehr wäre es, einfach eine Freigabe (am Besten versteckt) einzurichten für alle Logdateien der Clients.

Beispiel:
01.
Freigabe Logfiles 
02.
  - Update x.x.x.2x 
03.
  - Update 32c.3x3.a3
Somit hättest du alles Griffbereit und sauber protokolliert.

Die Batchdatei dazu, würde so aussehen:
01.
@echo off 
02.
 
03.
set update=update_2xx.3xf34.3 
04.
 
05.
 
06.
if not exist "\\%server%\logs$\%update%\%computername%.txt" ( 
07.
 
08.
echo Start: %date% - %time% >> "\\%server%\logs$\%update%\%computername%.txt" 
09.
.... 
10.
UPDATE PROCESS 
11.
.... 
12.
echo Ende: %date% - %time% >> "\\%server%\logs$\%update%\%computername%.txt 
13.
)
Somit hast du die totale Kontrolle darüber und kannst mit dem einfachen Löschen der Textdatei den Updateprozess wieder anstoßen.
Die NTFS-Rechte auf die Freigabe kannst du bis auf alle CLIENT - Computerkonten, System und ADministrator eingrenzen. Diese brauchen aber alle Vollzugriff. Somit kommt ein normaler Benutzer nicht auf die Freigabe.


Grüße
Dani
Bitte warten ..
Mitglied: JOML
17.11.2007 um 02:29 Uhr
Hi Dani,

Das mit dem Logfile auslesen ist eine gute Idee. Vielen Dank
Hab ein Logfile auf dem Server der alle Compternamen enthält, die geupdated wurden.

Wie kann ich jetzt den inhalt der txt Datei nach diesem Namen abfragen.. so nach dem Prinzip:


If exist "\\%server%\logs$\%update%\Update.txt" (inhalt irgendwo %computernamen%)
goto :END


Gruss
JOML
Bitte warten ..
Mitglied: Dani
17.11.2007 um 11:31 Uhr
Hi JOML,
schau mal mein Beispiel nochmal an und dann Kommentar. Dann wirst du die Lösung sehen. *g*


Grüße
Dani
Bitte warten ..
Mitglied: JOML
17.11.2007 um 11:55 Uhr
Hi Dani,

Nö.. leider nicht.
Du suchst im Ordner %Update% nach einer Datei %Computernamen%.txt... oder?

Ich möchte aber in einer Datei"Update.txt" den Inhalt nach %Computernamen% durchsuchen.

Mein Favorit wäre da der Vorschlag von "TuXHunt3R"....

find /i "%computername%" \\server\Updates$\update.txt
if errorlevel 0 goto end

Oder sehe ich da was falsch... ?


Nice Weekend
JOML
Bitte warten ..
Mitglied: TuXHunt3R
17.11.2007 um 17:47 Uhr
Hallo JOML2005

So wie ich das sehe, erstellt das Script von Dani pro upgedateten Computer ein Logfile. Bei meiner Lösung werden alle Computernamen, die geupdatet wurden, in ein und das selbe Logfile geschrieben. Mit dem Find-Befehl überprüft das Script zuerst, ob der Computername in diesem Logfile bereits existiert. Wenn ja, bricht er das Script ab, d.h. er springt ans Ende des Scripts.

Wenn du alle Computernamen also in ein und das selbe Logfile schreibst, musst du meine Lösung mit dem find-Befehl nehmen.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Windows Netzwerk
Lokale Anmeldung an Server zulassen trotz GPO mit lokalem Benutzer (2)

Frage von jochenmuell zum Thema Windows Netzwerk ...

Microsoft
gelöst GPO wird nicht auf Domänen Benutzer angewendet (13)

Frage von Resolv zum Thema Microsoft ...

Windows Server
Benutzer GPO wird nicht angewendet (2)

Frage von westberliner zum Thema Windows Server ...

Windows Server
GPO aktiv trotz Deaktivierung (7)

Frage von XxDarkAngelxX zum Thema Windows Server ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...