×
PowerShell Uzak Yönetim Nedir

PowerShell Uzak Yönetim Nedir?

Merhaba, bu yazımda sizlere PowerShell Uzak Yönetim Nedir? konusundan bahsedeceğim. PowerShell ile uzak yönetim teknikleri, yöneticilerin birden fazla sistemi merkezi bir yerden yönetmelerine olanak tanıyan güçlü bir yetenektir. Bu yazıda, PowerShell’in uzak yönetim yeteneklerini, temel kavramları ve adım adım anlaşılır örneklerle açıklayacağım.

PowerShell Uzak Yönetim Nedir?

PowerShell, Windows Yönetim Çerçevesi’nin bir parçası olarak gelen bir komut satırı kabuğudur. Uzak yönetim, bir sistemdeki PowerShell komutlarının başka bir sisteme uzaktan gönderilip çalıştırılmasını sağlar. Bu özellik, özellikle büyük ağlarda veya birden fazla sunucunun bulunduğu ortamlarda, işleri hızlandırmak ve yönetimsel görevleri otomatikleştirmek için idealdir.

PowerShell’in uzak yönetim özelliklerini kullanabilmek için `WinRM` (Windows Remote Management) etkinleştirilmelidir. `WinRM`, uzaktan komut yürütme ve veri alışverişi için kullanılan bir iletişim protokolüdür.

WinRM Nasıl Etkinleştirilir?

Enable-PSRemoting -Force

Bu komut, PowerShell remoting’i (uzaktan yönetimi) etkinleştirir ve sistemin başka cihazlardan PowerShell komutları alabilmesini sağlar.

Uzak Sistemlere Bağlanma

PowerShell ile uzaktaki bir bilgisayara bağlanmak ve komutlar çalıştırmak için en yaygın kullanılan yöntemlerden biri `Enter-PSSession` ve `Invoke-Command` cmdlet’leridir.

`Enter-PSSession` ile Tek Bir Bilgisayara Bağlanma

`Enter-PSSession` cmdlet’i, uzaktaki bir bilgisayara etkileşimli bir oturum açmanıza olanak tanır. Bu yöntemle, uzaktaki bilgisayarda sanki yerelmiş gibi komutlar çalıştırabilirsiniz.

Örnek:

Enter-PSSession -ComputerName “Server01” -Credential (Get-Credential)

Bu komut, Server01 adlı bilgisayara bağlanır ve sizden oturum açmak için gerekli kimlik bilgilerini ister. Bağlandıktan sonra doğrudan bu makinede komut çalıştırabilirsiniz.

`Invoke-Command` ile Uzak Sistemlerde Komut Çalıştırma

`Invoke-Command` cmdlet’i, tek bir sistemde ya da birden fazla sistemde aynı anda komutlar çalıştırmak için kullanılır. Bu, çok sayıda sunucu veya istemci bilgisayar yönetenler için oldukça kullanışlıdır.

Örnek 1: Tek Bilgisayarda Komut Çalıştırma

Invoke-Command -ComputerName “Server01” -ScriptBlock { Get-Process } -Credential (Get-Credential)

Bu örnekte, Server01 adlı bilgisayarda çalışan tüm işlemleri listeleyen bir komut çalıştırılır.

Örnek 2: Birden Fazla Bilgisayarda Aynı Anda Komut Çalıştırma

Invoke-Command -ComputerName “Server01”, “Server02” -ScriptBlock { Get-Service } -Credential (Get-Credential)

Bu komut, Server01 ve Server02 makinelerinde çalışan tüm servisleri getirir.

Uzak Komutlar İçin Kredi Kartı Benzeri Kimlik Doğrulaması

Güvenlik açısından, PowerShell ile uzaktan yönetim yaparken kimlik doğrulaması önemli bir unsurdur. `-Credential` parametresi kullanılarak, oturum açma bilgileri sağlanabilir.

Örnek: Kimlik Bilgileri Kullanarak Disk Bilgisi Alma

Invoke-Command -ComputerName “Server03” -ScriptBlock { Get-PSDrive } -Credential (Get-Credential)

Bu komut, Server03 adlı makinedeki disk bilgilerini getirir.

PowerShell Uzak Yönetim İçin Sık Kullanılan Cmdlet’ler

  • `Enable-PSRemoting`   | WinRM’i etkinleştirir ve uzak yönetim için PowerShell yapılandırır.
  • `Enter-PSSession`     | Uzaktaki bir bilgisayarda etkileşimli oturum açar.
  • `Invoke-Command`      | Bir ya da daha fazla bilgisayarda uzaktan komut çalıştırır.
  • `New-PSSession`       | Uzak bir bilgisayara yeni bir oturum oluşturur, aynı oturumda komutlar çalıştırılabilir.
  • `Test-WSMan`          | Uzak bir bilgisayarın WSMan ile erişilebilir olup olmadığını test eder.

Microsoft tarafında incelemek için aşağıdaki linki kullanabilirsiniz.

Uzak Komut Çalıştırma

PowerShell uzak yönetimi ile ilgili bazı yaygın sorunlar şunlardır:

  • WinRM Yapılandırma Sorunları: Uzak makinelerde `WinRM` devre dışı olabilir. Aşağıdaki komutla devreye alınabilir:

 Set-WSManQuickConfig

  • Güvenlik Duvarı Ayarları: Uzak yönetim için gereken portlar açık olmalıdır. Varsayılan olarak, `WinRM` 5985 (HTTP) ve 5986 (HTTPS) portlarını kullanır.
  • Kimlik Doğrulama Hataları: Uzak bilgisayarda gerekli yetkilendirme yoksa kimlik bilgileri doğrulanamayabilir. Kimlik doğrulamanın doğru yapıldığından emin olun.

PowerShell ile uzak yönetim, yöneticilere büyük esneklik ve kontrol sağlar. `Invoke-Command` ve `Enter-PSSession` gibi cmdlet’ler kullanılarak birden fazla sistemin yönetimi oldukça kolaylaşır. Bu tekniklerle iş süreçlerinizi otomatikleştirip, zamandan tasarruf edebilirsiniz. Bu yazımda sizlere PowerShell Uzak Yönetim Nedir? konusundan bahsettim. Faydalı olması dileğiyle.


 

1988 İstanbul doğumluyum. Bilgisayar dünyasına olan hayranlığım çok küçük yaşlarda başladı. Bu sebeple sistem alanında kendimi geliştirmeye karar verdim. Celal Bayar Üniversitesi Bilgisayar Programcılığı ve Anadolu Üniversitesi İşletme mezunuyum. Beykent Üniversitesi'nde Yönetim Bilişim Sistemleri Bölümü'nde yüksek lisans eğitimimi tamamladım. 2005 yılında Bilge Adam Sistem & Network Mühendisliği eğitimi aldım. Hemen ardından IT dünyasına giriş yaptım. Collezione şirketinde 2006 - 2018 yılları arasında Sistem Uzmanı olarak görev yaptım. 2018 Temmuz ayından beri LCWAIKIKI şirketinde System Engineer pozisyonunda çalışmaktayım. Sektörde 19 yıllık deneyime sahibim. Birçok önemli projede görev aldım. Sayfanın en alt kısmından Linkedin profilime ulaşabilirsiniz. Bilgi ve tecrübemi hem bu blog üzerinde hem de Çözümpark Bilişim Portalı üzerinde paylaşıyorum.

Yorum gönder