internet pencereler Android
Genişletmek

WinRM servisi, WS yönetim isteklerini dinlemiyor. Grup İlkesi kullanarak Windows Uzaktan Yönetimi nasıl etkinleştirilir

WinRM ve WinR'ler inovasyon Windows Vista., Windows Server 2003 R2, Windows Server 2008 (ve Sunucu 2008 Çekirdeği). Bunlar yeni güçlü. komut satırıSistem yöneticilerini destekleyen, Windows makinelerindeki programların uzaktan yönetimini ve uzaktan yürütülmesini iyileştirdi. Bununla birlikte, önce açılmaları gerekir, ek olarak, işlevselliklerini incelemek için biraz zamana ihtiyacınız olacaktır. Şanslısınız: Bu makale bugün bu fonları kullanmaya başlamak için ihtiyacınız olan her şeye sahiptir!

Windows Uzaktan Yönetimi (WinRM) nedir?

Windows Remote Management (Azaltılmış WinRM), Windows Server 2003 R2, Windows Vista ve Windows Server 2008 için yeni bir kullanıcı dostu uzaktan kumanda hizmetidir. WinRM, bu uzaktan kumanda uygulamasının ve WinR'lerin bir "sunucu" bileşenidir (Windows Remote Shell - Remote Çarşamba pencereleri) - Bu, WinRM sunucusunu uzaktan yönetmeye çalışan, uzak bir bilgisayarda çalışan WinRM için bir "müşteri" dir. Bununla birlikte, WinRM'nin her iki bilgisayara da kurulması gerektiğini fark etmelidir, böylece WinR'lerin uzak sistem hakkında çalışabilir ve bilgi alabilir. WinRM, Yönetim (WS-Management) standartları için web hizmetlerine dayanmaktadır. Bu, WinRM'nin, iş yapmak için HTTP (Port 80) protokolünü ve sabun isteklerini kullandığı anlamına gelir. HTTP taleplerinin güvenlik duvarı boyunca ilerlemesi kolaydır. Bundan iyi ve kötü bir etki var: Bir yandan, uzak bilgisayarı internet üzerinden kontrol etmek daha kolay olacak, ancak diğer taraftan, saldırganın aynı bilgisayara uzaktan saldırması daha kolaydır. 80 numaralı bağlantı noktasını kullanmanın bir başka küçük avantajı, gelen HTTP bağlantılarının zaten izin verilmişse, sunucudaki diğer bağlantı noktalarını açmaya gerek olmadığıdır.

Microsoft'a göre WinRM, "Sistem Kontrolü için API tabanlı bir API oluşturmak için yeni bir Microsoft Çözümü" dir. Bu yüzden daha önce böyle bir parayı incelemekle ilgileniyor olsaydınız, bana göre "bu yeni standart Microsoft "çalışmaya layıklaştırır.

Windows Yönetim Araçları (WMI) veritabanına (Windows Yönetim Toolkit) zaten bilebilirsin. Ancak, sadece durumunda, bu veritabanının donanımla ilgili her türlü bilgiyi içerdiğini söyleyeceğim ve yazılım Bilgisayar. Hemen hemen her uygulama yöneticisi windows sistemiBu bilgisayardaki tüm idari görevleri gerçekleştirmek için WMI veritabanı seviyesi indirilir.

WinRM, başkalarını kullanarak yaptığınız kişilere benzer görevleri gerçekleştirmek için WMI veritabanını kullanacaktır. yazılım vbscript gibi. WinRM'nin avantajı, söylediğim gibi http (bağlantı noktası 80) kullanmasıdır, ayrıca, hatta Özel kodWinRM'nin gelen bağlantıları 80 numaralı bağlantı noktalarına, bu bağlantı noktasıyla zaten çalışabilen bir IIS bileşeni ile bölmesine izin vermek.

WinRM destekler farklı şekiller Müşterilerinize ve sunucularınız için idari görevlerin başarısını önlemek için kimlik doğrulama. Tabii ki, WinRM dahil, sisteminize saldırmak için başka bir yol açtığınızı hatırlamanız gerekir. Ancak, benim için olduğum gibi açık bağlantı noktası.Doğrulama ve şifreleme takılıysa, tüm makul önlemleri aldığınız varsayılıysa.

Yazılım yöneticinizin üreticisi, yazılımlarının aşağıdaki sürümlerinde WinRM'yi kullanmayı planlamış olabilir, böylece zaten WinRM'yi diğer uygulamalardan kullanabilirsiniz. Ancak, bu bileşeni kullanabilir ve kendisine sahip olabilirsiniz; winrm.cmd.. Bu CLI aracıyla, çözdüğünüz herhangi bir görev için WMI veritabanından bilgi çıkarabilirsiniz.

Aşağıda göreceğiniz gibi, WinRM'nin birden fazla parametreye sahip bir komut satırı arayüzüne sahiptir. WinRM referans bilgileri, sisteminizde etkin olmasa bile gösterilecektir.

Şekil 1: WinRM komut satırı parametreleri

WinRM nasıl etkinleştirilir ve kullanırsınız?

Windows 2008 Server kullanıyorsanız, WinRM zaten yüklü, ancak varsayılan olarak etkin değil. Bu iyi bir önlem. WinRM'nin etkin olup olmadığını ve makinenizde çalışıp çalışmadığını kontrol etmenin en kolay yolu, komut istemine ve kadranına gider:

winRM Numaralandırma WinRM / CONFIF / KONFERİ

Bir cevap almazsanız, WinRM'nin çalışmadığı anlamına gelir. WinRM'yi açmak için otomatik başlangıç ve izin uzaktan erişim Komutu kullanın winRM QuickConfig, Örneğin:

C: \\ Users \\ Yönetici\u003e winRM QuickConfig WinRM, yönetim için bu makineye uzaktan erişim sağlamak için ayarlanmamıştır.Aşağıdaki değişiklikler yapılmalıdır:WS-MAN isteklerini bu makinedeki bir IP'ye kabul etmek için http: // * üzerinde bir WinRM dinleyici oluşturun.Bu değişiklikleri yapmak? y. WinRM uzaktan yönetim için güncellendi.WS-Man taleplerini bu makinedeki bir IP'ye kabul etmek için http: // * üzerinde bir WinRM dinleyici oluşturuldu.C: \\ Users \\ Yönetici\u003e

QuickConfig'yi yapılandırdıktan sonra, liste komutunu aşağıdaki sonuçlarla yeniden başlattım:

C: \\ Users \\ Yönetici\u003e winRM E WinRM / Config / Dinleyici DinleyiciAdres \u003d *Ulaşım \u003d HTTP.PORT \u003d 80.HostName.Etkin \u003d Doğru.URLPREFIX \u003d WSMER.Sertifika makinesiListeyi \u003d 10.253.15.98, 127.0.0.1, :: 1, Fe80 :: 5Fe: 10.253.15.98% 11, Fe80 :: 9583: 2148: E1EF: 6444% 10C: \\ Users \\ Yönetici\u003e

Şimdi WinRM'nin etkin olduğunu biliyorum.

Bu arada, WinRM'yi devre dışı bırakmak istiyorsanız, böyle bir komutu kullanmanız gerekir:

winRM WinRM / Config / Dinley'i Sil? İPadress \u003d * + Transport \u003d HTTP

WinRM kullanmak için, BT ile etkileşime giren tüm düğümler, WinRM ile bir düğüm olarak aynı etki alanının üyesi olmalıdır.

WinRS nedir ve nasıl kullanılır?

WinRS, Windows Remote Shell (Uzak Çarşamba pencereleri) için bir kısaltmadır. WINRS ile, WinRM'nin çalıştığı pencereleri olan Windows için uzaktan istekleri yapabilirsiniz. Ancak, makinenizin WinR'lerle çalışmak için WinRM'yi çalıştırması gerektiğini unutmayın.

Aşağıdaki diyagramda gördüğünüz gibi, winrs. İşte ve bu konuda çok sayıda referans bilgisi olan tam özellikli bir komut satırı aracıdır.

Şekil 2: WinRS komut satırı parametreleri

En iyilerinden biri sıradan yollar WinR'leri kullanmak, uzak bir makinedeki komutların yürütülmesidir. Tabii ki, bu etkileşim HTTP protokolü (bağlantı noktası 80) (varsayılan) kullanılarak gerçekleşir.

Aşağıda, WinR'leri kullanma örneğidir: localhost düğümündeki çalışmalar yaptım. İki komutu başlattım: '' vergi'Ve' dir C:'. Her durumda, cevap olarak yeterli bilgi alındı.

Şekil 3: WinRS komutlarının gösterilmesi

SONUÇLAR

WinRM ve WinR'ler hangi sistemin hakkında çok güçlü yeni fonlardır. windows yöneticileri Sadece bulmak zorunda. WinRM / WinR'lerle uzaktan kumanda olanaklarını düşünün! Programları yükleyebilir, ayarları değiştirebilir, sorunları çözebilirsiniz (tabii ki, sorun ağ etkileşiminde değilse). Bu görevleri birden fazla bilgisayarda gerçekleştirmek için WinR'leri daha fazla alabilir ve WinR'leri bir komut dosyasına bağlayabilirsiniz. Ayrıca, bu fonları kullanıp kullanmadığınızdan bağımsız olarak, yazılımınızın yönetici sistemi, Yakında onları yine de kullanırlar.

Islak

Herhangi bir bölgede aracınız için otomatik parçalar.

Bazen işler için St. Petersburg'dayım, St. Petersburg'daki günlük dairelerin kirasını sunan Şirkete bir link attı. Otellere kötü bir alternatif değil.

10/17/2011 Don Jones

PowerShell'in yaratıcılarının biraz tembel olduğunu ve bu iyi olduğunu fark ettim. Her takım için Computername parametresini kodlamak istemediler, bu yüzden oluşturuldu. genel sistem "Uzaktan Etkileşim" adı altında. Temel olarak, bu sistem uzak bir bilgisayarda çalışacak herhangi bir komutu etkinleştirir. Uzak bir bilgisayarda var olan farklı komutları bile çalıştırabilirsiniz, ancak sizin için eksik. Bu, her ekibi iş istasyonunuza sürekli olarak yüklemeniz gerekmediği anlamına gelir. Bu uzak sistem çok etkilidir ve bir dizi ilginç idari yetenek verir.

PowerShell'i kullanmaya başladığımda, GET-servis ekibinden uzaklaştım ve -Computername parametresine sahip olduğunu fark ettim. Bu, hizmete ve diğer bilgisayarlardan bağlanabileceğiniz anlamına mı geliyor? Bir dizi deneyden sonra, bunun tam olarak yazıldığını buldum. İlgilendim ve diğer takımlardan gelen parametreler aramaya başladım. Ve sadece birkaçı olduğunu öğrendiğimde üzgün.

PowerShell iki tip uzaktan etkileşim sağlar: uzaktan etkileşim bir ila bir (1: 1) ve uzaktan etkileşim bir ila birkaç (1: n). Onlar hakkında konuşmadan önce, bazı temelleri netleştirmek istiyorum.

PowerShell'deki Uzaktan Etkileşimin Temelleri

Uzaktan PowerShell etkileşimi neredeyse telnet ve diğer eski uzaktan kumanda teknolojileri gibi çalışır. Komutu çalıştırdığınızda, aslında uzak bir bilgisayarda başlar. Bilgisayarınıza geri dönen tüm bu takımın sonucudur. Telnet veya Güvenli Kabuğun (SSH) aksine, PowerShell, Yönetim için Web Hizmetleri (WS-Management) adlı yeni bir iletişim sistemi protokolü kullanır. Protokol HTTP veya HTTP Secure (HTTPS) 'nin üzerine etki eder, bu, gerekirse, güvenlik duvarları aracılığıyla bir rota yapmayı kolaylaştırır, çünkü protokol, iletişim kurmak için yalnızca bir bağlantı noktası kullanır. WS-yönetiminin Microsoft'tan uygulanması, Windows Uzaktan Yönetimi olarak adlandırılan bir arka plan hizmeti şeklindedir. WinRM PowerShell 2.0 ile kurulur ve Windows Server 2008 R2 gibi sunucularda varsayılan olarak başlar. Windows 7'de, varsayılan olarak kurulur, ancak etkinleştirilmez. Bir komut göndermek istediğiniz bilgisayarlarda WinRM'yi etkinleştirmeniz gerekir. Bilgisayar, Fiziksel olarak WinRM servisi başlatmak için gerekli.

Tüm PowerShell komutları, çıktı olarak nesneleri üretir. Komutu uzaktan çalıştırdığınızda, çıktısının HTTP veya HTTPS protokolünü kullanarak ağ üzerinden kolayca iletilebilecek bir formda ele alınması gerekir. Böylece, PowerShell çıkış nesnelerini otomatik olarak dönüştürür xML dosyalarıağ üzerinden iletilir. Bilgisayarınızı elde ettikleri, PowerShell'in çalışabileceği nesnelere geri dönüştürülürler. Ancak, bu dönüştürülmüş arka nesneler aslında anında resimlerdir. Her dakika kendilerini güncelleyemezler. Böylece, uzak bir bilgisayarda çalışan işlemler olan nesnelere ulaşmanız gerekiyorsa, sonuçlanan sonuç yalnızca bu nesnelerin üretildiği belirli bir süre için geçerli olacaktır. Hafıza ve işlemcinin kullanımı gibi değerler değişmez. Ayrıca, dönüştürülmüş arka nesneleri bir şeyler yapmasını sağlayamazsınız. Örneğin, nesneyi kendinizi durduracak şekilde sipariş edemezsiniz. Bu, uzaktan etkileşimin temel kısıtlamasıdır, ancak çalışmanızı engellemez ve ilginç görevler gerçekleştirmez.

Uzaktan etkileşim sistemini kullanmak için sadece birkaç temel gereksinim var.

  • Bilgisayarınız (yerel bir bilgisayardır) ve bir komut göndermek istediğinizden biri (uzak bir bilgisayardır), Windows PowerShell 2.0 ile çalışmalı mı? Windows XP modası geçmiş windows sürümüPowerShell 2.0'ı yükleyebileceğiniz. Böylece, eski versiyon Ayrıca uzak oturumda da katılabilir.
  • İdeal olarak, yerel ve uzak bilgisayarlar bir alan veya güvenilir / güven alanlarının üyeleri olmalıdır. Uzaktan etkileşim sistemi ile, alanın dışında çalışabilirsiniz, ancak zordur ve burada bunu söylemeyeceğim. Bu senaryo hakkında daha fazla bilgi edinmek için, Remote_trubleshooting'in söylediği PowerShell Yardım bölümüne bakın.

WinRM incelemesi

Şimdi WinRM'ye gidelim çünkü bu hizmetin ayarlarını uzak etkileşimi başlatmak için ayarlamanız gerekir. Yine tekrar ediyorum, sadece WinRM ve PowerShell uzaktan etkileşim ayarlarını uzak bir bilgisayarda ayarlamanız gerekir. Çalıştığım çoğu ortamda, Yöneticiler, XP sürümleri veya daha yeni ile çalışan her bilgisayarda uzak bir etkileşim sistemi etkinleştirdi. Bu, masaüstüne ve taşınabilir bilgisayarlara farkedilmeden nüfuz etmeyi mümkün kılar (bu, bu tür bilgisayarların kullanıcılarının ne yaptığınızı bilmeyeceği anlamına gelir).

WinRM'nin PowerShell için özel bir şey olduğunu söylemek imkansız. WinRM, birden fazla idari uygulamaya trafik verebilir. Temel olarak, WinRM bir dağıtımcı olarak işlev görür. Trafik göründüğünde, WinRM hangi uygulamanın onunla etkileşime girmesi gerektiğine karar verir ve alıcı uygulamasının adıyla işaretler. Alma uygulaması WinRM ile kaydolmalı, bu yüzden WinRM adına gelen trafiği dinleyebilecek. Başka bir deyişle, sadece WinRM'yi etkinleştirmek için değil, aynı zamanda güç kabuğunu WinRM için sonlu bir nokta olarak kaydeder.

Çoğu. basit yol Her iki görevi de gerçekleştirmek, PowerShell'i yönetici adına başlatmak ve Enable-PSRemoting komutunu yürütür. Kılavuzu, set-wmanquickconfig adlı başka bir komutta görebilirsiniz. Komutu çalıştırmanıza gerek yok. Sizin için enable-psremoting yapacak ve ayrıca uzaktan etkileşim ve iş oluşturmak için gerekli birkaç adım daha gerçekleştirir. Temel olarak, Enable-PSRemoting komutu WinRM servisi başlattı, ayarlarını otomatik olarak başlatmak için ayarlar, Güçlendirici Trafiğini çözmek için PowerShell'i son nokta olarak kaydeder ve hatta Windows Güvenlik Duvarı'na istisnalar ayarlar.

Uzaktan etkileşimi etkinleştirmek için tüm bilgisayarları atlamak istemiyorsanız, nesneyi kullanabilirsiniz. grup ilkesi Grup İlkesi Nesnesi (GPO). Gerekli GPO ayarları, Windows Server 2008 R2 etki alanı denetleyicilerine gömülür. Sadece GPO'yu açın ve bilgisayar yapılandırması boyunca gidin.

Yönetim Şablonları \\ Windows Bileşenleri. Listenin alt kısmında, ayarları ayarlanmalı, hem uzaktaki kabuk hem de Windows Uzaktan Yönetimi (WRM) bulacaksınız. Uzaktan etkileşim sisteminin sorunları (Remote_Trubleshooting) ile ilgili Yardım bölümü size nasıl yapılacağı hakkında ayrıntılı talimatlar verecektir. Bir işletmede uzaktan kumandayı ve yardımda bir grup politikası kullanarak dinleyicilerin nasıl etkinleştirileceğini görüntüleyin.

WinRM 2.0 (PowerShell kullanılır) varsayılan olarak, HTTP'ler için HTTP ve Port 5986 için TCP 5985 portunu kullanır. Bu, WinRM'nin, 80 ve 443 numaralı bağlantı noktalarını dinleyecek şekilde yapılandırılmış yerel kurulu web sunucuları ile çakışmayacağını sağlar. WinRM ayarlarını alternatif bağlantı noktalarını kullanmak için ayarlayabilirsiniz, ancak bunu tavsiye etmiyorum. Köknar Bu bağlantı noktalarını bıraktığınızda, tüm PowerShell uzaktan erişim komutları iyi çalışacaktır. Bu bağlantı noktalarını değiştirirseniz, uzaktan erişim komutunu başlattığınızda her zaman alternatif bir bağlantı noktası belirlemeniz gerekir. Bu, daha fazla yazdırmak zorunda kalacağınız anlamına gelir. Bağlantı noktasını düzenlemeniz gerekirse, komutu girebilirsiniz:

WinRM Set WinRM / Config / Dinleyici? Adres \u003d * + Transport \u003d http @ (port \u003d "1234")

Şekil 1234 İhtiyacınız olan liman anlamına gelir. Burada bu komut birkaç satırda yazılmıştır, ancak bir satıra girmeniz gerekir. Aynısı, makalede açıklanan diğer tüm ekipler için de geçerlidir. HTTP yerine HTTPS kullanmanız gerekirse, yeni HTTPS bağlantı noktasını yapılandırmak için bu komutu değiştirebilirsiniz. Alternatif varsayılan bağlantı noktalarını kullanmak için WinRM ayarlarını yerel bilgisayarlarda ayarlamanın bir yolu olduğunu kabul etmelidir. Böylece, uzaktan erişim komutunu çalıştırdığınızda sürekli bir alternatif bağlantı noktası tanımlamanıza gerek yoktur. Ancak hadi Microsoft tarafından belirtilen varsayılan ayarlarla çalışalım.

Uzak kabukta GPO ayarlarında hissederseniz, örneğin, sunucu onu kesmeden önce, uzak oturumun ne kadar süreyle etkin olmayacağını, örneğin ayarlayabileceğinizi fark edeceksiniz; Kaç tane aynı anda işletim kullanıcısı, uzak sunucuya bir seferde erişebilir; Her uzak kabuğun ne kadar hafızası ve işlemi kullanabileceği; Kullanıcıların bir seferde açabileceği maksimum uzak kabuk sayısı. Bu ayarlar, sunucularınızın unutkan yöneticiler tarafından boğulmadığından emin olmanıza yardımcı olacaktır. Ancak, varsayılan olarak, uzaktan etkileşimi kullanmak için bir yönetici olmanız gerekir, bu nedenle sunucularınızı tıkayan sıradan kullanıcılar hakkında endişelenmemelisiniz.

Uzaktan Etkileşim 1: 1

1: 1 uzaktan etkileşimi kullanarak, bir uzak bilgisayardaki komut satırına özellikle erişebilirsiniz. Verdiğiniz herhangi bir komut uzak bir bilgisayarda çalıştırılır ve sonuçları komut satırı penceresinde görüyorsunuz. Kısmen kullanmak gibi görünüyor Uzak masaüstü. Bağlantı, PowerShell komut satırı ile sınırlı olduğunuz hariç. PowerShell uzaktan etkileşim sistemi, uzak masaüstün gerektirdiği kaynakların bir bölümünü kullanır, bu nedenle sunucularınız üzerinde çok daha küçük bir etkiye sahiptir.

Sunucu-R2 adlı uzak bir bilgisayarla 1: 1 bağlantı kurmak için çalışmanız gerekir.

Enter-pssession -ComputerName Server-R2

Uzak bir cihazda bir uzaktan etkileşim sistemi aktive ettiğinizi varsayarsak, bilgisayar aynı etki alanındadır ve ağınız iyi çalışıyor, istediğiniz bağlantıyı alacaksınız. PowerShell, komut satırı davetiyesini değiştirerek hedefe ulaştığınızı bilmenizi sağlar.

PS C: \\\u003e

Parça, yaptığınız her şeyin sunucu-R2'de olduğu konusunda sizi bilgilendirir. Bundan sonra istediğiniz komutları çalıştırabilirsiniz. Herhangi bir modülü bile içe aktarabilir ve uzak bir bilgisayarda bulunacak PowerShell uzantıları (PSSNAPINS) ekleyebilirsiniz.

İzin bile aynı kalacaktır. PowerShell'in kopyası, çalıştığı aynı güvenlik işaretçisi ile çalışacak. PowerShell, Kerberos'u kullanmasını sağlar, bu nedenle kullanıcı adını ve şifreyi ağ üzerinden geçirmez. Uzak bir bilgisayarda çalıştırdığınız herhangi bir komut, kimlik bilgileriniz altında çalışacaktır, böylece her şey, izin aldığınız şeyin yürütülmesi üzerine yapabilirsiniz. Doğrudan bilgisayar konsolundan kayıtlı görünüyor ve bu bilgisayarın PowerShell'in bir kopyasını kullanarak görünüyor. Neredeyse böyle. İşte birkaç fark var.

  • Uzak bir bilgisayarda profiliniz için bir PowerShell komut dosyanız varsa, uzaktan erişim sistemini kullanarak bağlandığınızda başlamaz. Basitçe söylemek gerekirse, profiller komut satırı penceresini her açtığınızda otomatik olarak başlatılan bir komut paketidir. Onlar otomatik olarak uzantıları, modülleri ve benzerlerini yüklemek için kullanılırlar.
  • Uzak bir bilgisayar yürütme politikasıyla sınırlıdır. Örneğin, bilgisayarınızın politikası, yerel imzasız komut dosyalarını çalıştırabilmeniz için remotyigned üzerine kurulur. Uzak bilgisayar politikası kısıtlı (varsayılan ayar) olarak ayarlandıysa, uzaktan etkileşime girdiğinizde herhangi bir komut dosyasını çalıştırmanıza izin vermez.

Birçok PowerShell takımları çiftler halinde gidiyor: biri başka bir şey yapar - bunun tersi. Bizim durumumuzda, ENTER-PSSSESSESS sizi uzak bir bilgisayara bağlar ve çıkış-PSSISSION bu bağlantıyı kapatır. Çıkış-PSSession herhangi bir parametreye ihtiyaç duymaz. Başladıktan sonra, uzak bağlantı kapalı ve komut satırı pencerenizin davetiyesi normal forma geri döndürülür. Ya Çıkış-Pssession'ı çalıştırmayı unutursanız? Endişelenme. PowerShell ve WinRM, ne yaptığınızı öğrenebilir ve gerekirse uzak bağlantıyı kapatabilir.

Bir tavsiye vermek istiyorum. Uzak bir bilgisayara bağlandığınızda, ne yaptığınızı tam olarak anlamayana kadar üzerinde enter-pssession çalıştırmayın. Örneğin, bilgisayarda çalışıyorsunuz. Sunucu-R2'ye bağlısınız. Koştuğunuz PowerShell Dizesinde

PS C: \\\u003e Enter-PSSession Server-DC4

Şimdi Sunucu-R2, Sunucu-DC4'ten açık bir bağlantı içerir. Bu, izlenmesi zor olan bir "uzaktan etkileşim zinciri" oluşturur. Ek olarak, sunucularınız aşırı yüklenmeye gerek yoktur. Bunu yapmanız gereken anlar olabilir (örneğin, Sunucu-DC4 güvenlik duvarının arkasında ve doğrudan erişemeyeceğiniz, bu nedenle Sunucu-R2'yi bir aracı olarak kullanmanız gerekir). Ancak, genel kural aşağıdaki gibidir: Uzaktan etkileşimin zincirlerini önlemeye çalışın.

Uzaktan Etkileşim 1: n

PowerShell'deki en ilginç şeylerden biri uzak bir etkileşim 1: n. Aynı anda birkaç uzak bilgisayara komut göndermenizi sağlar - tam ölçekli dağıtılmış hesaplamalar. Her bilgisayar ayrı olarak komutu yürütür ve sonuçları gönderin. Bu formdaki Invoke-Command komutu kullanılarak her şey yapılır:

Invoke-Command-Command -Cutername Server-R2, Sunucu-DC4, Server12 -Command (Get-Eventlop Security -Newest 200 | Nerede ($ _. EventID -EQ 1212))

Harici kıvırcık parantez içindeki ekip üç uzak bilgisayara iletilir. Varsayılan olarak, PowerShell hemen 32 bilgisayarla iletişim kurabilir. 32'den fazla bilgisayar tanımlarsanız, kurulacaklar. Ardından, bir bilgisayar işi tamamladığında, komut aşağıdakileri gerçekleştirir. Gerçekten yüksek hızlı bir ağ ve güçlü bilgisayarlarınız varsa, ThrottLelimit komutunu kullanarak miktarlarını artırabilirsiniz. İnvoke-komutta bu seçeneğin nasıl kullanılacağını okuyun, yardım sayfasında yapabilirsiniz.

Bu komutun yardım sayfasında göremeyeceğiniz tek parametre komut parametresidir. Henüz gösterdiğim gibi, iyi çalışıyor. Komut parametresi, Yardım sayfasında listelenen ScriptBlock parametresi için bir takdirme veya kısa bir addır. Komutu benim için kullanmak daha kolaydır, bu yüzden scriptblock yerine kullanmaya meyilliyim, ancak eşit olarak çalışırlar.

Invoke-komut için Yardım sayfasını dikkatlice okursanız, komut dosyasını seçmenize izin veren parametreyi de belirtiniz. FilePath parametresi, silinen bilgisayarlara bir komut dosyası göndermenize izin verir; Bu, bazı karmaşık görevleri otomatikleştirebileceğiniz anlamına gelir ve her bilgisayar çalışma payınızı gerçekleştirir.

Şimdi bilgisayar adı parametresine odaklanın. Invoke-komut kodunun örneğinde, virgülle ayrılmış, bilgisayar adlarının bir listesine sahibim. Çok fazla bilgisayarınız varsa, onlara her bağlandığınızda isimlerini yazdırmak istemeyebilirsiniz. Bunun yerine, bir satırda, virgül, tırnak veya başka bir şey olmadan bir bilgisayar adı içeren bir metin dosyası oluşturabilirsiniz. Örneğin, metin dosyanız WebSerVers.txt olarak adlandırılmışsa, böyle bir kodu kullanırsınız:

Invoke-Command-command (dir) -ComputerName (Get-Content WebServers.txt)

Yuvarlak parantez PowerShell'i ilk önce GET-Content komutunu çalıştırır - matematik işinde yuvarlak parantezlere benziyor. Ardından GET-CONTIP sonuçları -ComputerName parametresine yatırılır.

Ayrıca, Active Directory'de bir bilgisayar adı isteyebilirsiniz, ancak daha zordur. Bir bilgisayar bulmak için GET-ADCOMPUTER komutunu kullanabilirsiniz, ancak bu komutu GET-Content'te yaptıkları gibi parantez içine sokmazsınız. Neden olmasın? Get-Content, Get-Adbomputer bilgisayar nesneleri üretirken, basit metin dizeleri basit metin dizeleri. -Computername parametresi dizeleri bekliyor. "Bilgisayar" nesnelerini almak zorunda kalsaydı, onlarla ne yapacağımı bilemezdim. Bu nedenle, GET-AdcomPuter'ı kullanmak istiyorsanız, bilgisayar nesnelerinin ad özelliklerinden değer almanız gerekir. Böyle:

Invoke-Command-command (DIR) -ComputerName (Get-Adcomputer-Filter * -SearchBase "OU \u003d Satış, DC \u003d Company, DC \u003d PRI" | Select-Object -Expand Adı)

Parantez içinde, bilgisayar nesneleri Select-Nesne komutuna iletilir ve -expand parametresi, bu bilgisayar nesnelerinin ad özelliklerini bulmak için kullanılır. Parantez içindeki ifadenin sonucu, bilgisayar nesneleri değil, bir dizi bilgisayar adlarıdır. Bilgisayarların isimleri, -commeter ad parametresi tarafından ihtiyaç duyulan şeydir.

Get-Adcomputer'a aşina değilseniz, bu takımın ne yaptığını görelim. Filter parametresi, tüm bilgisayarların sonuçlara dahil edilmesini ve -Search Base parametresi, PowerShell'i PowerShell'i öngörür, böylece Şirket.pri alanındaki organizasyonel satış (OU) organizasyon grubundaki bilgisayarları aramaya başlamaya başlamıştır. GET-ADComputer komutu yalnızca Windows Server 2008 R2'de ve Windows 7'de, uzak sunucu yönetim araçları yardımcı programını ayarladıktan sonra kullanılabilir. Bunların içinden işletim sistemlerioh, koşuyorsun

İthalat Modülü ActiveDirectory

dizin hizmeti için komutları indirmek için komut kabuğuna, böylece kullanılabilmeleri için.

Başka bir şey var!

Tüm bu örnekler, uzaktan etkileşimin eş oturumları için gösterilmiştir. Aynı bilgisayarlarla (veya bilgisayar) bağlantısını birkaç kez kısa bir süre içinde geri yükleyecekseniz, yeniden kullanılan, kalıcı oturumlar oluşturabilirsiniz. Bağlantı alternatif kimlik bilgileri gerektiriyorsa, port numarası varsayılan değildir veya ek parametreler gerektiren başka bir şeydir.

Kalıcı oturumlar oluşturmak için, yeni PSSession komutunu kullanmanız gerekir, ardından kolay erişim için bir değişkende kaydedin. Örneğin, aşağıdaki kod üç bilgisayarla uzaktan etkileşim oturumu oluşturur ve bunları bir $ oturum değişkeninde kaydeder:

$ Seanslar \u003d new-pssession -computername bir, iki, üç -port 5555 -Credential domain \\ yönetici

Uzaktan etkileşimin oturumları komut kabuğunu kapattığınızda otomatik olarak kapanır, ancak o zamandan önce bellek alabilirler ve işlemciyi yerel ve uzak sistemlere hafifçe yükleyebilirler. Onları doğru bir şekilde kapatmak için, PSSISSION komutunu kullanabilirsiniz:

$ seanslar | Kaldır-PsSession

Oturumları tekrar açmanız gerektiğinde, Invoke-komut komutunu kullanabilirsiniz:

İnvoke-command -command (dir) -Sesyon $ seanslar

Veya ENTER-PSSSION'ı uygulayabilirsiniz:

Enter-pssession - $ Oturum

ENTER-PSSSESSESSE kodunda, uzaktan etkileşimin yalnızca bir seansı tekrar açıldığını unutmayın. Endeks değişkeni 1, PowerShell'i, oturumu iki adlandırılan bilgisayarla yeniden açması gerektiğini bildirir (dizin sıfır değerinden sayılır).

Gördüğümüz gibi, PowerShell'in uzak etkileşiminden faydalanmak çok. Kullandıysanız, faaliyetinizin ufkunu ne kadar genişleteceğinden emin olacaksınız.

Don Jones ( [E-posta Korumalı]) - Powershell (www.windowsitpro.com/go/donjoneespower) teknik eğitmen, 35'den fazla kitapta yazar. Microsoft MVP'nin başlığına sahiptir



Bir şekilde WinRM ile iki sunucuda sorunlar var.

1. SETSPN.
Bir sorun, SPN girişi http /<имя сервера> bazı "sol" için kaydedildi hesap Kullanıcı.

Bu kayıt ekibini buldu
setspn -F -Q * /<имя сервера>

Sonra onları komutlarla silindi
setspn -d http /<имя сервера>.<имя домена> <имя домена>\<левая учётная запись>
setspn -d http /<имя сервера> <имя домена>\<левая учётная запись>

Ardından, PSremoting -Force'yi etkinleştirin.

2. Dil Paketi
İkinci sunucuda, güvenlik duvarı ile iddia edilen zor problemdi. Güvenlik duvarı durumunu kontrol edemiyor, Bir sürü siteyi karıştırdım ve kurulu dil paketi hakkındaki cevabına dayanarak sezgisel olarak bulundu.

WinRM QuickConfig
WinRM Service bu makinede koşuyor.
Wsmanfault.
İleti
Providerfault.
Wsmanfault.
Mesaj \u003d Güvenlik duvarı durumunu kontrol edemiyor.

Hata Numarası: -2147024894 0x80070002
Sistem belirtilen dosyayı bulamıyor.

Cevap yazıldı bu hata Ek dil paketi çıkarılarak tedavi edilir.
Ama ben başka türlü girdim. Ek bir Rus dil paketi ile İngilizce çalışmamız var. Arabirim dilini Rusça olarak değiştirdim.
Kontrol Paneli, Dil ve Bölgesel Standartlar, Diller ve Klavyeler İngiltere'den Rusça arayüz dilini değiştirdi.
Oturumu kapatın ve tekrar girin. Açılan PowerShell ve Tekrarlanan WinRM QuickConfig

PS C: \\ Windows \\ System32\u003e WinRM QC

WinRM hizmeti, uzak bilgisayar yönetimini çözmek için yapılandırılmamıştır.
Aşağıdaki değişiklikler yapılmalıdır:

Bu bilgisayarın IP adreslerinin herhangi birinde WS-MAN sorgularını almak için http: // * için WinRM dinleyici oluşturun.

Değişiklikleri çalıştırmak? Y.

WinRM servisi uzaktan kumanda için güncellendi.

Bu bilgisayarın IP adreslerinin herhangi birinde WS-MAN isteklerini almak için http: // * üzerinde WinRM dinleyiciyi oluşturdu.

Başarılı oldu, ama yine de yeterli değil.

Erişim reddedildi hatası, komutları bu sunucuyu başka bir bilgisayardan uzaktan izlemeye çalışırken ortaya çıktı.

Yeni-PsSession: [<имя сервера>] Uzak sunucuya bağlanma<имя сервера> Aşağıdaki hata mesajı ile başarısız oldu: Erişim reddedildi. Daha fazla bilgi için, bkz. Yaklaşık_remote_trubleshooting Yardım konusu hakkında.

Sonra enable-psremoting tekrarlamadım

PS C: \\ Windows \\ System32\u003e Enable-PSremoting

Hızlı ayar WinRM.
Dahil edilmesi için "set-wsmanquickconfig" komutunu çalıştırın bu bilgisayar WinRM Service kullanarak uzaktan kumanda.
Gerekli eylemler.
1. Çalıştır veya yeniden başlatın (zaten çalışıyorsanız) WinRM servisi.
2. WinRM hizmeti türünü "Autorun" olarak değiştirme.
3. Herhangi bir IP adresinde istek almak için bir dinleyici oluşturma.
4. Güvenlik duvarı istisnalarını WS-Management'in trafik trafiği (yalnızca HTTP protokolü) için yapılandırın.

İlerlemek?

(Varsayılan değer "Y" i): a
WinRM servisi zaten bir bilgisayarda istek almak için yapılandırılmıştır.
WinRM, uzak bilgisayar yönetimini çözmek için zaten yapılandırılmıştır.

doğrulama
Gerçekten bu eylemi yapmak ister misin?
İşlemin "Oturum Yapılandırmasını" Hedef Nesnesi Üzerinden Kaydedilmesi "Oturum Yapılandırması
"Microsoft.Powershell32" bulunamadı. Komutu "Kayıt-PSSessionFonfiguration Microsoft.Powershell32 yürütülecek
-Processorarmitecture X86 -force "" Microsoft.Powershell32 "oturum yapılandırması oluşturmak için. WinRM Service Will
yeniden başlatıldı. ".
[Y] Evet - Y [A] Herkes için Evet - A [n] no - n [l] Hepsi için hayır - L [S] Askıya Alma - S [?] Yardım
(Varsayılan değer "Y" i): a

Bundan sonra, bu sunucuda WinRM, olması gerektiği gibi kazandı.

Bu yazıda, Grup İlkesi'ni kullanarak tüm hedef bilgisayarlarda Windows Uzaktan Yönetimi (WinRM) Servisi'ni merkezden nasıl etkinleştireceğinizi ve yapılandırmayı söylemeye çalışacağım. Size, Windows uzaktan yönetiminin, yöneticilerin istemci ve sunucu Windows OS (ve daha önce Microsoft SysInternals yardımcı programını ayarladıysanız, WRM'nin beğenmesi gerektiğini düşündüğünüzü, yöneticilerinin uzaktan erişebilmesini ve yönetmesini sağlayan özel bir hizmet olduğunu hatırlatayım.
Her zamanki bilgisayarı alın ve etkinleştirilmediği windows özelliği UZAKTAN YÖNETİM. Komut isteminde, aşağıdaki komutu tanıtıyoruz:


WRM'nin ayarlanmadığını belirten aşağıdaki hata mesajı görünmelidir:
WARS HATA. Müşteri istek üzerine belirtilen hedefe bağlanamaz. Hata Numarası: - 2144108526 0x80338012

WinRM'yi ayrı bir sistemde manuel olarak yapılandırmanız gerekirse, komutu yazmak yeterlidir:

WinRM QuickConfig

Bilgisayarlar grubunda WinRM'yi yapılandırmanız gereken durumlarda, Grup İlkesi'nin özel parametrelerini kullanabilirsiniz. İlgi politikası bölümünde bulunur: Bilgisayar Yapılandırması -\u003e Politikalar -\u003e Windows Bileşenleri -\u003e Windows Uzaktan Yönetimi (WinRM) -\u003e WinRM Service. Etkinleştirmeniz gerekiyor aşağıdaki parametreler:
Dinleyicilerin otomatik yapılandırmasına izin ver
Temel kimlik doğrulamasına izin ver.


IPv4 filtre bölümünde, aşağıdaki şekilde, bilgisayarın herhangi bir yerden bağlantıları (ve dolayısıyla kontrol komutlarını) alabileceği anlamına gelir, bilgisayardaki sayfaların tüm IP arayüzlerinde istek alacağı anlamına gelir.


Ardından Bilgisayar Yapılandırması bölümünde -\u003e Politikalar -\u003e Windows Bileşenleri -\u003e Windows Uzaktan Kabuk öğeyi etkinleştirin:
Uzak kabuk erişimine izin ver


Son olarak, Windows Uzaktan Hizmet Hizmeti'nden "Otomatik" (otomatik olarak) başlangıç \u200b\u200btürünü belirlemeniz gerekir. Grup ilkesinin bir sonraki bölümünden çalışan hizmetleri çalıştırma yöntemini yönetebileceğinizi hatırlatayım: Bilgisayar Yapılandırması -\u003e Windows Ayarları -\u003e Güvenlik Ayarları -\u003e Sistem Hizmetleri.


Grup İlkesi'ni kullanarak WinRM'yi etkinleştirdikten sonra, tanıdık ekibi kullanarak hizmet durumunu kontrol edeceksiniz:


WinRM Service Başlat Türünün otomatik olarak ayarlandığından emin olun. Aslında "bir gecikme ile otomatik olarak" lansman türü olsa da, çünkü Varsayılan olarak, bir başlangıç \u200b\u200bgecikmesi (HKEY_LOCAL_MACHINE \\ SYSTEM \\ CURRENTCONTROLSET \\ HİZMETLER \\ WinRM'deki GRUECTEDAUTOSTART \u003d 1 parametresi) WinRM servisi için belirtilir.

Şimdi, WinRM'yi etkinleştirdikten sonra, Grup İlkeleri Kullanarak, bu sistem WinRS komutlarını kullanarak uzaktan kontrol edilebilir. Aşağıdaki komut, uzak sistemde çalışan komut satırını açacaktır:

WinRS -R: Computer01 cmd

Komut satırı göründükten sonra, yerel olarak çalışırmış gibi, uzak bir bilgisayardaki herhangi bir komutun yürütülmesinin sonucunu gerçekleştirebilir ve görebilirsiniz. Kontrol bilgisayarınızda WinRM'nizde de etkinleştirileceğini unutmayın.

PowerShell'deki uzaktan etkileşimin ayarlanması (Bölüm 1)

Uzaktan etkileşim olasılığını sağlamak için powerShell'i kullanma, Bazı ayarlar yapmak gerekir. Bu ayarların sayısı işletim sistemine, ağ ortamına, güvenlik gereksinimlerine bağlıdır (ve ayrıca Tanrı'yı \u200b\u200bda biliyor). Çok fazla ayar kadar, onların en önemlisi hakkında konuşmaya çalışacağım. Hadi gidelim…

Uzaktan kumandayı etkinleştir

Uzak bir bilgisayarı yönetmek için, bu bilgisayardaki uzaktan etkileşimi çözmeniz gerekir. İstisna, tüm uzaktan kumanda özelliklerinin varsayılan olarak etkin olduğu Windows Server 2012'dir. Diğer tüm işletim sistemleri için gereklidir:

1. WinRM servisi başlatın ve Autorun'a koyun;
2. Kontrol isteklerini dinleyecek bir dinleyici (dinleyici) oluşturun;
3. WS-yönetim trafiğine izin veren güvenlik duvarı kuralına dahil edin.

Bir bilgisayarı yapılandırmak için, Enable-PSRemoting CMDlet'i kullanımı en kolay hale getirin. Gerekli tüm eylemleri yapacak ve varsayılan oturum yapılandırmasını da kaydedecektir. Onay isteklerini bastırmak için, -Force parametresini ekleyebilirsiniz. Konsol yönetici haklarıyla başlatılmalıdır, aksi takdirde bir hata verilecektir.

İÇİNDE etki alanı ortamı PS remotasyonunu yapılandırmak için Grup İlkeleri kullanabilirsiniz.

Bilgisayar Yapılandırması \\ Politikalar \\ Windows Ayarları \\ System Services bölümünde, "Windows Uzaktan Yönetimi (WS-Management" politikasını dahil edeceksiniz. WinRM servisi için başlangıç \u200b\u200bmodunu ayarlar.

Bilgisayar Yapılandırması \\ Yönetim Şablonları \\ Windows Bileşenleri \\ Windows Uzaktan Yönetimi (WinRM) \\ WinRM servisi, 5985 numaralı bağlantı noktasında bir dinleyici oluşturan "Dinleyicilerin Otomatik Yapılandırmasına İzin Ver" politikasını açarsınız (varsayılan olarak HTTP için bağlantı noktası). Ek olarak, hangi IP'nin bağlanabileceğini belirleyebilirsiniz. IP filtrasyonuna gerek yoksa, sadece işaret *, herhangi bir adresden bağlantı almak anlamına gelir.

Ardından Bilgisayar Yapılandırması \\ Windows Ayarları \\ Security Ayarları \\ Windows Güvenlik Duvarı bölümüne gidin ve Bilgisayar Yapılandırması \\ Windows Firewall Seecurity Security \\ Inbound Kuralları'nda yeni bir kural oluşturun. Önceden tanımlanmış (önceden tanımlanmış kurallar) öğesini seçin ve listede Windows Uzaktan Yönetimi'ni seçin.

Lütfen iki çalışma modunu seçebileceğinizi unutmayın - bir duruş ve uyumludur. İlk durumda, 5985 numaralı bağlantı noktası varsayılan WinRM tarafından, ikinci bağlantı noktasında (eski WinRM sürümleriyle uyumluluk için) açılacaktır. Her ikisi de varsayılan olarak seçilir.

Bilgisayarlar arasında yapılandırmayı yapılandırın

İçin uzak bağlantı PowerShell, bilgisayarlar arasında karşılıklı kimlik doğrulaması kullanır. Bu, bağlantıyı kurmadan önce, uzak makinenin özgünlüğünü onaylaması gerektiği anlamına gelir. Basitçe söylemek gerekirse, SRV1 adlı bir bilgisayara bağlarsanız, ardından bağlantıyı kurmadan önce (SRV1), gerçekten olduğunu kanıtlamalıdır, aksi takdirde bağlantı kurulmayacaktır.

Bilgisayarlar tek bir alanın üyesi ise veya farklıdır, ancak birbirlerine güvenmek, daha sonra karşılıklı kimlik doğrulaması yapılacaktır. etki alanı servisleri. Asıl şey, bilgisayar adının IP adresine izin verilmesi ve Active Directory'deki bilgisayar adına karşılık gelmesidir.

Dikkat:bağlandığında, geçerli bilgisayarların isimlerini belirtmeniz gerekir, yani. Active Directory'de belirtildiği için. Bilgisayar yerel etki alanına girerse, örneğin bilgisayarın adını belirleyebilirsiniz. Srv1.. Başka bir etki alanından bir bilgisayar adı belirtmek için bir eksiksiz belirtmeniz gerekir. alan adı (FQDN) - Srv1.contoso.com.. IP adresini veya diğer bazı DNS adını belirtirseniz (örneğin, CNAME takma adı), karşılıklı kimlik doğrulama çalışmaz.

Bilgisayarın bir veya ikisi de etki alanına dahil edilmezse, karşılıklı kimlik doğrulaması için iki seçenek vardır: Güvenilir ana bilgisayar listesine bir uzak makine ekleyin veya SSL kullanın.

Güvenilir ana bilgisayarlar.

Güvenilir ana bilgisayarlara bir bilgisayar eklemek - yol basit, ancak daha az güvenlidir. Güvenilir ana bilgisayarlardaki bilgisayarlar için, karşılıklı kimlik doğrulaması aslında devre dışı bırakılır. Bu nedenle, bu şekilde büyük bir özenle kullanmaya değer.

PowerShell'i kullanarak güvenilir düğümlere bir bilgisayar ekleyebilirsiniz. Güvenilir ana bilgisayarların bir listesini oluşturmak ve SRV1 bilgisayarı üzerine ekleyebilirsiniz, komutu kullanırız:

Set-item WSMAR: \\ Localhost \\ Client \\ TrustedHosts -Value srv1.contoso.com

Birden fazla bilgisayar eklerken, isimleri virgül aracılığıyla listelenebilir. Sadece adını değil, bilgisayarın IP adresini belirlemeye izin verilir. Ayrıca, ikame sembollerini de destekler. Örneğin, ContOSO.com etki alanından gelen tüm bilgisayarları, * .contoso.com değerini veya hiç istisnasız bir şekilde belirten Güvenilir ana bilgisayarlara ekleyebilirsiniz:

Set-item WSMAR: \\ Localhost \\ Client \\ TrustedHosts -Value *

Bir bilgisayar adı, mevcut bir güvenilir düğüm listesine eklemek için, önce geçerli değeri değişkende kaydetmeniz ve ardından değeri geçerli ve yeni değerleri içeren bölünmüş bölünmüş listeye atamanız gerekir. Örneğin, bir SRV2 bilgisayarı bir güvenilir düğüm listesine eklemek için aşağıdaki komutu kullanın:

$ Curr \u003d (Get-item WSMAN: \\ Localhost \\ Client \\ TrustedHosts) değeri
Set-item WSMAR: \\ Localhost \\ Client \\ TrustedHosts -Value "$ Curr, srv2.contoso.com"

Peki ve güvenilir düğümlerin listesini görün, komuta edebilirsiniz:

GET-item WSMAR: \\ Localhost \\ Client \\ TrustedHosts

Ayrıca, TrustedHosts'a eklemek için Grup İlkesi kullanabilirsiniz. Bilgisayar Yapılandırması \\ Yönetim Şablonları \\ Windows Bileşenleri \\ Windows Remote Management (WinRM) \\ WinRM istemcisi, "Güvenilir Ana Bilgisayarlar" politikasını açın ve virgül içindeki bilgisayarların isimlerini veya IP adreslerini ekleyin. Joker karakterler desteklenir.

Not: GüvenliHostlar GPO üzerinden yapılandırılmışsa, PS değiştirilemez. Aynısı, diğer tüm ayarlar için PS uzaklaştırması için de geçerlidir.

SSL kullanarak bağlantı uzaktan etkileşimin en çok korunan sürümüdür. Ancak, ortamda oldukça karmaşık olan yolun geri kalanıyla karşılaştırıldığında, biraz tinker yapması gerekecektir.

İlk önce, bu yöntemi kullanmak için dijital ihtiyacımız var sSL sertifikası Bağlanacağımız makine için. Sertifika Alma - Ayrı Bir Konu, üzerinde durmayacağız. Test ortamında, Windows SDK'nın bir parçası olan MakECert yardımcı programını kullanacağım ve kendinden imzalı bir sertifika oluşturacağım:

makECert -a Sha1 -R -PE -N "CN \u003d WKS8" -EKU 1.3.6.1.5.5.7.3.1 -SS MY -SR LocalMachine -Sky Exchange -SP "Microsoft RSA Schannel Kriptografik Sağlayıcı" -SY 12 -M 12 "C: \\ myssl.cer"

Bu komut, bir yılın bir süre için bir SSL sertifikası oluşturacak ve yerel bilgisayar sertifikası deposuna yerleştirir. Lütfen sertifikanın, bağlantı komutunda belirteceğiniz aynı ada verileceğini unutmayın.

Makbuzdan sonra, sertifika güvenilir kök otoritesine (Güvenilen Kök Sertifika Merkezleri) eklenmelidir. Bunu yapmak için sertifikayı açın ve "Sertifika Yükle" düğmesine tıklayın.

Sertifika ithalatı sihirbazı başlar. "Yerel PC" deposunun konumunu belirtin.

Bir depo olarak "Güvenilen Kök Sertifika Merkezleri" i seçin.

Şimdi sertifikamız güvenilir. Tekrar açmak ve "Kompozisyon" sekmesinde, bir sertifika baskısı buluruz (sertifikaTETBUTPRINT). Panoya kopyalayın.

Şimdi HTTPS için bir dinleyici oluşturabilirsiniz. PowerShell Konsolu'nu açın ve komutu girin:

New-wsmaninstance WinRM / Config / Dinleyici -SenectorSet @ (Adres \u003d '*'; Transport \u003d 'https') -Valueset @ (HostName \u003d 'WKS8'; CertificatetumBrint \u003d 'xxx')

CertifetTumbrint alanında, önceki paragrafta kopyalanan sertifika baskısını yerleştirin.

Güvenlik Duvarı pencerelerinin istisnaları (eğer açılırsa) Yeni bir dinleyici için, manuel olarak yapılandırılmanız gerekir, otomatik olarak oluşturulmayacaklar. Bu nedenle, TCP 5986 ve 443 portunda gelen gelen trafik için yeni bir kural yaratacağız:

Yeni-NetfireWallrule -DisplayName "Windows Uzaktan Yönetimi (HTTPS)" -Direct Inboundocol TCP -Localport 5986,443 -Action Cimrut -Enabled True

Ayrıca, kuralı oluşturmak için, daha çok benzeyen Netsh komut satırının grafik snap veya yardımcı programını kullanabilirsiniz.

Daha sonra, biz bağlayacağımız SRV1 bilgisayarına gidiyoruz. Kendinden imzalı bir sertifika kullandığım için, güvenilir kök sertifikalarına ve istemciye eklemek zorunda kalacak. Myssl.cer sertifika dosyasını SRV1'de kopyalayın ve komutu yükleyin:

certutil -Addstore Kökü C: \\ Myssl.cer

Hepsi bu, ayar tamamlandı. Şimdi bağlanabilirsin. WKS8 ekibindeki etkileşimli oturumu açın:

Enter-pssession -Credential WKS8 \\ Kirill -USESSL

Lütfen SSL üzerinden bağlandığında, bağlantı türünü belirtmenin yanı sıra kimlik bilgilerini girmeniz gerekir. O zaman her şey her zamanki gibi.

Çekleri devre dışı bırak

SSL ile bağlandığında, sertifikanın güvenilir bir sertifika yetkilisi tarafından verildiği ve bu makine için serbest bırakıldığı kontrol edilir. Basitçe söylemek gerekirse, sertifikadaki ad, bağlantı komutunda belirtilen adla eşleşmeli ve Sertifika Yayıncısının güvenilir kök sertifikasyon merkezleri listesinde olması gerekir. Bu koşullara uyulmaması durumunda kontrol ederken, bağlantı gerçekleşmez.

Prensip olarak, bu doğru, ancak gerekirse doğrulama iptal edilebilir. Bunu yapmak için, oturum özelliklerinde iki parametre vardır:

SkipCacheck - Sertifika Yayıncısının doğrulamasını iptal eder;
-SkipcnCheck - Bilgisayar adı uygunluğunu kontrol eder.

Bu parametreleri kullanarak yeni bir oturum oluşturun, örneğin burada olabilir:

$seçenek \u003d Yeni-PSSessionOption -SkipCacheck -SkipcnCheck
Enter-pssession -ComputerName WKS8 -SessionOption $ option -Credential WKS8 \\ Kirill -USESSL

Doğru, bu durumda, SSL sertifikalarının anlamı kaybedilir ve ardından itme ana bilgisayarları kullanmak daha kolaydır. Ancak böyle bir fırsat var ve bunu bilmek gerekli.

Ek ayarlar

İkinci versiyondan başlayarak, varsayılan olarak WinRM, HTTP ve 5986 için HTTPS için 5985 bağlantı noktasını dinler. Eski versiyonlarla uyumluluk için (veya güvenlik duvarındaki ek bağlantı noktaları açmamak için), ayrıca geleneksel bağlantı noktalarında dinleyicileri 80 ve 443'te etkinleştirebilirsiniz. HTTP:

Set-item WSMAR: \\ Localhost \\ Service \\ EnableComTilityHTTPlistener $ true

Ve https için:

Set-item wman: \\ localhost \\ service \\ enablecommIndIndyhttpsListener $ true

Aynı grup, grup politikaları kullanılarak yapılabilir. Bunu yapmak için, Bilgisayar Yapılandırması \\ Yönetim Şablonları \\ Windows Bileşenleri \\ Windows Remote Management (WinRM) \\ WinRM Service (WinRM hizmeti (uyumluluk HTTP dinleyicisini açın ve uyumluluk HTTPS dinleyiciyi açın "politikaları.

Varsayılan bağlantı noktaları değiştirilebilir ve standart olmayan bir portu dinleyebilir, örneğin port 8080:

Set-item WMSMAN: \\ Localhost \\ Listener \\ Listener * \\ Port -Value 8080

Not: Dinleyicileri standart olmayan bağlantı noktalarına yüklemek, güvenliği biraz artıracaktır. Ancak, varsayılan bağlantı noktasının her zaman bağlanırken manuel olarak belirleyebileceğinizi unutmayın.

Bu kadar. Makalelerde, uzak oturumların yapılandırmasını, bitiş noktaları (bitiş noktası) oluşturma ve küçük şeyler üzerinde başka bir şey düşünün