• Anasayfa
  • Hakkımızda
  • Etkinlikler
  • Destek Verin
  • Site Haritası
  • Giriş Yap
  • Üye Ol
  • Facebook
  • Twitter
  • RSS
Yazılım Dilleri
  • Soru - Cevap
  • EĞİTİM SETİ
  • KATEGORİ
  • DUYURU
  • TEKNOLOJİ HABERLERİ

Son Sorular

  • 23.04.2016 00:55:33C programlama 2 oyun
  • 20.04.2016 16:34:41Local Database
  • 15.04.2016 14:26:15Fatura kayıt işlemi
  • 21.03.2016 01:55:30C# problem

Popüler Sorular

  • 27.05.2012 05:49:50Asp.Net ile Date time alana veri ekleyemiiyorum ?
  • 2.04.2012 00:45:18.exe uzantılı dosya için dijital imza nerde nasıl alınır.
  • 12.05.2012 08:44:49Acil Yardım
  • 27.05.2012 13:46:51veri tabanı bağlantısı
  • .Net Framework
  • 8085 Assembly
  • Active Directory
  • ADO.NET
  • Android
  • Apple IOS
  • Arduino
  • ASP.NET
  • ASP.NET MVC
  • Blackberry
  • C#.Net
  • C++
  • CCG Framework
  • CISCO
  • CSS
  • Diğer
  • Dreamweaver
  • Entity Framework
  • Exchange Server
  • Gömülü Sistemler
  • GSM Programlama
  • Güncel
  • Güvenlik
  • HTML5
  • Java
  • Javascript / JQuery
  • Jira
  • Kariyer ve İş Yaşamı
  • LINQ
  • LibreOffice
  • Linux
  • Matlab
  • Microsoft Dynamics CRM
  • Mobil Uygulama Geliştirme
  • MySQL
  • NoSQL
  • Oracle
  • OWIN
  • PFSense
  • PHP
  • Powershell
  • Python
  • Sanallastirma
  • SAP-ABAP
  • SCOM 2012
  • SEO
  • Sharepoint 2010
  • Sharepoint 2013
  • Silverlight
  • Sistem Analiz ve Tasarımı
  • SQL Server
  • Symantec
  • TFS
  • T-SQL
  • Ubuntu
  • VB.NET
  • Veritabanı Yönetim Sistemleri
  • Visual Studio
  • VMware
  • WCF
  • Web Hosting
  • Windows 8
  • Windows Azure
  • Windows Phone 7.1
  • Windows Phone 8
  • Windows Server
  • Wordpress
  • WPF
  • Xamarin
  • XNA
  • Yazılım Mühendisliği
  • Yöneylem Araştırması
  • ASP.NET MVC
  • Entity Framework
  • Javascript / JQuery
  • LINQ
  • PHP

Son Duyurular

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

PowerShell 2.0 Remoting

PowerShell 2.0’ın bize sunduğu en önemli yeniliklerden birisi de Remoting’tir. Nasıl ki uzak makinelere Remote Desktop ile bağlanıp yönetim işini gerçekleştirebiliyorsak, Remote Desktop yada benzeri a

29.04.2012

Yazar: Ahmet Sait Duran (Google+)

Kategori: Powershell

1982

 PowerShell 2.0 Remoting

PowerShell 2.0’ın bize sunduğu en önemli yeniliklerden birisi de Remoting’tir. Nasıl ki uzak makinelere Remote Desktop ile bağlanıp yönetim işini gerçekleştirebiliyorsak, Remote Desktop yada benzeri araçlar kullanmadan, PowerShell konsolundan hem client hem de serverlar tarafında bazı işlemler yapmak istiyorsanız, PowerShell 2.0 Remoting konusuna hakim olunması gerekmektedir.
PowerShell, remoting için Web Services for Management (WS-MAN) protokolünü kullanır. WS-MAN, http yada https üzerinden ve arka planda Windows Remote Management (WinRM) servisini kullanarak uzak makinaya bağlantı işlemlerini gerçekleştirir. Kısaca özetlememiz gerekirse: PowerShell 2.0’ın yüklü olduğu sistemlerde uzaktan yönetim işini PowerShell ile gerçekleştirebilirsiniz.
Şimdi gelelim PowerShell Remoting’i kullanabilmemiz için gerekli olan şartlara. Öncelikle hem clientlarınızda hem de serverlarınızda PowerShell Remoting’in enabled durumda olması gerekir (Varsayılan olarak Remoting, disabled durumdadır). Yani hem bağlantı için PowerShell’i kullandığınız makinada, hem de bağlanılacak makinada PowerShell Remoting enable edilmelidir.
Windows 7 ve Windows Server 2008’in herhangibir versiyonunda aşağıdaki cmdlet yardımıyla PSRemoting’i enable hale getirebilirsiniz.
Enable-PSRemoting -Force
PSRemoting’i aktif hale getirmek için yapılması gereken tüm işlemleri bu cmdlet, bizim yerimize gerçekleştiriyor. Yukarıdaki sonuçlara göre PSRemoting’i enabled hale getirmek için;
-WinRM 2.0 servisinin yüklü ve Started durumda olması gerekiyor .
          WinRM, Windows Server 2008 R2’de zaten yüklü ve çalışır durumdadır. Ancak Windows 7 işletim sistemlerinde Started durumda değildir. Windows XP’de ise WinRM servisi yüklü bile değildir.
-WS-MAN isteklerini kabul etmek için bir WinRM listener oluşturmamız gerekiyor.
-WinRM için firewall üzerinde exception oluşturmamız gerekiyor.
Peki bu yukarıda yazmış olduklarımızı yapımızdaki tüm client ve serverlara nasıl uygulayacağız? “Tabii ki, Group Policy” dediğinizi duyar gibiyim. Bir de PowerShell’den yardım alalım o zaman.
Help about_remote_troubleshooting
Yukarıdaki help menüsüne göre Listener’ları Group Policy ile oluşturabiliyoruz. WinRM servisini de Group Policy ile Started duruma getirebiliriz. Firewall’da exception’u da yine Group Policy ile yapabiliriz. O zaman Windows 7 ve Windows Server 2008 R2’ler için bir problem yok. Ancak şöyle bir sorunumuz var: Ortamdaki Windows XP clientların durumu ne olacak?
PowerShell 2.0’ın kullanılabileceği en eski sürüm Windows XP SP3’tür. Windows XP SP3 üzerinde de Windows Management Framework update’inin yapılması gerekmektedir. Bu update’e aşağıdaki linkten erişebilirsiniz.
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=16818
Yine Windows XP clientlarınızda da listener ve firewall için gerekli düzenlemelerin yapılması, WinRM servisinin Started hale getirilmesi gerekiyor.
Dikkat edilirse, büyük bir yapı düşünüldüğünde işiniz hayli zor. Hem Windows 7’ler için, hem de XP clientlar için ayrı ayrı GP ayarları yapılması gerekiyor.
Aslında herbir bilgisayarda Enable-PSRemoting –Force komutu ayrı ayrı çalışır. Yani siz Windows 7 yada Windows Management Framework kurulu olan Windows XP SP3’lü bir makinaya gidip, PowerShell’i açar ve Enable-PSRemoting –Force cmdlet’ini çalıştırırsanız WinRM servisi, WinRM için listener ve firewall exceptionlar, bu komutla beraber otomatik olarak yapılandırılır. Böylece bizim de bir sürü GP ayarı yapmamıza gerek kalmaz.
O zaman bir script yardımıyla buraya kadar anlatmış olduğumuz tüm sorunlarımızı çözmüş olacağız. Geriye kaldı tek bir sorun: Startup yada logon scripti olarak PowerShell scriptlerini sadece Windows 7 ve Windows Server 2008 R2’de çalıştırabilirsiniz. Ben, Windows XP clientlarda da çalışabilmesi için bunu bir batch dosyası düzenleyerek gerçekleştireceğim.
Öncelikle bir text dosyası açalım ve aşağıdaki komutu bu text dosyasında düzenleyip bat uzantılı olarak kaydedelim.
Powershell.exe Enable-PSRemoting -Force
Daha sonra bir GPO oluşturup, hazırlamış olduğumuz bat dosyasını bir Startup scripti olarak gösterelim.
Daha sonra bu GPO’yu aşağıdaki gibi domaine link veriyorum.
Bu işlemlerden sonra client makinelerinizde gpupdate /force komutu ve ardından restart işlemini gerçekleştiriniz.
Uzaktaki bir makinaya PowerShell ile remote olarak bağlanabilmek için 2 tane cmdlet’imiz vardır. Enter-PSSession ve Invoke-Command. Enter-PSSession cmdlet’ini one-to-one bağlantılar için, yani sadece bir bilgisayara uzaktan bağlanıp, bir işlem gerçekleştirmek için; Invoke-Command cmdlet’ini ise one-to-many yani bir PowerShell komutunu yada scriptini birden fazla bilgisayarda aynı anda çalıştırabilmek için kullanabilirsiniz.
Şimdi sonucu test edelim. Windows Server 2008 R2 SP1 yüklü olan bir makinada PowerShell’i açıyorum ve aşağıdaki işlemleri gerçekleştiriyorum.
Windows XP SP3 kurulu olan makinaya aşağıdaki gibi Enter-PSSession cmdlet’i ile bağlanıyor ve bir servisi durdurup, tekrar başlatıyorum.
Windows 7 kurulu olan bir makinaya aşağıdaki gibi yine Enter-PSSession cmdlet’i ile bağlanıyor ve servis adının içerisinde “net” kelimesi geçen servisleri görüntüleyebiliyorum.
 
Enter-PSSession cmdlet’i ile yapmış olduğunuz uzak PowerShell bağlantılarını Exit-PSSession cmdlet’i ile sonlandırabilirsiniz.
Yukarıdaki işlemlerden sonra artık, PSRemoting’i aktif hale getirdiğiniz makinalarda, uzaktan PowerShell ile sorunsuz bir şekilde çalışabileceksiniz. Ancak ExcecutionPolicy’den dolayı bir sıkıntı yaşayacak olursanız, onu da aşağıdaki Policy ayarıyla düzenleyebilirsiniz.
Computer Configuration > Policies > Administrative Templates > Windows Components > Windows PowerSell > Turn on Script Execution
Bu makalemizde PSRemoting konusunu ele aldık. Başka bir makalede tekrar görüşmek dileğiyle. İyi çalışmalar.

Yazar Hakkında

Ahmet Sait Duran

Ahmet Sait Duran

Ahmet Sait DURAN, Gazi Üniversitesi Mühendislik Fakültesi mezunudur. Sektörde yıllardır birçok firmada Microsoft Windows Server sistemleri üzerinde çalışmış olup, halen MCT sertifikalı olarak eğitim ve danışmanlık hizmetleri vermektedir.

Sosyal Medya

ORANLAR

  • 1982izleme

Arkadaşlarınla Paylaş

  • Tweet

0 Yorum

Yorum Yaz / Soru Sor

Lütfen yorum yazmak veya soru sormak için üye girişi yapınız.

Son Yorumlar

  • Hocam Link başka sayfaya yönlendiriyor.
  • merhaba benim merak ettiğim bir konu var y...
  • Merhaba download linki çalışmıyor. Rica et...
  • Nevzat Bey selamlar, Açıkçası bizler a...
  • Parametreleri Cache İşleminden Yalıtma kon...

En Güncel Sorular

  • Bilgilendirme maili (C#.Net)
  • Power Pivot (Sharepoint 2010)
  • BigInteger, BigDecimal (Asp.Net ve Asp.Net MVC)
  • visual C# ile asp nette veritabanı islemleri (Asp.Net ve Asp.Net MVC)
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ? (Sharepoint 2010)

En Son Cevap Verilen Sorular

  • Bilgilendirme maili
  • BigInteger, BigDecimal
  • visual C# ile asp nette veritabanı islemleri
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ?
  • txt dosyasına veri yazma

Twitter

Takip et: @yazilim_dilleri

En Çok Okunanlar

Elif BAYRAKDAR

C# ile SQL Server Bağlantısı, Insert, Update ve Delete Sorguları

23.05.2013

  • 120031
  • 0
Hakan Keskin

C# ile Windows Service Projesi Oluşturma, Debug Etme ve Setup Hazırlama

17.12.2013

  • 65116
  • 0
batuhan avlayan

Php - Mail Gönderme (İletişim Formu)

02.09.2013

  • 48278
  • 0

Sponsorlar

KODLAB
Pluralsight
Exchange server is
Office 365
YAZILIM DİLLERİ
Yukarı Çık
  • Hakkımızda
  • Facebook
  • Twitter
  • RSS

© Yazılım Dillerinin Buluşma Noktası | Kaynak belirtildiği sürece makaleler kopyalanabilir.
YazilimDilleri.Net sitesinde yer alan kullanıcıların oluşturduğu tüm içeriklerin yayınlanması ile ilgili yasal yükümlülükler içeriği oluşturan kullanıcıya aittir, YazilimDilleri.Net hiçbir şekilde sorumlu değildir.

Kapat

Giriş Yap

Kullanıcı Adı

Şifre

Şifremi Unuttum

KULLANICI GİRİŞİ