Category: Windows Powershell

PowerShell ile Windows Defender Firewall Yonetimi

PowerShell ile Windows Defender Firewall Yonetimi yapabilmek icin asagidaki cmdlet’lere ihtiyacimiz bulunuyor.

New-NetFirewallRule
Set-NetFirewallRule
Get-NetFirewallRule
Remove-NetFirewallRule
Rename-NetFirewallRule
Copy-NetFirewallRule
Enable-NetFirewallRule
Disable-NetFirewallRule
Get-NetFirewallProfile
Set-NetFirewallProfile

PowerShell 5.1 bilgisayarinizda yukluyse kaygilanmaniza zaten gerek yok.

Baslayalim.

New-NetFirewallRule

Set-NetFirewallRule & Get-NetFirewallRule

Yeni Azure Powershell Modulumuz “Az”

Azure, AzureRM darken artik sadece “Az” diyecegiz. Yeni isim gercekten cok daha kolay anlasilabilir bir isim olmus. Zira AzureRM ve Azure ASM modulleri bir cok insan tarafindan birbirine karistiriliyordu. Az ile cok daha rahat hareket edebilecegimizi dusunuyorum.

Powershell Core ile de calisabilecek olan bu yeni paketi mutlaka denemenizi oneririm.

Her zamanki gibi kolayca yukleyebilirsiniz.

Bu yeni paket ile gelen yeni moduller ise soyle

Az.Aks (>= 0.3.0)

Az.MachineLearning (>= 0.3.0)

Az.AnalysisServices (>= 0.3.0)

Az.MachineLearningCompute (>= 0.3.0)

Az.ApiManagement (>= 0.3.0)

Az.MarketplaceOrdering (>= 0.3.0)

Az.ApplicationInsights (>= 0.3.0)

Az.Media (>= 0.3.0)

Az.Automation (>= 0.3.0)

Az.Network (>= 0.3.0)

Az.Batch (>= 0.3.0)

Az.NotificationHubs (>= 0.3.0)

Az.Billing (>= 0.3.0)

Az.OperationalInsights (>= 0.3.0)

Az.Cdn (>= 0.3.0)

Az.PolicyInsights (>= 0.3.0)

Az.CognitiveServices (>= 0.3.0)

Az.PowerBIEmbedded (>= 0.3.0)

Az.Compute (>= 0.3.0)

Az.Profile (>= 0.3.0)

Az.Consumption (>= 0.3.0)

Az.RedisCache (>= 0.3.0)

Az.ContainerInstance (>= 0.3.0)

Az.Relay (>= 0.3.0)

Az.ContainerRegistry (>= 0.3.0)

Az.Resources (>= 0.3.0)

Az.DataLakeAnalytics (>= 0.3.0)

Az.ServiceBus (>= 0.3.0)

Az.DataLakeStore (>= 0.3.0)

Az.ServiceFabric (>= 0.3.0)

Az.DevTestLabs (>= 0.3.0)

Az.SignalR (>= 0.3.0)

Az.Dns (>= 0.3.0)

Az.Sql (>= 0.3.0)

Az.EventGrid (>= 0.3.0)

Az.Storage (>= 0.3.0)

Az.EventHub (>= 0.3.0)

Az.StreamAnalytics (>= 0.3.0)

Az.Insights (>= 0.3.0)

Az.Tags (>= 0.3.0)

Az.IotHub (>= 0.3.0)

Az.TrafficManager (>= 0.3.0)

Az.KeyVault (>= 0.3.0)

Az.UsageAggregates (>= 0.3.0)

Az.LogicApp (>= 0.3.0)

Az.Websites (>= 0.3.0)

 

Boylece komutlari calistirirken AzureRM gordugunuz yere Az koyarak yolunuza kesintisiz devam edebilirsiniz.

Ornek:

Get-AzureRmVm yerine Get-AzVm

Kolay gelsin.

Show-Command Komutu ile Gorsel Powershell

Powershell her ne kadar son derece Guclu bir komut satiri uygulamasi olsa da bazen onu da bir arayuz uzerinden kullanmak isteyebilirsiniz.

Bunun icin Show-Command komutunu kullanabilirsiniz. Boylece Powershell, karsimiza asagidaki gibi bir pencere cikaracak ve komut parametrelerini bu gorsel arayuz uzerinden girerek istedigimiz komutu calistirmamiza imkan verecektir.

Ben kendi ornegimde Get-WMIObjet komutunu arayuz icerisinden calistirdim. Siz farkli komutlari da deneyebilirsiniz.

Powershell ile Windows Event Viewer icine kendi loglarinizi yazdirin

Windows icinde yeni bir uygulama ya da script icin log yonetiminizi kendiniz yapabilirsiniz.
Bunun icin oncelikle Windows’un yeni bir log kaynagina igtiyaci bulunuyor ki bu kaynak sizin uygulamaniza ait olacak. Bunun icin asagidaki sekilde Windows Event deposuna yeni bir log girisi yapacagiz. Bu, sanki yeni bir defter acmak gibi dusunulebilir. Once defterimizi hazir edecegiz. Daha sonra ilgili olaylar bu ilgili deftere yazilacak.



Simdi de deneysel bir log uretelim. Bunun icin de asagidaki kod birimini kullaniyoruz.


Bununla birlikte, 9999 eventID’sine sahip bir bilgi mesaji uretmis olduk.
Simdi bakalim Event Viewer’de ne olup bitmis?

Son derece basit degil mi?

Powershell ile Windows Defender’i Yonetin

Windows Defender’i yonetmek icin kullanacagimiz Powershell modulunun ismi “Defender”.
Defender modulunun icinde hangi komutlarin oldugunu asagidaki komutla goruntuleyebiliriz.

Ilk komut olan Get-MpComputerStatus ile bilgisayarin genel durumunu gosteren bilgileri edinebiliriz. Komut asagidaki bilgileri geri dondurecektir.

  • AMEngineVersion:
  • AMProductVersion:
  • AMServiceEnabled:
  • AMServiceVersion:
  • AntispywareEnabled:
  • AntispywareSignatureAge:
  • AntispywareSignatureLastUpdated:
  • AntispywareSignatureVersion:
  • AntivirusEnabled:
  • AntivirusSignatureAge:
  • AntivirusSignatureLastUpdated:
  • AntivirusSignatureVersion:
  • BehaviorMonitorEnabled:
  • ComputerID:
  • ComputerState:
  • FullScanAge:
  • FullScanEndTime:
  • FullScanStartTime:
  • IoavProtectionEnabled:
  • IsTamperProtected:
  • IsVirtualMachine:
  • LastFullScanSource:
  • LastQuickScanSource:
  • NISEnabled:
  • NISEngineVersion:
  • NISSignatureAge:
  • NISSignatureLastUpdated:
  • NISSignatureVersion:
  • OnAccessProtectionEnabled:
  • QuickScanAge:
  • QuickScanEndTime:
  • QuickScanStartTime:
  • RealTimeProtectionEnabled:
  • RealTimeScanDirection:
  • PSComputerName:

Set-MpPreference komutu ile ozellestirilmis secenekleri yonetebilirsiz. Ornegin “Defender, bilgisayarda tarama yaparken hangi klasorleri haric tutsun?” seklindeki ihtiyaclarimizi bu komutla gerceklestirebiliriz.

Get-MpPreference komutu ise kendi isteklerimiz dogrultusunda ozellestiredigimiz secenekleri goruntulemek icin kullanilir.

komutu sayesinde tehdit katalogunu goruntuleyebiliriz. Defender’in hangi tehditler hakkinda bilgi sahibi oldugunu bu komutla kontrol edebilirsiniz.

Update-MpSignature komutu ile Defender’i guncelleyebilirsiniz. Bu sayede yeni tehditlere karsi da koruma saglamis olursunuz.

Son olarak bilgisayarda bilgisayarda tarama yapmak icin asagidaki komutlari kullanabilirsiniz.

Hizli tarama icin Start-MpScan komutu kullanilabilir.

Start-MpWDOScan ile ise offline tarama yapabilirsiniz. Bu komut size sormadan bilgisayarinizi yeniden baslatacaktir. Bu sebeple dikkatli olun lutfen

Powershell ile DNS Client Islemleri

Powershell ile birlikte kullanilan DNS komutlarina asagidaki DNSClient modul komut listesinden ulasabilirsiniz.

 

En cok kullanilan 3 komuta bakalim oyleyse.

Oncelikle client bilgisayar uzerindeki DNS Server konfigurasyonu icin asagidaki komutu kullaniyoruz.

Get-DnsClientServerAddress

 

 

DNS Client detaylarina ulasmak icin ise asagidaki komutu kullanabiliriz.

Get-DnsClient

 

 

DNS cache tablosunu asagidaki komutla goruntuleyebiliriz.

Get-DnsClientCache

 

 

Clear-DnsClientCache komutuyla da yukaridaki listeyi temizlemeniz mumkun.

Powershell Suruculeri ve Servis Yonetimi

Powershell ile dosya sisteminden yerel sertifikalara, fonksiyonlardan registry ayarlarina kadar bir cok servisi yonetmek mumkun. Her gecen gun bu servislerin sayisi da artiyor elbette.

Powershell, ek bir modul yuklemeye gerek kalmadan asagida gordugunuz yerel sistemleri yonetebilir durumdadir. Bunlari Get-PSProvider komutuyla goruntuleyebiliriz.

Yukaridaki servislerin surucu karisiliklari da asagidaki tabloda goruntuleniyor. Bu suruculeri tipki dosya sisteminde gezer gibi gezebilir ve bir cok veriyi bu sekilde cekebilirsiniz.

 

Asagidaki sekilde servisler arasi gecis yapabilir ve akabinde “dir” ya da “gci” komutlariyla servis detaylarini listeleyebilirsiniz.

Powershell ile Kolayca Rastgele Parola olusturmak

.NET kutuphanelerinin destegi sayesinde Powershell ile neredeyse yapilamayacak sey yok gibi. Bu ornekte de System.Web.Security kutuphanesinin bir ozelligine yer verelim istedim. Rastgele parola olusturmak!

Parantez icindeki ilk deger parolanin kac karakterli olacagini belirlemek icin kullanilirken ikinci deger ozel karekterlerin adedinin ne olmasi gerektigini belirliyor.

[System.Web.Security.Membership]::GeneratePassword(20,2)

 

Benim ornegimde 20 karakterli (18 normal 2 ozel karakter) bir parola uretilecek.

Powershell ile Secenek Yonetimi

Powershell icinde kullaniciya soru sorarak ondan gelen yaniti parameter olarak kullanmak elbette mumkun. Bunun bir cok cesidi olsa da bugun bunlardan en gorsel olanini taniyacagiz.
System.Management.Automation.Host.ChoiceDescription objesini kullanarak keni seceneklerimizi belirliyoruz ve akabinde basit bir Switch ile kullanicinin sectigi degeri ekrana yaziriyoruz. Bunu cok farkli senaryolarda kullanabilirsiniz.


Ben Istanbul’u sectigim icin sonuc da ona gore sekillendi elbette!