Site Overlay

PowerShell ile Uzak Bilgisayarlarda Komut Çalıştırma ve Yönetim

PowerShell ile Uzak Bilgisayarlarda Komut Çalıştırma ve Yönetim

PowerShell ile Uzak Bilgisayarlarda Komut Çalıştırma ve Yönetim

PowerShell, Windows sistemlerinde uzaktan yönetim ve otomasyon için kullanılan güçlü bir araçtır. Bu rehberde, PowerShell’in temel ve ileri seviye komutlarını, ayrıca bu komutların kullanım alanlarını detaylı bir şekilde açıklayacağız.

Uzak Bilgisayarda Çalıştırmak İçin Açık Olması Gereken Portlar:

  • TCP 5985: Windows Remote Management (WinRM) HTTP için.
  • TCP 5986: Windows Remote Management (WinRM) HTTPS için.
  • TCP 135: Remote Procedure Call (RPC) için.

1. PowerShell ile Uzak Bilgisayarlarda Komut Çalıştırma

Bu komutlar, PowerShell’i kullanmaya başlamak için gerekli olan temel yönetim yöntemlerini içerir.

  • Uzak Bilgisayarda Sanal Makineleri Listeleme:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-VM }
    Açıklama: Bu komut, belirtilen uzaktaki bilgisayarda mevcut sanal makineleri listelemek için kullanılır.
  • Hizmetleri Listeleme:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-Service }
    Açıklama: Uzaktaki bilgisayardaki tüm hizmetleri listeler.
  • Çoklu Bilgisayara Komut Gönderme:
    Komut: Invoke-Command -ComputerName $computers -Credential $cred -ScriptBlock { Get-Process }
    Açıklama: Belirtilen birden fazla bilgisayarda çalışan süreçleri listelemenizi sağlar.

2. Gelişmiş PowerShell Komutları

Daha karmaşık ve ayrıntılı yönetim işlemleri yapmak için kullanılan ileri düzey PowerShell komutları.

  • Dosya Kopyalama:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Copy-Item -Path "C:\source\file.txt" -Destination "C:\destination\" }
    Açıklama: Uzaktaki bilgisayara dosya kopyalamak için kullanılır.
  • Sistemi Yeniden Başlatma:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Restart-Computer -Force }
    Açıklama: Uzaktaki bilgisayarı zorla yeniden başlatır.
  • TCP Bağlantılarını Kontrol Etme:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-NetTCPConnection -State Listen }
    Açıklama: Uzaktaki bilgisayarda dinleyen TCP bağlantılarını listeler.

3. PowerShell ile Taramaları Kişiselleştirme

PowerShell taramalarını özelleştirmenize ve belirli kriterlere göre filtrelemenize olanak tanıyan komutlar.

  • Belirli Portları Tarama:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-NetTCPConnection -LocalPort 80 }
    Açıklama: Uzaktaki bilgisayarda yalnızca 80 numaralı portu kontrol eder.
  • Uzaktan İşlem Başlatma:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Start-Process notepad }
    Açıklama: Uzaktaki bilgisayarda Notepad uygulamasını başlatır.

4. PowerShell’in Özel Kullanım Senaryoları

PowerShell’in daha spesifik kullanım durumlarına yönelik komutlar.

  • Script Tabanlı Tarama:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-Process | Where-Object {$_.CPU -gt 100} }
    Açıklama: Uzaktaki bilgisayarda CPU kullanımını belirli bir değerin üzerinde olan işlemleri listeler.
  • Çıkış Formatları:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-Service | Export-Csv -Path "C:\services.csv" }
    Açıklama: Uzaktaki bilgisayardaki hizmetlerin listesini CSV formatında kaydeder.

5. PowerShell Komutlarının Analizi ve Raporlama

Komutlardan elde edilen sonuçları analiz etme ve raporlama adımları.

  • JSON Formatında Raporlama:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-Service | ConvertTo-Json }
    Açıklama: Uzaktaki bilgisayardaki hizmetlerin listesini JSON formatında döndürür.
  • HTML Raporu Oluşturma:
    Komut: Invoke-Command -ComputerName BES1KTAS.ARIFAKYUZ.COM -Credential $cred -ScriptBlock { Get-Service | ConvertTo-Html -Title "Hizmet Listesi" }
    Açıklama: Uzaktaki bilgisayardaki hizmetlerin listesini HTML formatında kaydeder.
WinRM Servisini Etkinleştirme ve Yönetme

WinRM Servisini Etkinleştirme ve Yönetme

WinRM (Windows Remote Management), Windows işletim sistemlerinde uzaktan yönetim için kullanılan bir protokoldür. Bu makalede, WinRM servisini etkinleştirme, durumunu kontrol etme, güvenilir bilgisayar ekleme, IP veya FQDN’leri listeleme ve silme, ayrıca servisi yeniden başlatma ve devre dışı bırakma adımlarını öğreneceksiniz.

1. WinRM Servisini Etkinleştirme

WinRM servisini etkinleştirmek için aşağıdaki adımları izleyin:

  • Komut İstemcisini Yönetici Olarak Açın: Başlat menüsünde “cmd” yazın, sağ tıklayın ve “Yönetici olarak çalıştır” seçeneğini seçin.
  • Aşağıdaki Komutu Çalıştırın:
    winrm quickconfig

    Açıklama: Bu komut, WinRM’i hızlı bir şekilde yapılandırır ve gerekli ayarları yapar.

2. WinRM Servisinin Durumunu Kontrol Etme

WinRM servisinin durumunu kontrol etmek için aşağıdaki komutu kullanabilirsiniz:

  • Durumu Kontrol Etme:
    winrm get winrm/config

    Açıklama: Bu komut, WinRM yapılandırmasını ve mevcut durumunu gösterir.

3. Güvenilir Bilgisayar Ekleme

WinRM bağlantıları için güvenilir bilgisayar eklemek, uzaktan bağlantılarınızın güvenliğini artırır. Aşağıdaki adımları izleyin:

  • Güvenilir Bilgisayar Ekleme:
    winrm set winrm/config/client '@{TrustedHosts="192.168.1.10"}'

    Açıklama: Bu komut, belirtilen IP adresini güvenilir bilgisayar olarak ekler. Birden fazla IP adresi eklemek için aralarına virgül koyabilirsiniz.

4. İzin Verilen IP veya FQDN’leri Listeleme

Mevcut güvenilir bilgisayarları listelemek için aşağıdaki komutu kullanın:

  • Listeleme:
    winrm get winrm/config/client

    Açıklama: Bu komut, güvenilir bilgisayarlar listesini gösterir.

5. İzin Verilen IP veya FQDN’leri Silme

Bir güvenilir bilgisayarı silmek için aşağıdaki adımları izleyin:

  • Silme:
    winrm set winrm/config/client '@{TrustedHosts="192.168.1.10"}' -remove

    Açıklama: Bu komut, belirtilen IP adresini güvenilir bilgisayar listesinden kaldırır.

6. WinRM Servisini Yeniden Başlatma

WinRM servisini yeniden başlatmak için aşağıdaki komutu kullanabilirsiniz:

  • Yeniden Başlatma:
    net stop winrm && net start winrm

    Açıklama: Bu komut, WinRM servisini durdurur ve ardından tekrar başlatır.

7. WinRM Servisini Devre Dışı Bırakma

WinRM servisini devre dışı bırakmak için aşağıdaki komutu kullanabilirsiniz:

  • Devre Dışı Bırakma:
    winrm set winrm/config/service/auth '@{Basic="false"}'

    Açıklama: Bu komut, WinRM servisinde temel kimlik doğrulamasını devre dışı bırakır. Servisi tamamen devre dışı bırakmak için servis ayarlarını değiştirmek gerekebilir.

Sonuç

Bu makalede, WinRM servisinin etkinleştirilmesi, durumu kontrol edilmesi, güvenilir bilgisayar eklenmesi, IP veya FQDN’leri listeleme ve silme, ayrıca servisi yeniden başlatma ve devre dışı bırakma konularında temel bilgileri öğrendiniz. Bu adımları takip ederek Windows sistemlerinizde uzaktan yönetimi daha güvenli ve etkili bir şekilde gerçekleştirebilirsiniz.


image 11
Başka cihazda görüntüle
Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı
Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı

Arif Akyüz
Bilgi Teknolojileri
Sistem Network Yöneticisi
ve Siber Güvenlik Uzmanı
[email protected]

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Author: Arif Akyüz

Arif Akyüz - Siber Güvenlik Uzmanı ve Dijital Dönüşüm Lideri 15 yılı aşkın süredir bilişim sektöründe, özellikle siber güvenlik ve dijital dönüşüm alanlarında hizmet veren bir uzmanım. Hem stratejik hem de teknik düzeyde çözümler sunarak organizasyonların güvenlik altyapılarını güçlendiriyor ve dijitalleşme süreçlerini yönetiyorum.