Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

AD Anmeldung per Batch auslesen

Frage Entwicklung Batch & Shell

Mitglied: matobo

matobo (Level 1) - Jetzt verbinden

07.09.2010 um 13:18 Uhr, 7511 Aufrufe, 10 Kommentare

Hallo Batch Spezies

folgende Frage an Euch...

Ich möchte gerne eine Lösung finden, die es mir ermöglicht,
bestimmte AD Userkonten zu protokollieren.

Dieses Protokoll soll mir dann per Mail zugesand werden.

Also z.b.

User otto meldet sich Montag morgen mit seinem AD Konto
an der Domäne an.
Wenn die Anmeldung erfolgreich war, soll es als Information an
eine bestimmte Email Adresse verschickt werden.

Schön wäre auch, wenn ich nicht nur des Userkontos, evtl auch noch das Computerkonto
loggen lassen könnte.

Danke für Eure Hilfe...

P.S. sollte es per Batch nicht gehen, so wäre ich für jede andere Lösung auch dankbar...

mfg
matobo
Mitglied: Tigerbaby
07.09.2010 um 14:20 Uhr
Tach!

Ich hab das mit Kix realisiert. geht prima!

Hier das Skript (hab ich übrigens über das Forum gefunden, einfach mal danach suchen!)


Skriptanfang:
SETCONSOLE("hide")
SETCONSOLE("maximized")
SETTITLE("Anmeldeskript für Meine Domäne")
;
; Variablen deklarieren
;
$FileServer="192.168.0.1"
; ### Name des Servers auf welchem sich die Freigaben befinden
; ### alternativ kann auch natürlich auch eine IP-Adresse angegeben werden
;
$ProtokollServer="192.168.0.1"
; ### Name des Servers auf welchem die Freigabe für die Dokumentation
; ### der An- und Abmeldungen sowie der Rechner Infos liegt
;
$PrintServer="192.168.0.1"
; ### Name des Servers auf welchem (falls vorhanden) die Drucker
; ### eingerichtet und freigegeben sind die verbunden werden sollen
;
; *
; Hardware Informationen auslesen
; *
;
; ### Ausgabe auf die Datei "Rechnername_info.txt" umleiten anstelle des Bildschirmes
$result=ReDirectOutput ("\\"+$ProtokollServer+"\login$\"+@Hostname+"_info.txt" ,1)
;
; ### Ab jetzt werden alle Printanweisungen in die Datei "Rechnername_info.txt" ausgegeben
? "Stand "@DATE" - "@TIME
? ""
? "* Rechner Information *"
?"NetBIOS Name: "@WKSTA
?"Letzter Login von: "@USERID
?"OS: "@PRODUCTTYPE" with "@CSD
?"CPU Modell: " @CPU
?"CPU Takt: "@MHZ " MHz"
?"Speicher: "MemorySize(0)" MB"
?"IP Adresse: " @IPADDRESS0
?"IP Adresse: " @IPADDRESS1
?"MAC Adresse: "@ADDRESS
?""
;

:Login
;
;
; Login Informationen pro User
;
;
; ### hier wird die Ausgabe wieder auf die Protokoll Datei für den jeweiligen Tag umgeleitet
$result=ReDirectOutput ("\\"+$ProtokollServer+"\login$\Anmeldungen " + @YEAR + "."+ @MONTHNO + "." + @MDAYNO + ".txt" ,0)
;
; ### jetzt wird geprüft ob die Datei bereits existiert, wenn ja wird der Header nicht noch einmal in die Datei geschrieben
; ### da dieser bereits vorhanden ist.
$logExist=Exist("\\"+$ProtokollServer+"\login$\Anmeldungen " + @YEAR + "."+ @MONTHNO + "." + @MDAYNO + ".txt")
if $logExist = 0
? "+-------------------------------------------------------------------------------------------------+"
? "¦Benutzername ¦ Client ¦ Datum ¦ Uhrzeit ¦ Anmeldeserver ¦ i=login o=logout¦"
? "¦-------------+----------------------+------------+----------+------------------+-----------------¦"
endif
$user = @userid+left(" ",(13-len(@userid)))
$client = @WKSTA+left(" ",(20-len(@WKSTA)))
$lserver = @LSERVER+left(" ",(18-len(@LSERVER)))
$lserver = right($lserver,(len($lserver)-2))
? "¦"$user"¦ "$client" ¦ "@DATE" ¦ "@TIME" ¦ "$lserver" ¦ i ¦"
Exit
</font>
>>Ende Login.kix<<

>>Logoff.kix<<-- Ab hier den Inhalt markieren und in die Datei logoff.kix kopieren.
<font class="code">
; *
; Logoff Informationen pro User
; *
;
$result=ReDirectOutput ("\\"+$ProtokollServer+"\login$\Anmeldungen " + @YEAR + "."+ @MONTHNO + "." + @MDAYNO + ".txt" ,0)
$logExist=Exist("\\"+$ProtokollServer+"\login$\Anmeldungen " + @YEAR + "."+ @MONTHNO + "." + @MDAYNO + ".txt")
if $logExist = 0
? "+-------------------------------------------------------------------------------------------------+"
? "¦Benutzername ¦ Client ¦ Datum ¦ Uhrzeit ¦ Anmeldeserver ¦ i=login o=logout¦"
? "¦-------------+----------------------+------------+----------+------------------+-----------------¦"
endif
$user = @userid+left(" ",(13-len(@userid)))
$client = @WKSTA+left(" ",(20-len(@WKSTA)))
$lserver = @LSERVER+left(" ",(18-len(@LSERVER)))
$lserver = right($lserver,(len($lserver)-2))
? "¦"$user"¦ "$client" ¦ "@DATE" ¦ "@TIME" ¦ "$lserver" ¦ o ¦"
</font>
>>Ende Logoff.kix<<

>>Funktion zum entfernen der Leerzeichen in der IP Adresse<<

Den Code <?"IP Adresse: " @IPADRESS0> mit diesem ersetzen.

<font class="code">
; ### Dieser Code entfernt Leerzeichen aus der @IPADRESS0
$a = 0
$Myarray = Split(@IPADDRESS0 , " ")
For Each $Element In $MyArray
if $a = 0
$IP0 = $Element
endif
if $a= 1
$IP1= $Element
endif
if $a= 2
$IP2= $Element
endif
if $a = 3
$IP3 = $Element
endif
if $a = 4
$IP4 = $Element
endif
if $a = 5
$IP5 = $Element
endif
if $a = 6
$IP6 = $Element
endif
if $a= 7
$IP7 = $Element
endif
if $a= 8
$IP8 = $Element
endif
if $a = 9
$IP9 = $Element
endif
if $a = 10
$IP10 = $Element
endif
$a = $a + 1
Next
?"IP Adresse: " + +$IP0 + $IP1 + $IP2 + $IP3 + $IP4 + $IP5 + $IP6 + $IP7 + $IP8 + $IP9 + $IP10
</font>
Skriptende:


Es kommen dann 2 Dateien raus, deren Inhalt ungefär so aussehen:

¦mueller ¦ verwaltung02 ¦ 2010/09/07 ¦ 06:36:35 ¦ ANMELDESERVER ¦ i ¦
¦maier ¦ lager04 ¦ 2010/09/07 ¦ 08:02:01 ¦ ANMELDESERVER ¦ i ¦

(Das i am Ende steht für "Log in"!)

und die PC-Info:

Stand 2010/06/15 - 16:55:24

  • Rechner Information *
NetBIOS Name: verwaltung02
Letzter Login von: mueller
OS: Windows XP Professional with Service Pack 2
CPU Modell: Intel(R) Celeron(R) CPU 2.80GHz
CPU Takt: 2796 MHz
Speicher: 1014 MB
IP Adresse: 192.168. 0.119
MAC Adresse: 001389DF73F1


Den Inhalt der Dateien oder die Dateien selbst kann man dann ja zB. mit "blat" per Mail versenden!


Grüße, Tom
Bitte warten ..
Mitglied: DerWoWusste
07.09.2010 um 17:10 Uhr
Hi.
Man kann per GPO am DC einstellen, dass Anmeldeereignisse geloggt werden. Ebenso, dass der Server Aktionen durchführt beim Loggen bestimmter Ereignisse, zum Beispiel Mailversand.
Bitte warten ..
Mitglied: matobo
08.09.2010 um 08:35 Uhr
hallo DerWoWusste

das klingt interessant...

Kannst Du mir es bitte genau schildern, wie ich was und wo einstellen muss ??

Danke
Bitte warten ..
Mitglied: DerWoWusste
08.09.2010 um 09:50 Uhr
Anmeldungen loggen ist eh evtl. schon eingestellt. Führ zunächst mal ein rsop.msc am DC aus, um das rauszufinden. Ist es nicht eingestellt, Verändere in einer auf DCs angewendeten GPO die Überwachungseinstellungen dahingehend.
Resultat ist, dass die Anmeldungen nun im Sicherheitsprotokoll des Servers auflaufen. Dort kannst Du (bei 2008 Server) Aktionen an bestimmte Events anhängen (der Eventviewer erstellt somit geplante Tasks, die eventgetriggert sind). Man rechtsklickt also so ein Event und wählt "attach task to this event". Bei 2003 Server muss man die eventtriggers.exe (von der Kommandozeile) bemühen, um selbiges zu erreichen.
Bitte warten ..
Mitglied: matobo
08.09.2010 um 12:04 Uhr
sodele... die Anmeldungen werden nun geloggt... danke schon mal dafür..

Nun möchte ich bestimmte Anmeldeereignisse per Mail zugeschickt bekommen.

Also z.b.

Eigenschaften von Ereigniss:

Kategorie: Kontoanmeldung
Typ: Erfolgsüberwachung
Ereignisskennung: 680
Benutzer: testdomain\otto


wie oder was muss ich machen, damit mir alle Ereignisse dieser Kennung für diesen User
per Mail zugeschickt werden ??
Bitte warten ..
Mitglied: DerWoWusste
08.09.2010 um 12:26 Uhr
Einen eventgetriggerten Task hast Du schon wie beschrieben erstellt? Dann kannst Du den noch editieren (erweiterte Einstellungen setzen). Ich hab ein Bild dazu hochgeladen. Dort kann man auch nach Keywords wie dem Benutzernamen filtern. http://250kb.de/apc46tQ
Bitte warten ..
Mitglied: matobo
08.09.2010 um 12:36 Uhr
sorry - aber ich habe mit einem eventgetriggerten Task noch nie zu tun gehabt.
Es wäre mein erster...

Also wäre ich für ne detaillierte Anleitung sehr dankbar.

Evtl. kannst du mir anhand der oben genannten Daten, diesen eventgetriggerten Task mal definieren.??!!

danke
Bitte warten ..
Mitglied: DerWoWusste
08.09.2010 um 12:53 Uhr
Du hast eine genau Beschreibung erhalten. Wo bleibst Du denn stecken? Öffne den Eventviewer und nimm Dir so ein Anmeldeereignis. Dann Rechtsklick und das deutsche Pendant zu "attach task to this event" wählen. Am Ende die erweiterten Eigenschaften des Tasks anzeigen lassen und wie in der Abbildung zu sehen weitere Einstellungen konfigurieren.
Bitte warten ..
Mitglied: matobo
08.09.2010 um 14:11 Uhr
ich hänge im DOS Fenster bei den Parametern zu eventtriggers exe

ich bräuchte den genauen Befehl anhand der Daten von oben... User otto und ID 680
Bitte warten ..
Mitglied: DerWoWusste
08.09.2010 um 14:21 Uhr
eventtriggers kann zwar Event-ID-abhängig arbeiten, aber nicht nach Begriffen wie "otto" filtern - so wird das also nichts. Eine weitere Möglichkeit ist snare, eine Freeware von intersect alliance, der kann bei bestimmten keywords handeln - jedoch verschickt der keine Mails, sondern leitet events an einen Syslogserver weiter (welcher dann seinerseits daraus Mails machen müsste). Vielleicht doch lieber ThomasBergers Skript?
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst Account-Sperrungen eines AD-Users auslesen (2)

Frage von MissJones zum Thema Windows Server ...

Batch & Shell
gelöst Batch: Textdatei Zeilenweise auslesen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
gelöst Fenstertitel von anderen Tasks per batch auslesen (3)

Frage von NetMare zum Thema Batch & Shell ...

Batch & Shell
Batch als Dienst bei Systemstart ohne Anmeldung ausführen (6)

Tipp von tralveller zum Thema Batch & Shell ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows Server
gelöst Kopiervorgang schlägt fehl, weil Datei- und Ordnername zu lang sind (14)

Frage von Schroedi zum Thema Windows Server ...

Windows 10
Windows 10 Fall Creators Update Fehler (13)

Frage von ZeroCool23 zum Thema Windows 10 ...