Professional Documents
Culture Documents
[string]$data = Get-Date
$data
$autor = " `n Autor:Damian Woszczak"
$info = $data + $autor | Out-File $path\${name}.txt
$name = $domain.DNSRoot
$Output = "SID domeny:"+$domain.DomainSID | Out-File $path\${name}.txt -Append
$Output = "DNS ROOT:" + $domain.DNSRoot | Out-File ${path}\${name}.txt -Append
$Output = "Jednostka organizacyjna dla komputerow:" + $domain.ComputersContainer |
Out-File ${path}\${name}.txt -Append
$Output = "Jednostka organizcyjna dla uzytkownikow:" + $domain.UsersContainer |
Out-File ${path}\${name}.txt -Append
$Output = "Poziom domeny:" + $domain.DomainMode | Out-File ${path}\${name}.txt
-Append
$Output = "Poziom lasu:" + $forest.ForestMode | Out-File ${path}\${name}.txt
-Append
$domaincontrollers = Get-ADDomainController -filter * | foreach {$_.Name}
foreach($domaincontroller in $domaincontrollers){
"Lista konrolerow domeny:" |Out-File ${path}\${name}.txt -Append
Get-ADDomainController -Filter * | Select-Object name |Out-File ${path}\$
{name}.txt -Append
}
function raport-dns{
$domain = Get-ADDomain
$zones = Get-DnsServerZone | Where {($_.Zonetype -eq "primary" )-and
($_.isreverselookupzone -eq $false)} | foreach { $_.ZoneName }
foreach($zone in $zones){
$zone
Get-DnsServerResourceRecord -ZoneName $zone -RRType A |ft Hostname,@{n ="Adres
IP"; e={$_.RecordData.IPv4Address.IPAddressToString} }
Get-DnsServerResourceRecord -ZoneName $zone -RRType A |Select-Object
Hostname,{n ="Adres IP"; e={$_.RecordData.IPv4Address.IPAddressToString} } |
Export-Csv ${path}\${zone}_strefaDNS.csv -NoTypeInformation
Add-Content ${path}\${zone}_strefaDNS.csv $info
}
}
function raport-ptr{
$ptrzones = Get-DnsServerZone | Where {($_.Zonetype -eq "primary" )-and
($_.isreverselookupzone -eq $true)} | foreach { $_.ZoneName }
foreach($ptrzone in $ptrzones){
$ptrzone
Get-DnsServerResourceRecord -ZoneName $ptrzone -RRType Ptr |ft @{n="IP";
e={$_.Hostname}},@{n ="Host"; e={$_.recorddata.ptrdomainname} }
Get-DnsServerResourceRecord -ZoneName $ptrzone -RRType Ptr | Select-Object
Hostname,@{n ="Host"; e={$_.recorddata.ptrdomainname} }| Export-Csv ${path}\$
{ptrzone}_strefy.csv -NoTypeInformation
Add-Content ${path}\${ptrzone}_strefy.csv $info
}
function raport-uslugi{
function raport-role{
$domaincontrollers = Get-ADDomainController -filter * | foreach {$_.Name}
foreach($domaincontroller in $domaincontrollers){
Invoke-Command -ComputerName $domaincontroller -ArgumentList
$domaincontroller,$path,$info -ScriptBlock{
param($domaincontroller,$path,$info)
Write-Host "FRole i funckje zainstalowane na:" $domaincontroller
Get-WindowsFeature | Where-Object {$_.installstate -eq "installed"} | ft
Name,DisplayName
Get-WindowsFeature | Where-Object {$_.installstate -eq "installed"} |
Select-Object Name,DisplayName |Export-Csv ${path}\${domaincontroller}-
serwer_role.csv -NoTypeInformation
Add-Content ${path}\${domaincontroller}-serwer_role.csv $info
}
}
}
function raport-smb{
$domaincontrollers = Get-ADDomainController -filter * | foreach {$_.Name}
foreach($domaincontroller in $domaincontrollers){
Invoke-Command -ComputerName $domaincontroller -ArgumentList
$domaincontroller,$path,$info -ScriptBlock{
param($domaincontroller,$path,$info)
Write-Host "Udzialy sieciowe dostepne na:" $domaincontroller
Get-SmbShare |Where-Object {$_.name -notLike "*$"} |ft
Name,Path,Description
Get-SmbShare |Where-Object {$_.name -notLike "*$"} |Select-Object
Name,Path,Description |Export-Csv ${path}\${domaincontroller}-serwer_udzialy.csv
-NoTypeInformation
Add-Content ${path}\${domaincontroller}-serwer_udzialy.csv $info
}
}
}
function event-logs{
function Menu
{
param (
[string]$Title = 'Menu'
)
cls
Write-Host "================ $Title ================"
do
{
Menu
if (-not (Test-Path 'C:\WAT\damian_woszczak') ){
New-Item -Path 'C:\WAT\damian_woszczak' -ItemType Directory
}
$path = 'C:\WAT\damian_woszczak'
[string]$data = Get-Date
$data
$autor = " `n Autor:Damian Woszczak"
$info = $data + $autor