Zobrazují se příspěvky se štítkemeventlog. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkemeventlog. Zobrazit všechny příspěvky

úterý 1. listopadu 2011

Chyby za předchozí den

$end = Get-Date -Hour 0 -Minute 0 -Second 0
 $start = $end.AddDays(-1)
 Get-EventLog -LogName System -EntryType Error -Before $end -After $start

čtvrtek 3. února 2011

Smazani eventlogu

Zaloha vystupů z eventlogu,přidejte si připadně export kam je libo,jiným způsobem

Smazaní eventlogu – daný přiklad likviduje prostě vše,obrazek je pastnutý ale ze stroje který je prakticky co se týče zaznamů teměř netčený nějakýma vstupama  jediný zaznam tam byl jak vidíte pravě o předchozím mazaní – ID 1102.

Clear je tady celeho listu,můžete si nastavit pochopitelně jenom výběrové.

get-eventlog security | export-clixml -path Seclog.xml

Import-clixml Seclog.xml

get-eventlog -list |%{$_.clear()}

Ying Li

MyITforum.com

vymazeventlogu

úterý 1. února 2011

Powershell rozdilný výstup auditu

Další variantou jak najednou ziskat zakladní informace o PC a dal s nimi pracovat je vystup ogv.

Spuštění potom můžeme řešit přes ps1,execute in powershell a –NOEXIT,nebo přes dejme tomu vytvořeni funkce a spouštění scriptu nazvem funkce až ho chceme spustit,nebo cestou ke scriptu.Každopaádně admin mode bych preferoval.Na videu je varianta kdy udělame ps1 script obsahujici jenom přikazy a spouštime zadáním cesty k němu.

Varianta dvě zkopirujeme do okna powershellu nasledující

function audit
{Get-process|select-object *|ogv 
Get-WmiObject Win32_Process | ForEach-Object { $ownerraw = $_.GetOwner(); $owner = '{0}\{1}' -f $ownerraw.domain, $ownerraw.user;  $_ | Add-Member NoteProperty Owner $owner -PassThru } | Select-Object Name, Owner|ogv
Get-service|select-object *|ogv
Get-WmiObject Win32_Service | sort -property Name | select Name, State, ProcessId, Description, StartName |ogv
get-wmiobject Win32_QuickFixEngineering | sort -property HotFixID | select -property HotFixID, Description|ogv
get-wmiobject Win32_Desktop | sort -property Name | select Name, BorderWidth, Caption, CoolSwitch, CursorBlinkRate, Description, DragFullWindows, GridGranularity, IconSpacing, IconTitleFaceName, IconTitleSize, IconTitleWrap, Pattern, ScreenSaverActive, ScreenSaverExecutable, ScreenSaverSecure, ScreenSaverTimeout, SettingID, Wallpaper, WallpaperStretched, WallpaperTiled|ogv
get-wmiobject Win32_Environment | sort -property Name | select -property Name, Status, SystemVariable, UserName|ogv
get-wmiobject Win32_StartupCommand | sort -property Name | select -property Name, Location, Command|ogv
get-wmiobject Win32_BootConfiguration | select -property Name, BootDirectory, Description, LastDrive, ScratchDirectory, TempDirectory|ogv
get-wmiobject Win32_LogonSession | sort -property LogonId | select -property LogonId, LoginType, AuthenticationPackage, Description, InstallDate, StartTime|ogv
Get-EventLog -list|ogv
get-wmiobject Win32_ComputerSystem | select Name, Description, @{Label="DNS Host Name"; Expression={$_.DNSHostName}}, Domain, Manufacturer, Model, @{Label="# Processors";Expression={$_.NumberOfProcessors}}, @{Label="System Type";Expression={$_.SystemType}}, @{Label="Physical Memory";Expression={"{0,12:n0} MB" -f ($_.TotalPhysicalMemory/1mb)}}|ogv
get-wmiobject Win32_BIOS | select Name, Manufacturer, ReleaseDate, SerialNumber|ogv
get-wmiobject Win32_PhysicalMemory | select @{Label="Device Location";Expression={$_.DeviceLocator}}, DataWidth, @{Label="Capacity";Expression={"{0,12:n0} MB" -f ($_.Capacity/1mb)}}, PartNumber, SerialNumber, Speed|ogv
get-wmiobject Win32_IP4RouteTable | sort Destination | select Destination, Mask, NextHop, Age |ogv
get-wmiobject Win32_NetworkAdapterConfiguration | sort Description | select Description, DHCPEnabled, IPEnabled, ServiceName, SettingID|ogv
get-wmiobject Win32_NetworkAdapter | sort Name | select Name, Manufacturer, PhysicalAdapter, ServiceName, PNPDeviceID|ogv
get-wmiobject Win32_NetworkClient | select Name, Description, Manufacturer, Status|ogv
get-wmiobject Win32_NetworkLoginProfile -filter "NOT Name LIKE 'NT AUTHORITY%'" | sort Name | select Name, Comment, NumberOfLogons, LastLogon|ogv
get-wmiobject Win32_NetworkProtocol | sort Name | select Name, Description|ogv
get-wmiobject Win32_Printer | sort Name | select Name, Comment, DriverName, Location, Network, PortName, ShareName|ogv
get-wmiobject Win32_PrintJob | select Document, @{Label="Status";Expression={$_.JobStatus}}, Owner, @{Label="Pages";Expression={$_.TotalPages}}, @{Label="Submitted";Expression={[System.Management.ManagementDateTimeconverter]::ToDateTime($_.TimeSubmitted)}}|ogv
get-wmiobject Win32_PrinterDriver | sort Name | select Name, DriverPath|ogv
get-wmiobject Win32_DiskPartition | sort Name | select Name, @{Label="Size";Expression={"{0,12:n0} MB" -f ($_.Size/1mb)}}, @{Label="Primary?";Expression={$_.PrimaryPartition}}, @{Label="Boot?";Expression={$_.BootPartition}}|ogv
get-wmiobject Win32_LogicalDisk | select Name, Description, FileSystem, @{Label="Size";Expression={"{0,12:n0} MB" -f ($_.Size/1mb)}}, @{Label="Free Space";Expression={"{0,12:n0} MB" -f ($_.FreeSpace/1mb)}}, ProviderName|ogv
get-wmiobject Win32_MappedLogicalDisk | select Name, Description, FileSystem, @{Label="Size";Expression={"{0,12:n0} MB" -f ($_.Size/1mb)}}, @{Label="Free Space";Expression={"{0,12:n0} MB" -f ($_.FreeSpace/1mb)}}, ProviderName|ogv
get-wmiobject Win32_DiskDrive | sort Name | select Name, Model, MediaType, InterfaceType, Partitions, @{Label="Size";Expression={"{0,12:n0} MB" -f ($_.Size/1mb)}}|ogv
get-wmiobject Win32_Share | sort Name | select Name, Path, Status|ogv
Get-Content $env:windir\windowsupdate.log -encoding utf8 | Where-Object { $_ -like '*successfully installed*'} | Foreach-Object { $infos = $_.Split("`t"); $result = @{}; $result.Date = [DateTime]$infos[6].Remove($infos[6].LastIndexOf(":")); $result.Product = $infos[-1].SubString($infos[-1].LastIndexOf(":")+2);  New-Object PSobject -property $result  }|ogv
Get-Alias | Group-Object Definition|ogv

Odentrujeme a napišeme audit.

Video

Audit2

Další variantou je použit Powershell ISE,pro něj addon ISE MENU CREATOR a viz. obrazky niže.

Nedefinujeme si klavesovou zkratku a pouštime potom prostě klavesovou zkratkou.

psisemenu

psise1

středa 26. ledna 2011

Eventlog 1hours

Dvakrat enter ,vystup ogv a v něm filtrovaní požadavků.

Tip powershell.com

$from = (Get-Date) - (New-Timespan -hour 1)

get-eventlog -List |
    Select-Object -ExpandProperty Log |
    Foreach-Object { Write-Progress 'Examining Eventlog' $_; $_} |
    Foreach-Object {$log = $_; 
    try { Get-EventLog -after $from -LogName $log -ea stop |
    Add-Member NoteProperty EventLog $log -pass  }
    catch { Write-Warning "Unable to access $log : $_"} } |
    Sort-Object TimeGenerated -desc  |
    Select-Object EventLog, TimeGenerated, EntryType, Source, Message | ogv

 

úterý 25. ledna 2011

Get-eventlog

Get-Eventlog "System" |
Where-Object {$_.EntryType -eq "Warning"} |
Where-Object {($_.TimeWritten).Date -eq (Get-Date).today}| ConvertTo-HTML |out-file D:\dreport.html

get-eventlog system -after (get-date).AddHours(-48) -EntryType Error,Warning | ConvertTo-HTML |out-file D:\warningreport.html

get-eventlog security -After (get-date).AddHours(-24) | ConvertTo-HTML |out-file D:\eventsecurity.html

středa 30. prosince 2009

PowerShell práce s Eventlogem

Dnes si ukážeme jak pracovat s Eventlogem.

Samozřejmostí je práce se vzdálenými stroji ale protože blog je o začínáme ,cmdletům,packům a příkazům které to umožňují se věnovat nebudeme.

Přímo ve videu je vložený popis a upozornění na princip roury,ukázka toho proč je to objektový shell.Filtrace které jsou ve videu předvedeny jsou ukázkové,můžete filtrovat doslova co chcete a z kterého okamžiku Vás výstup zajímá.

Pokud si projdete obzvláště pozorně nastavení Eventlogu a na nastavení plánovače úloh najdete přímo možnost a volby pro spolupráci s PowerShellem,takže například postup událost v EventLogu,přiřazení události k napřiklad plánovači úloh a následné přiřazení k scriptu v Powershellu není problém.

Viz – start programu,nedostatečná práva.No a my událost přiřadíme ke scriptu který požaduje spuštění programu s právy jaké nadefinujeme v dobu tu a tu a řekněme s prioritou vysokou.To je jen malá ukázka co můžete nekombinovat.

Další věc, ve videu uvidíte žádost o přistup do security.Pokud nespustíte Powershell jako admin objeví se Vám hláška přistup nepovolen.Takže si ho pro tento příkaz spustíte jako administrátor,ve videu z důvodu abych to nemusel dělat se celou dobu pohybuji jako Administrátor.Normálně v žádném případě není absolutně důvod.

Základní věc k práci s eventlogem.Spusťte si příkaz get-eventlog nebo get-eventlog systém ,záhy pochopíte proč je nutné pochopit jak filtrovat.No a při té příležitosti nezapomeňte k čemu slouží Ctrl-c a příkaz clear….

Video






Seznam použitých příkazů

get-eventlog –list

get-eventlog system

Get-eventlog Security

get-eventlog system -after (get-date).AddHours(-48) -EntryType Error,Warning | ogv

get-eventlog system -After (get-date).AddHours(-22248) -entryType Error,Warning  | ConvertTo-HTML -Title "Event Log Report" -postContent " Prepared $(get-date)" | out-file EventLogReport.htm