Grup İlkesi kullanılarak Windows Uzaktan Yönetim nasıl etkinleştirilir. Konsol komutlarını uzak bilgisayarlarda Winrm ağ komut satırı üzerinden yürütme

17.10.2011 Don Jones

PowerShell'in yaratıcılarının biraz tembel olduğunu fark ettim ki bu iyi bir şey. Her komut için -ComputerName parametresini kodlamak istemediler, bu yüzden yarattılar ortak sistem"uzaktan etkileşim" olarak adlandırılır. Esasen, bu sistem uzaktaki bilgisayarda çalıştırmak için herhangi bir komutu etkinleştirecektir. Uzak bilgisayarda bulunan ancak sizinkinde bulunmayan farklı komutları bile çalıştırabilirsiniz. Bu, iş istasyonunuza her komutu sürekli olarak yüklemeniz gerekmediği anlamına gelir. Bu uzak sistemçok verimlidir ve bir dizi ilginç yönetim seçeneği sunar

PowerShell'i kullanmaya başladığımda Get-Service komutuna kapıldım ve bir -ComputerName parametresine sahip olduğunu fark ettim. Bu, hizmete diğer bilgisayarlardan bağlanabileceğiniz anlamına mı geliyor? Bir dizi deney yaptıktan sonra, yazılanın tam olarak bu olduğunu buldum. İlgilendim ve diğer komutlardan -ComputerName parametrelerini aramaya başladım. Ve onlardan sadece birkaçının olduğunu öğrendiğimde üzüldüm.

PowerShell iki tür uzaktan iletişim sağlar: bire bir uzaktan iletişim (1: 1) ve bire çok uzaktan iletişim (1: n). Onlar hakkında konuşmadan önce, bazı temel konulara açıklık getirmek istiyorum.

Uzaktan PowerShell Temelleri

PowerShell uzaktan iletişim, Telnet ve diğer eski teknolojiler gibi çalışır uzaktan kumanda... Bir komutu çalıştırdığınızda, aslında uzak bilgisayarda çalışır. Bilgisayarınıza döndürülen her şey bu komutun sonucudur. Telnet veya Secure Shell'den (SSH) farklı olarak PowerShell, Yönetim için Web Hizmetleri (WS-Management) adlı yeni bir iletişim protokolü kullanır. Protokol, HTTP veya Güvenli HTTP (HTTPS) üzerinde çalışır ve protokol, iletişim kurmak için yalnızca bir bağlantı noktası kullandığından, gerektiğinde güvenlik duvarları üzerinden yönlendirmeyi kolaylaştırır. Microsoft'un WS-Management uygulaması, Windows Uzaktan Yönetim adı verilen bir arka plan hizmeti biçiminde gelir. WinRM, PowerShell 2.0 ile yüklenir ve varsayılan olarak Windows Server 2008 R2 gibi sunucularda çalışır. Windows 7'de varsayılan olarak yüklenir, ancak etkinleştirilmez. Komutu göndermek istediğiniz bilgisayarlarda WinRM'yi etkinleştirmeniz gerekir. Fiziksel olarak geride olduğunuz bilgisayarın WinRM hizmetini başlatmasına gerek yoktur.

Tüm PowerShell komutları, çıktı olarak nesneler üretir. Bir komutu uzaktan çalıştırdığınızda, çıktısının HTTP veya HTTPS kullanılarak ağ üzerinden kolayca iletilebilecek bir forma sarılması gerekir. Örneğin, PowerShell çıktı nesnelerini otomatik olarak XML dosyaları ağ üzerinden iletilir. Bilgisayarınıza ulaştıklarında, PowerShell'in birlikte çalışabileceği nesnelere dönüştürülürler. Ancak, dönüştürülen bu nesneler aslında anlık görüntülerdir. Her dakika kendilerini yenileyemezler. Bu nedenle, uzaktaki bir bilgisayarda çalışan işlemler olan nesnelere ulaşmanız gerekiyorsa, elde edilen sonuç yalnızca bu nesnelerin oluşturulduğu belirli bir süre için doğru olacaktır. Bellek ve cpu kullanımı gibi değerler değişmeyecektir. Ayrıca, dönüştürülen nesneleri herhangi bir şey yapmaya zorlayamazsınız. Örneğin, bir nesneye kendisini durdurmasını söyleyemezsiniz. Bu, uzaktan iletişimin önemli bir sınırlamasıdır, ancak çalışmanızı ve ilginç görevler gerçekleştirmenizi engellemez.

Bir uzaktan iletişim sistemi kullanmak için yalnızca birkaç temel gereksinim vardır.

  • Bilgisayarınız (diğer adıyla yerel bilgisayar) ve komut göndermek istediğiniz bilgisayarlardan biri (diğer adıyla uzak bilgisayar) ile nasıl çalışmalıdır? Windows PowerShell'i 2.0? Windows XP güncel değil Windows sürümü PowerShell 2.0'ı yükleyebileceğiniz. Böylece, eski versiyon uzak bir oturuma da katılabilir.
  • İdeal olarak, yerel ve uzak bilgisayarlar aynı etki alanının veya güvenilen / güvenilen etki alanlarının üyeleri olmalıdır. Remoting sistemi ile domain dışında çalışabilirsiniz ancak bu zordur ve burada bundan bahsetmeyeceğim. Bu senaryo hakkında daha fazla bilgi edinmek için Remote_Troubleshooting ile ilgili PowerShell Yardım konusuna bakın.

WinRM'ye genel bakış

Şimdi, uzaktan iletişimi başlatmak için bu hizmeti yapılandırmanız gerektiğinden, WinRM'ye geçelim. Yine, uzak bilgisayarda WinRM ve PowerShell uzaktan iletişim ayarlarını yapılandırmanız yeterlidir. Çalıştığım çoğu ortamda yöneticiler, XP veya daha yenisini çalıştıran her bilgisayarda uzaktan iletişimi etkinleştirdi. Bu, fark edilmeden masaüstü ve dizüstü bilgisayarlara gizlice girmeyi mümkün kılar, bu da çok yararlı olabilir (bu tür bilgisayarların kullanıcılarının ne yaptığınızı bilemeyeceği anlamına gelir).

Bu, WinRM'nin PowerShell'e özel bir şey olduğu anlamına gelmez. WinRM, trafiği birden çok yönetim uygulamasına yönlendirebilir. Esasen, WinRM bir gönderici gibi davranır. Trafik geldiğinde, WinRM hangi uygulamanın onunla etkileşime girmesi gerektiğine karar verir ve onu hedef uygulamanın adıyla etiketler. WinRM'nin gelen trafiği kendi adına dinleyebilmesi için, alıcı uygulamanın WinRM'ye kaydolması gerekir. Başka bir deyişle, yalnızca WinRM'yi etkinleştirmeniz değil, aynı zamanda Power Shell'i WinRM için bir uç nokta olarak kaydetmeniz gerekir.

en basit bir şekilde her iki görevi de gerçekleştirmek, PowerShell'i yönetici olarak çalıştırmak ve Enable-PSRemoting komutunu çalıştırmaktır. Set-WSManQuickConfig adlı başka bir komutun kılavuzunu görebilirsiniz. Komutu çalıştırmaya gerek yoktur. Enable-PSRemoting bunu sizin için yapar ve ayrıca uzaktan kumandayı kurmak ve çalıştırmak için birkaç adım daha gerekir. Temelde Enable-PSRemoting komutu WinRM hizmetini başlatır, otomatik olarak başlayacak şekilde yapılandırır, PowerShell'i bir uç nokta olarak kaydeder ve hatta gelen WinRM trafiğine izin vermek için Windows Güvenlik Duvarı istisnalarını ayarlar.

Uzaktan iletiş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ı denetleyicilerinde yerleşiktir. Sadece GPO'yu açın ve Bilgisayar Yapılandırması \ yolunu izleyin

Yönetim Şablonları \ Windows Bileşenleri. Listenin altında, yapılandırılması gereken hem Uzak Kabuk hem de Windows Uzaktan Yönetim (WRM) bulacaksınız. Remote_Troubleshooting sorunlarıyla ilgili Yardım bölümü, bunun nasıl yapılacağı konusunda size ayrıntılı talimatlar verecektir. Yardım'daki Bir Kuruluşta Uzaktan İletişimi Etkinleştirme ve Grup İlkesi Kullanarak Dinleyicileri Etkinleştirme bölümlerini gözden geçirin.

WinRM 2.0 (PowerShell'in kullandığı), varsayılan olarak HTTP için 5985 numaralı TCP bağlantı noktasını ve HTTPS için 5986 numaralı TCP bağlantı noktasını kullanır. Bu, WinRM'nin 80 ve 443 numaralı bağlantı noktalarını dinleyecek şekilde yapılandırılmış yerel olarak kurulmuş web sunucularıyla çakışmamasını sağlar. WinRM'yi alternatif bağlantı noktalarını kullanacak şekilde yapılandırabilirsiniz, ancak bunu yapmanızı önermiyorum. Bu portları bırakırsanız, tüm komutlar uzaktan erişim PowerShell iyi çalışacaktır. Bu bağlantı noktalarını değiştirirseniz, uzak komutu çalıştırırken her zaman alternatif bir bağlantı noktası belirtmeniz gerekecektir. Bu, daha fazla yazmanız gerektiği anlamına gelir. Bağlantı noktasını umutsuzca değiştirmeniz gerekiyorsa, şu komutu girebilirsiniz:

Winrm, winrm / config / dinleyiciyi ayarladın mı? Adres = * + Taşıma = HTTP @ (Port = "1234")

1234 sayıları ihtiyacınız olan bağlantı noktasını temsil eder. Burada bu komut birden fazla satıra yazılır, ancak bir satıra girmeniz gerekir. Aynı şey makalede açıklanan diğer tüm komutlar için de geçerlidir. Http yerine HTTPS kullanmanız gerekiyorsa, özelleştirmek için bu komutu değiştirebilirsiniz. yeni liman HTTPS. Alternatif varsayılan bağlantı noktalarını kullanmak için yerel bilgisayarlarda WinRM ayarlarını yapılandırmanın bir yolu olduğunu kabul etmeliyim. Bu şekilde, uzak komutu çalıştırdığınızda sürekli olarak alternatif bir bağlantı noktası tanımlamanız gerekmez. Ancak Microsoft'un varsayılan ayarlarıyla çalışalım.

Remote Shell'deki GPO ayarlarına girerseniz, örneğin, bir uzak oturumun sunucu tarafından sonlandırılmadan önce ne kadar süre etkin olmayacağını ayarlayabileceğinizi fark edeceksiniz; aynı anda kaç eşzamanlı kullanıcı uzak sunucuya erişebilir; her uzak kabuğun ne kadar bellek ve işlem 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ğulmamasını sağlamaya yardımcı olacaktır. Ancak, varsayılan olarak, uzaktan kumandayı kullanmak için bir yönetici olmanız gerekir, böylece normal kullanıcıların sunucularınızı tıkaması konusunda endişelenmenize gerek kalmaz.

Uzaktan iletişim 1: 1

1: 1 uzaktan kumanda ile, esasen tek bir uzak bilgisayarda komut satırı erişiminiz olur. Verdiğiniz tüm komutlar doğrudan uzak bilgisayarda çalışır ve sonuçları bir komut istemi penceresinde görürsünüz. Bu, PowerShell komut satırı ortamıyla sınırlı olmanız dışında, Uzak Masaüstü Bağlantısı kullanmaya biraz benzer. PowerShell uzaktan iletişim, Uzak Masaüstü'nün ihtiyaç duyduğu kaynakların bir kısmını kullanır, bu nedenle sunucularınız üzerinde çok daha az etkisi olur.

Server-R2 adlı uzak bir bilgisayarla 1: 1 bağlantı kurmak için aşağıdakileri çalıştırmanız gerekir:

Enter-PSSession -Bilgisayar Adı Sunucusu-R2

Uzak cihazda uzaktan kumandayı etkinleştirdiğinizi, bilgisayarın aynı etki alanında olduğunu ve ağınızın iyi çalıştığını varsayarsak, istediğiniz bağlantıyı alırsınız. PowerShell, komut satırı istemini şu şekilde değiştirerek hedefinize ulaştığınızı bilmenizi sağlar.

Not C: \>

Bölüm, yaptığınız her şeyin Server-R2'de gerçekleştiğini size bildirir. Bundan sonra istediğiniz komutları çalıştırabilirsiniz. Hatta herhangi bir modülü içe aktarabilir ve uzak bilgisayarda bulunacak PowerShell uzantılarını (PSSnapins) ekleyebilirsiniz.

Hatta izinler aynı kalacaktır. PowerShell kopyanız, başlatıldığı güvenlik belirteciyle aynı şekilde çalışır. PowerShell bunu Kerberos kullanarak yapar, bu nedenle kullanıcının adını ve parolasını ağ üzerinden iletmez. Uzak bir bilgisayarda çalıştırdığınız herhangi bir komut, kimlik bilgileriniz altında çalışacaktır, bu nedenle, yapma izniniz olan her şeyi yapabilirsiniz. Doğrudan bilgisayar konsolundan kaydolmak ve PowerShell'in bir kopyasını kullanmak gibi bu bilgisayar... Bu hemen hemen böyle. İşte farklılıklardan bazıları.

  • Uzak bir bilgisayarda profiliniz için bir PowerShell betiğiniz varsa, Uzaktan Erişim kullanarak bağlandığınızda çalışmaz. Basit bir ifadeyle profiller, bir komut istemi penceresini her açtığınızda otomatik olarak başlatılan bir komut paketidir. Uzantıları, modülleri ve benzerlerini otomatik olarak yüklemek için kullanılırlar.
  • Uzak bilgisayarın Yürütme İlkesi ile sınırlandırılırsınız. Yerel imzasız komut dosyalarını çalıştırabilmeniz için bilgisayar politikanızın RemoteSigned olarak ayarlandığını varsayalım. Uzak Bilgisayar İlkesi Kısıtlı olarak ayarlanmışsa (varsayılan ayar), uzaktan iletişim kurarken herhangi bir komut dosyasının çalışmasına izin vermez.

Birçok PowerShell komutu, biri bir şey yaparken diğeri tam tersini yapan çiftler halinde gelir. Bizim durumumuzda, Enter-PSSession sizi uzak bilgisayara bağlar ve Exit-PSSession bu bağlantıyı kapatır. Exit-PSSession herhangi bir parametreye ihtiyaç duymaz. Bir kez başlatıldığında, uzak bağlantı kapatılır ve komut istemi penceresi isteminiz normale döndürülür. Exit-PSSession'ı başlatmayı unutursanız ne olur? Merak etme. PowerShell ve WinRM, ne yaptığınızı anlayabilir ve gerekirse uzak bağlantıyı kapatabilir.

Bir tavsiyede bulunmak istiyorum. Uzak bir bilgisayara bağlandığınızda, ne yaptığınızın tam olarak farkında olana kadar bu bilgisayarda Enter-PSSession çalıştırmayın. Örneğin, ComputerA için çalıştığınızı varsayalım. Server-R2'ye bağlanıyorsunuz. PowerShell isteminde şunu çalıştırırsınız:

PS C: \> Enter-PSSession Sunucusu-DC4

Server-R2 artık Server-DC4'e açık bir bağlantı içeriyor. Bu, izlenmesi zor bir "uzaktan iletişim zinciri" oluşturur. Ayrıca sunucularınız gereksiz yere aşırı yüklenmiştir. Bunu yapmanız gereken zamanlar olabilir (örneğin, Server-DC4 bir güvenlik duvarının arkasındadır ve ona doğrudan erişemezsiniz, bu nedenle Server-R2'yi aracı olarak kullanmanız gerekir). ancak Genel kuralşudur: uzaktan iletişim zincirlerinden kaçınmaya çalışın.

Uzaktan iletişim 1: n

PowerShell ile ilgili en ilginç şeylerden biri 1: n uzaktan iletişimdir. Aynı anda birden fazla uzak bilgisayara komut göndermenize olanak tanır - tam gelişmiş dağıtılmış bilgi işlem. Her bilgisayar komutu ayrı ayrı yürütecek ve sonuçları size gönderecektir. Her şey bu formdaki Invoke-Command komutu kullanılarak yapılır:

Invoke-Command -BilgisayarAdı Sunucu-R2, Sunucu-DC4, Sunucu12 -Komut (Get-EventLog Güvenliği -En Yeni 200 | Nerede ($ _. EventID -eq 1212))

Dış küme parantezleri içindeki komut, üç uzak bilgisayara da gönderilir. Varsayılan olarak, PowerShell aynı anda 32 bilgisayarla konuşabilir. 32'den fazla bilgisayar tanımlarsanız, bunlar kuyruğa alınır. Ardından, bir bilgisayar kapandığında, bir sonraki komutu yürütür. Gerçekten hızlı bir ağınız ve güçlü bilgisayarlarınız varsa, komutun ThrottleLimit parametresini kullanarak bunların sayısını artırabilirsiniz. Bu parametrenin nasıl kullanılacağını Yardım sayfasındaki Invoke-Command bölümünde okuyabilirsiniz.

Bu komutun Yardım sayfasında görmeyeceğiniz tek parametre Komut parametresidir. Daha önce gösterdiğim gibi harika çalışıyor. Komut parametresi, Yardım sayfasında belirtilen ScriptBlock parametresi için bir diğer ad veya kısa addır. Komutu kullanmak benim için daha kolay, bu yüzden ScriptBlock yerine kullanma eğilimindeyim, ancak aynı şekilde çalışıyorlar.

Invoke-Command için Help sayfasını dikkatlice okursanız, komut yerine komut dosyası belirtmenize izin veren bir seçenek de fark etmişsinizdir. FilePath parametresi, komut dosyasını uzak bilgisayarlara göndermenizi sağlar; bu, bazı karmaşık görevleri otomatikleştirebileceğiniz ve her bilgisayarın işten payını alacağı anlamına gelir.

Şimdi Bilgisayar Adı parametresine odaklanalım. Invoke-Command örnek kodunda, bilgisayar adlarının virgülle ayrılmış bir listesi vardı. Çok sayıda bilgisayarınız varsa, onlara her bağlandığınızda adlarını yazdırmak istemeyebilirsiniz. Bunun yerine, bir satırda bir bilgisayar adı içeren, virgül, tırnak işareti veya başka bir şey içermeyen bir metin dosyası oluşturabilirsiniz. Örneğin, metin dosyanızın adı webservers.txt olsaydı, aşağıdaki gibi bir kod kullanırdınız:

Invoke-Command -Command (dir) -ComputerName (Get-Content webservers.txt)

Parantezler, PowerShell'e önce Get-Content komutunu çalıştırmasını söyler; bu, parantezlerin matematikteki işleyişine benzer. Get-Content sonuçları daha sonra -ComputerName parametresinde yuvalanır.

Bilgisayar adını sorgulamak da mümkündür. Aktif Dizin ama bu daha zor. Bilgisayarı bulmak için Get-ADComputer komutunu kullanabilirsiniz, ancak Get-Content'te yaptığınız gibi komutu parantez içine koymazsınız. Neden olmasın? Get-Content basit metin dizeleri üretirken Get-ADComputer bilgisayar nesneleri üretir. -ComputerName parametresi dizeleri bekler. Bilgisayar nesneleri alacak olsaydı, onlarla ne yapacağını bilemezdi. Bu nedenle Get-ADComputer kullanmak istiyorsanız bilgisayar nesnelerinin Name özelliğinden değerleri almanız gerekir. Bunun gibi:

Invoke-Command -Command (dir) -ComputerName (Get-ADComputer -Filter * -SearchBase "ou = Satış, dc = şirket, dc = pri" | Nesne Seç - Adı Genişlet)

Parantez içinde, bilgisayar nesneleri Select-Object komutuna iletilir ve bu bilgisayar nesnelerinin Name özelliğini bulmak için -Expand parametresi kullanılır. Parantez içindeki ifadenin sonucu, bilgisayar nesneleri değil, bir dizi bilgisayar adıdır. Bilgisayar adları tam olarak -Bilgisayar Adı parametresinin ihtiyaç duyduğu şeydir.

Get-ADComputer'a aşina değilseniz, bu komutun ne yaptığını görelim. -Filter parametresi, tüm bilgisayarların sonuçlara dahil edilmesi gerektiğini belirtir ve -Search Base parametresi, PowerShell'e company.pri etki alanındaki Satış (OU) kuruluş grubundaki bilgisayarları aramaya başlaması talimatını verir. Get-ADComputer komutu yalnızca Windows Server 2008 R2'de ve Windows 7'de Uzak Sunucu Yönetim Araçları yüklendikten sonra kullanılabilir. Bunların içinden işletim sistemleri oh koşuyorsun

İçe Aktarma Modülü ActiveDirectory

dizin hizmetinin komutlarını, kullanılabilecekleri şekilde bir komut kabuğuna yüklemek için.

Fazlası var!

Bu örneklerin tümü, eşler arası uzaktan iletişim oturumları için verilmiştir. Aynı bilgisayarlara (veya bilgisayara) kısa bir süre içinde birden çok kez yeniden bağlanacaksanız, yeniden kullanılabilir, kalıcı oturumlar oluşturabilirsiniz. Bağlantı, alternatif kimlik bilgileri, varsayılan olmayan bir bağlantı noktası numarası veya ek parametreler gerektiren başka bir şey gerektiriyorsa bu çok kullanışlıdır.

Kalıcı oturumlar oluşturmak için New-PSSession komutunu kullanın, ardından bunları kolay erişim için bir değişkende saklayın. Örneğin, aşağıdaki kod, üç bilgisayarla bir uzaktan iletişim oturumu oluşturur ve bunları $ session değişkeninde saklar:

$ session = New-PSSession -BilgisayarAdı Bir, İki, Üç -Port 5555 -Credential DOMAIN \ Administrator

Komut kabuğunu kapattığınızda uzaktan iletişim oturumları otomatik olarak kapatılır, ancak o zamana kadar yerel ve uzak sistemlerde bellek ve biraz CPU yükü tüketebilirler. Bunları tam olarak kapatmak için Remove-PSSession komutunu kullanabilirsiniz:

$ seans | Kaldır-PSSession

Oturumları yeniden açmanız gerektiğinde, Invoke-Command'ı kullanabilirsiniz:

Invoke-Command -Command (dir) -Session $ oturumları

Veya Enter-PSSession'ı kullanabilirsiniz:

Enter-PSSession -Session $ oturumu

Enter-PSSession kodunda yalnızca bir uzaktan iletişim oturumunun yeniden açıldığını unutmayın. Dizin değişkeni 1, PowerShell'e Two adlı bilgisayarla bir oturumu yeniden açmasını söyler (dizin sıfır tabanlıdır).

Gördüğümüz gibi, PowerShell uzaktan iletişiminin faydaları çoktur. Kullanırsanız ufkunuzu ne kadar genişlettiğini göreceksiniz.

Don Jones ( [e-posta korumalı]) - PowerShell Teknik Eğitmeni (www.windowsitpro.com/go/DonJonesPowerShell), 35'in üzerinde kitabın yazarı. Microsoft MVP'si



Sunucuda yerel olarak bazı komutları yürütmeniz gereken zamanlar vardır (örneğin, iSCSI Başlatıcıyı yapılandırın). Buna Uzak Masaüstü aracılığıyla bağlanmak ve cmd çalıştırmak sakıncalıdır, Telnet kullanmak güvenli değildir, ssh arka plan programını sunucuya koymak değil ...

Özellikle bu gelişmiş durumlar için, Microsoft, Windows Server 2003 R2 ile başlayarak, yöneticilere yeni bir yönetim aracı sağladı - Windows Uzaktan Yönetim (WinRM), kullanarak komutları uzaktan yürütmenizi sağlar. standart araçlarİşletim sistemi, uygun güvenlik seviyesini sağlarken.

Ek programlar ve bileşenler yüklemeniz bile gerekmez - çağrılan her şey dahildir:


WinRM'yi Yapılandırma
Örnek olarak, Windows Server 2008'de WinRM'yi yapılandırma sürecini ele alacağım. Bu prosedür, örneğin, WinRM'yi yapılandırmaktan farklı değildir. Windows Vista veya Hyper-V Sunucusu.

WinRM'yi yapılandırmanın en kolay yolu, CMD yazarak hızlı yapılandırma modunu kullanmaktır:
winrm hızlı yapılandırma
ve olumlu yanıt (" y") TCP bağlantı noktası 80'i dinleyen ve istemci-sunucu iletişimi için HTTP protokolünü kullanan yeni bir dinleyici nesnesi oluşturma sorusuna" a.


Hepsi bu kadar, sunucu şu komut kullanılarak uzaktan kontrol edilebilir:
kazananlar -r: <ИМЯ_СЕРВЕРА> <КОМАНДА>
,nerede <ИМЯ_СЕРВЕРА> - bağlantının yapıldığı sunucunun adı veya IP adresi;
<КОМАНДА> yürütülecek uzak komuttur.


İstemci ve sunucu aynı etki alanının üyesi değilse, ayrıca komutun çalıştırılacağı kullanıcı adını ve parolasını da belirtmeniz gerekir:
kazananlar -r: <ИМЯ_СЕРВЕРА> -u: <ИМЯ_ПОЛЬЗОВАТЕЛЯ> -P: <ПАРОЛЬ> <КОМАНДА>

Aynı zamanda, görünen mesajın önerdiği gibi, sunucuyu güvenilir siteler listesine ekleyin veya iletişim için daha güvenilir bir protokol (HTTPS) kullanın.

Güvenilenler listesine bir ana bilgisayar eklemek için, bağlanmayı planladığınız istemcide çalıştırın:
winrm set winrm / config / client @ (TrustedHosts = " <ИМЯ_УЗЛА1> [,<ИМЯ_УЗЛА2> ]"}


Yapılandırıldıktan sonra, şu komutla mevcut dinleyiciler hakkında bilgi alabilirsiniz:
winrm numaralandırma winrm / yapılandırma / dinleyici


Mevcut dinleyiciyi aşağıdaki gibi kaldırabilirsiniz:
winrm winrm / config / dinleyici silinsin mi? Adres = * + Taşıma = HTTPS


HTTPS kullanarak WinRM'yi yapılandırma
Bazı durumlarda, istemci ile sunucu arasında güvenli komutlar göndermek için güvenilir bir kanal oluşturmanız gerekebilir. Bunun için HTTPS'yi kullanabilirsiniz.

Ancak, HTTPS destekli bir dinleyici oluşturmak için güvenilir bir Sertifika Yetkilisinden istenebilecek bir dijital sertifikaya ihtiyacınız vardır veya kendinden imzalı (kendinden imzalı) sertifikalar oluşturmak için çeşitli yardımcı programları kullanabilirsiniz, örneğin Makecert dahil Windows SDK'da Makecert'i buradan ayrıca indirebilirsiniz...

Kendinden imzalı bir sertifika oluşturmak için aşağıdaki komutu çalıştırın:
makecert -a sha1 -r -pe -n "CN = <ИМЯ_СЕРВЕРА> "-eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky exchange -sp" Microsoft RSA SChannel Şifreleme Sağlayıcısı "-sy 12 -m 12 <ФАЙЛ_СЕРТИФИКАТА>
, nerede <ИМЯ_СЕРВЕРА> istemcinin sunucuya bağlanırken kullanacağı adla eşleşir;
<ФАЙЛ_СЕРТИФИКАТА> - ortak anahtarlı sertifikanın kaydedileceği dosyanın yolu.


Özel bir anahtar sertifikası oluşturulacak ve sertifika deposuna yerleştirilecektir. yerel bilgisayar... Güvenilir kök sertifikalara ekleyin:
certutil -addstore kök cert.cer


Şimdi sertifika deposuna göz atın, orada gerekli sertifikayı bulun ve Parmak İzi (Cert Hash) not edin:
certutil -benim sakla


Son olarak, HTTPS dinleyicisini oluşturmaya başlayabilirsiniz. Komutu girin:
winrm winrm / config / Dinleyici oluştur? Adres = * + Taşıma = HTTPS @ (Ana Bilgisayar Adı = " <ИМЯ_УЗЛА> "; SertifikaParmak İzi =" <ХЭШ_СЕРТИФИКАТА> "; Bağlantı Noktası =" <ПОРТ> "}
,nerede <ИМЯ_УЗЛА> - sunucuya erişirken belirtilen ad
<ХЭШ_СЕРТИФИКАТА>- Bir önceki adımda öğrendiğiniz parmak izi (boşluksuz).
<ПОРТ> - istemcinin bağlanacağı bağlantı noktası (varsayılan olarak TCP 443).


Sunucuda Windows Güvenlik Duvarı etkinse, kuralı eklemeyi unutmayın:
netsh advfirewall güvenlik duvarı kural ekleme adı = "4443'te WinRM'ye izin ver" protokolü = TCP dir = localport'ta = 4443 eylem = izin ver

Kendinden imzalı sertifikaları kullanırken, bunu istemcideki güvenilen kök sertifikalara eklemeniz gerekecektir.

Tüm adımları tamamladıktan sonra, nihayet komutları uzaktan çalıştırabileceksiniz.

Bu yazımda sizlere merkezi olarak nasıl etkinleştirip yapılandırabileceğinizi anlatmaya çalışacağım. pencere servisi Grup İlkesi kullanan tüm hedef bilgisayarlarda Uzaktan Yönetim (WinRM). Windows Uzaktan Yönetim'in, yöneticilerin Windows istemci ve sunucu işletim sistemlerine uzaktan erişmesine ve bunları yönetmesine izin veren özel bir hizmet olduğunu hatırlatmama izin verin (ve daha önce Microsoft Sysinternals yardımcı programlarını kullandıysanız, WRM'yi sevmelisiniz).
Üzerinde aktif olmayan normal bir PC alalım Windows işlevi Uzaktan Yönetim. Komut satırına aşağıdaki komutu girin:


, WRM'nin kurulu olmadığını belirten aşağıdaki hata mesajını almalısınız:
WSMan Arızası. İstemci, istekte belirtilen hedefe bağlanamıyor. Hata numarası: - 2144108526 0x80338012

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

Winrm hızlı yapılandırma

WinRM'yi bir grup bilgisayarda yapılandırmanız gerekiyorsa, özel Grup İlkesi ayarlarını kullanabilirsiniz. İlgilendiğimiz politika şu bölümdedir: Bilgisayar Yapılandırması -> İlkeler -> Windows Bileşenleri -> Windows Uzaktan Yönetim (WinRM) -> WinRM Hizmeti. Aşağıdaki parametrelerin etkinleştirilmesi gerekir:
Dinleyicilerin otomatik yapılandırılmasına izin ver
Temel Kimlik Doğrulamaya İzin Ver


IPv4 filtre bölümünde * işaretini göstereceğiz, bu, bilgisayarın her yerden bağlantıları kabul edebileceği (ve dolayısıyla komutları kontrol edebileceği) anlamına gelir, bu, bilgisayardaki dinleyicilerin tüm IP arayüzlerinde istekleri kabul edeceği anlamına gelir.


Ardından, Bilgisayar Yapılandırması -> İlkeler -> Windows Bileşenleri -> Windows Uzak Kabuğu bölümünde öğeyi etkinleştirin:
Uzaktan Kabuk Erişimine İzin Ver


Son olarak, Windows Remote Service için başlangıç ​​türünü Otomatik olarak ayarlamanız gerekir. Grup İlkeleri'nin aşağıdaki bölümünden hizmetlerin nasıl başlatılacağını kontrol edebileceğinizi hatırlatmama izin verin: Bilgisayar Yapılandırması -> Windows Ayarları -> Güvenlik Ayarları -> Sistem Hizmetleri.


Grup İlkesi kullanarak WinRM'yi etkinleştirdikten sonra, tanıdık komutu kullanarak istemci sistemdeki hizmet durumunu kontrol edin:


WinRM hizmetinin başlangıç ​​türünün otomatik olarak ayarlandığından emin olun. Aslında, başlangıç ​​türü "gecikmeli otomatik" olsa da; Varsayılan olarak, WinRM hizmeti için bir başlatma gecikmesi ayarlanır (HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ WinRM dalında DelayedAutoStart parametresi = 1).

Artık Grup İlkesi kullanılarak WinRM etkinleştirildikten sonra, bu sistem WinRS komutları kullanılarak uzaktan kontrol edilebilir. Aşağıdaki komut, uzak sistemde çalışan bir komut istemi açacaktır:

Kazananlar –r: computer01 cmd

Komut istemi penceresi göründükten sonra, yerel olarak çalışıyormuş gibi uzak bilgisayarda herhangi bir komutu yürütebilir ve yürütmenin sonucunu görebilirsiniz. WinRM'nin ana bilgisayarınızda da etkinleştirilmesi gerektiğini unutmayın.

PowerShell'de uzaktan iletişim kurma (bölüm 1)

PowerShell kullanarak uzaktan iletişimi etkinleştirmek için bazı yapılandırmaların yapılması gerekir. Bu ayarların sayısı işletim sistemine, ağ ortamına, güvenlik gereksinimlerine (ve Tanrı bilir daha neler neler) bağlıdır. Oldukça fazla ayar olduğu için en önemlilerinden bahsetmeye çalışacağım. Hadi gidelim…

Uzaktan kumandayı etkinleştirme

Uzak bir bilgisayarı kontrol etmek için bu bilgisayarda uzaktan iletişime izin vermek gerekir. Bunun istisnası, tüm uzaktan yönetim özelliklerinin varsayılan olarak etkinleştirildiği Windows Server 2012'dir. Diğer tüm işletim sistemleri için şunlara ihtiyacınız vardır:

1. WinRM hizmetini başlatın ve otomatik çalıştırmaya alın;
2. Kontrol isteklerini dinleyecek bir dinleyici oluşturun;
3. WS-Management trafiğine izin vermek için güvenlik duvarında bir kuralı etkinleştirin.

Tek bir bilgisayarı yapılandırmanın en kolay yolu Enable-PSRemoting cmdlet'ini kullanmaktır. Gerekli tüm eylemleri gerçekleştirecek ve ayrıca varsayılan oturum yapılandırmalarını kaydedecektir. Onay istemlerini bastırmak için -force parametresini ekleyebilirsiniz. Konsol, yönetici haklarıyla başlatılmalıdır, aksi takdirde bir hata oluşturulur.

Etki alanı ortamında, PS Remoting'i yapılandırmak için Grup İlkesi'ni kullanabilirsiniz.

Bilgisayar Yapılandırması \ İlkeler \ Windows Ayarları \ Sistem Hizmetleri bölümünde, Windows Uzaktan Yönetim (WS-Management) ilkesini etkinleştirin. WinRM hizmetinin başlangıç ​​modunu ayarlar.

Bilgisayar Yapılandırması \ Yönetim Şablonları \ Windows Bileşenleri \ Windows Uzaktan Yönetim (WinRM) \ WinRM Hizmeti bölümünde, 5985 numaralı bağlantı noktasında (varsayılan HTTP bağlantı noktası) bir dinleyici oluşturan "Dinleyicilerin otomatik yapılandırılmasına izin ver" ilkesini etkinleştirin. Ek olarak, hangi IP'den bağlantıları kabul edebileceğinizi belirleyebilirsiniz. IP ile filtrelemeye gerek yoksa, herhangi bir adresten gelen bağlantıları kabul etmek anlamına gelen * işaretini koymanız yeterlidir.

Ardından Bilgisayar Yapılandırması \ Windows Ayarları \ Güvenlik Ayarları \ Gelişmiş Güvenlikli Windows Güvenlik Duvarı \ Gelen Kuralları'na gidin ve yeni bir kural oluşturun. Öntanımlı'yı seçin ve listeden Windows Uzaktan Yönetimi'ni seçin.

Aralarından seçim yapabileceğiniz iki çalışma modu olduğunu unutmayın - Standart ve Uyumlu. İlk durumda, WinRM tarafından varsayılan olarak kullanılan 5985 numaralı bağlantı noktası, ikinci bağlantı noktası 80'de (WinRM'in eski sürümleriyle uyumluluk için) açılacaktır. Her ikisi de varsayılan olarak seçilidir.

Bilgisayarlar Arasında Güveni Yapılandırma

NS uzak bağlantı PowerShell, bilgisayarlar arasında karşılıklı kimlik doğrulaması kullanır. Bu, bir bağlantı kurmadan önce uzak makinenin kimliğini doğrulaması gerektiği anlamına gelir. Basitçe söylemek gerekirse, SRV1 adlı bir bilgisayara bağlanırsanız, bağlantıyı kurmadan önce (SRV1) size gerçekten olduğunu kanıtlaması gerekir, aksi takdirde bağlantı kurulmayacaktır.

Bilgisayarlar aynı etki alanının üyesiyse veya farklı ancak güvenilen etki alanlarında bulunuyorsa, etki alanı hizmetleri tarafından karşılıklı kimlik doğrulama gerçekleştirilir. Ana şey, bilgisayar adının bir IP adresine çözümlenmesi ve Active Directory'deki bilgisayar adıyla eşleşmesidir.

Dikkat: bağlanırken, geçerli bilgisayar adları sağlamanız gerekir, ör. Active Directory'de listelendiği gibi. Bilgisayar yerel bir etki alanına aitse, bilgisayar adını belirtmeniz yeterlidir, örneğin SRV1... Başka bir etki alanından bir bilgisayar adı belirtmek için tam etki alanı adını (FQDN) belirtmelisiniz - SRV1.contoso.com... Bir IP adresi veya başka bir DNS adı (örneğin, bir CNAME takma adı) belirtirseniz, karşılıklı kimlik doğrulama çalışmayacaktır.

Bilgisayarlardan biri veya her ikisi etki alanına ait değilse, karşılıklı kimlik doğrulama için iki seçenek vardır: uzak makineyi güvenilir ana bilgisayarlar (Güvenilir Ana Bilgisayarlar) listesine ekleyin veya SSL kullanın.

Güvenilir Ana Bilgisayarlar

Güvenilir Ana Bilgisayarlara bir bilgisayar eklemek daha basittir ancak daha az güvenlidir. Güvenilir Ana Bilgisayarlardaki bilgisayarlar için karşılıklı kimlik doğrulama aslında devre dışıdır. Bu nedenle, bu yöntemi çok dikkatli kullanmaya değer.

PowerShell'i kullanarak güvenilir ana bilgisayarlara bir bilgisayar ekleyebilirsiniz, böylece bir güvenilir ana bilgisayar listesi oluşturmak ve buna bilgisayar SRV1'i eklemek için şu komutu kullanın:

Set-Item WSMan: \ localhost \ Client \ TrustedHosts -Value SRV1.contoso.com

Birden fazla bilgisayar eklerken adları virgülle ayrılabilir. Yalnızca adı değil, bilgisayarın IP adresini de belirtmesine izin verilir. Joker karakterler de desteklenir. Örneğin, * .contoso.com değerini veya istisnasız olarak tümünü belirterek contoso.com etki alanındaki tüm bilgisayarları güvenilen ana bilgisayarlara ekleyebilirsiniz:

Set-Item WSMan: \ localhost \ Client \ TrustedHosts -Value *

Bilgisayar adını mevcut bir güvenilir siteler listesine eklemek için, önce geçerli değeri bir değişkende saklamanız ve ardından değeri, geçerli ve yeni değerleri içeren virgülle ayrılmış bir listeye atamanız gerekir. Örneğin, mevcut güvenilir siteler listesine SRV2 bilgisayarını eklemek için aşağıdaki komutu kullanın:

$ curr = (Get-Item WSMan: \ localhost \ Client \ TrustedHosts) .value
Set-Item WSMan: \ localhost \ Client \ TrustedHosts -Value ″ $ curr, SRV2.contoso.com ″

Peki, şu komutla güvenilir düğümlerin listesini görebilirsiniz:

Get-Item WSMan: \ localhost \ Client \ TrustedHosts

Ayrıca, TrustedHosts'a eklemek için şunları kullanabilirsiniz: Grup ilkesi... Bilgisayar Yapılandırması \ Yönetim Şablonları \ Windows Bileşenleri \ Windows Uzaktan Yönetim (WinRM) \ WinRM İstemcisi bölümünde, "Güvenilen Ana Bilgisayarlar" ilkesini etkinleştirin ve bilgisayar adlarını veya IP adreslerini virgülle ayırarak ekleyin. Joker karakterler desteklenir.

Not: TrustedHost'lar GPO aracılığıyla yapılandırılırsa, PS'den değiştirilemezler. Aynısı diğer tüm PS Remoting ayarları için de geçerlidir.

SSL kullanarak bağlanmak en güvenli uzaktan iletişim seçeneğidir, ancak diğer yöntemlerle karşılaştırıldığında kurulumu oldukça zordur, bu nedenle biraz uğraştıracaktır.

Öncelikle bu yöntemi kullanmak için bağlanacağımız makine için dijital bir SSL sertifikasına ihtiyacımız var. Sertifika almak ayrı bir konu, üzerinde durmayacağız. Bir test ortamında, Windows SDK'da bulunan Makecert yardımcı programını kullanacağım ve kendinden imzalı bir sertifika oluşturacağım:

makecert -a sha1 -r -pe -n ″ CN = wks8 ″ -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky exchange -sp ″ Microsoft RSA SChannel Şifreleme Sağlayıcısı ″ -sy 12 -m 12 ″ C: \ myssl.cer ″

Bu komut, bir yıllık bir SSL sertifikası oluşturacak ve bunu yerel bilgisayarın sertifika deposuna yerleştirecektir. Lütfen, bağlantı komutunda belirteceğiniz ad için sertifikanın verilmesi gerektiğini unutmayın.

Sertifika alındıktan sonra Güvenilir Kök Yetkilisine eklenmelidir. Bunu yapmak için sertifikayı açın ve "Sertifikayı yükle" düğmesine tıklayın.

Sertifika Alma Sihirbazı başlar. "Yerel bilgisayar" deposunun yerini belirtiyoruz.

Depolama alanı olarak Güvenilen Kök Sertifika Yetkilileri'ni seçin.

Sertifikamız artık güvenilir. Tekrar açın ve "Kompozisyon" sekmesinde sertifika parmak izini (CertificateThumbprint) buluyoruz. Panoya kopyalıyoruz.

Artık HTTPS için bir dinleyici oluşturabilirsiniz. PowerShell konsolunu açın ve şu komutu girin:

Yeni-WSManInstance winrm / config / dinleyici -SelectorSet @ (Adres = ′ * ′; Taşıma = ′ HTTPS ′) -ValueSet @ (HostName = ′ wks8 ′; CertificateThumbrint = ′ xxx ′)

CertificateThumbrint alanına, önceki paragrafta kopyalanan sertifikanın parmak izini girin.

Yeni dinleyici için Windows Güvenlik Duvarı istisnaları (etkinleştirilmişse) manuel olarak yapılandırılmalıdır, bunlar otomatik olarak oluşturulmaz. Bu nedenle, 5986 ve 443 numaralı TCP bağlantı noktalarında gelen trafik için yeni bir kural oluşturalım:

Yeni-NetFirewallRule -DisplayName ″ Windows Uzaktan Yönetim (HTTPS) ″ -Direct Inbound -Protocol TCP -LocalPort 5986,443 -Action Allow -Enabled True

Hangisini tercih ederseniz, bir kural oluşturmak için grafik ek bileşenini veya netsh komut satırı yardımcı programını da kullanabilirsiniz.

Ardından, bağlanacağımız SRV1 bilgisayarına gidin. Kendinden imzalı bir sertifika kullandığım için, bunun güvenilir kök sertifikalara ve istemciye eklenmesi gerekecek. myssl.cer sertifika dosyasını SRV1'e kopyalayın ve şu komutla kurun:

certutil -addstore kök C: \ myssl.cer

İşte bu, kurulum tamamlandı. Şimdi bağlanabilirsiniz. wks8 üzerinde şu komutla interaktif bir oturum açalım:

Enter-PSSession -BilgisayarAdı wks8 -Kimlik bilgisi wks8 \ kirill -UseSSL

Lütfen SSL ile bağlanırken kimlik bilgilerinizi girmeniz ve ayrıca bağlantı türünü belirtmeniz gerektiğini unutmayın. Sonra her şey her zamanki gibi.

Kontrolü devre dışı bırak

SSL aracılığıyla bağlanırken, sertifikanın güvenilir bir sertifika yetkilisi tarafından verildiği ve özellikle bu makine için verildiği doğrulanır. Basit bir ifadeyle, sertifikadaki ad, connect komutunda belirtilen adla eşleşmeli ve sertifikayı veren, güvenilir kök CA'lar listesinde olmalıdır. Kontrol, bu koşullarla bir tutarsızlık bulursa, bağlantı gerçekleşmez.

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

SkipCACheck - sertifikayı verenin doğrulamasını iptal eder;
-SkipCNCheck - bilgisayar adı eşleşmesini iptal eder.

Bu parametreleri kullanarak örneğin aşağıdaki gibi yeni bir oturum oluşturabilirsiniz:

$seçenek = Yeni-PSSessionOption -SkipCACheck -SkipCNCheck
Enter-PSSession -ComputerName wks8 -SessionOption $ seçeneği -Credential wks8 \ kirill -UseSSL

Ancak bu durumda, SSL sertifikalarının anlamı kaybolur ve daha sonra Thrusted Hosts'ı kullanmak daha kolaydır. Ancak böyle bir fırsat var ve bunu bilmeniz gerekiyor.

Ek ayarlar

İkinci sürümden başlayarak, WinRM varsayılan olarak HTTP için 5985 numaralı bağlantı noktasını ve HTTPS için 5986 numaralı bağlantı noktasını dinler. Daha eski sürümlerle uyumluluk için (veya güvenlik duvarında ek bağlantı noktaları açılmasını önlemek için), ayrıca geleneksel 80 ve 443 bağlantı noktalarında dinleyicileri etkinleştirebilirsiniz. HTTP için:

Set-Item WSMan: \ localhost \ Service \ EnableCompatibilityHttpListener $ true

Ve HTTPS için:

Set-Item WSMan: \ localhost \ Service \ EnableCompatibilityHttpsListener $ true

Aynısı grup ilkeleri kullanılarak da yapılabilir. Bunu yapmak için Bilgisayar Yapılandırması \ Yönetim Şablonları \ Windows Bileşenleri \ Windows Uzaktan Yönetim (WinRM) \ WinRM Hizmeti bölümünde "Uyumluluk HTTP Dinleyicisini Aç" ve "Uyumluluk HTTPS Dinleyicisini Aç" ilkelerini etkinleştirin.

Varsayılan bağlantı noktalarını değiştirebilir ve standart olmayan herhangi bir bağlantı noktasını, örneğin bağlantı noktası 8080'i dinlemeyi belirtebilirsiniz:

Set-Item WSMan: \ localhost \ dinleyici \ dinleyici * \ bağlantı noktası -Value 8080

Not: dinleyicileri standart olmayan bağlantı noktalarına kurmak güvenliği biraz artıracaktır. Ancak, varsayılan bağlantı noktasını değiştirerek, her bağlandığınızda manuel olarak belirtmeniz gerekeceğini unutmayın.

Bu kadar. Makalede, uzak oturumların konfigürasyonlarını, uç noktaların oluşturulmasını ve küçük şeyler üzerinde başka bir şeyi ele alacağız 🙂

Okuma: 839

kullanarak tüm hedef bilgisayarlarda Windows Uzaktan Yönetim (WinRM) hizmetini merkezi olarak nasıl etkinleştirip yapılandırabileceğinizi anlatacağım. GrupGüvenlikPolitika... Windows Uzaktan Yönetim, yöneticilerin Windows istemci ve sunucu işletim sistemlerine uzaktan erişmesine ve bunları yönetmesine olanak tanıyan özel bir hizmettir.

ile normal bir PC alalımpencereler7, etki alanına dahil olan ve işlevin etkinleştirilmediğipencerelerUzakYönetmek... Komut satırına aşağıdaki komutu girin:

Yönetici haklarıyla komut satırını başlatalım.

WRM'nin kurulu olmadığını belirten aşağıdaki hata mesajını almalısınız:

WSMan Arızası. İstemci, istekte belirtilen hedefe bağlanamıyor. Hata numarası: - 2144108526 0? 80338012

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

winrm hızlı yapılandırma

Bu, tek bir yükleme seçeneğini düşündüm iş istasyonu.

WinRM'yi bir grup bilgisayarda yapılandırmanız gerekiyorsa, özel Grup İlkesi ayarlarını kullanabilirsiniz. İş istasyonlarının bulunduğu kapsayıcı için bir grup ilkesi oluşturalım. Bilgisayar Yapılandırması- Politikacılar - Yönetim Şablonları-> Windows Bileşenleri - Windows uzaktan kumandası... Aşağıdaki parametreleri etkinleştiriyoruz:

Uzak hizmet istemcisi Windows yönetimi.

Windows Uzaktan Yönetim Hizmeti

IPv4 filtre bölümünde belirtmek *, bu, bilgisayarın her yerden bağlantıları kabul edebileceği (ve dolayısıyla komutları kontrol edebileceği) anlamına gelir.

Bölümde daha fazla Bilgisayar Yapılandırması- Politikacılar - YönetimŞablonlar - Windows Bileşenleri - Windows Uzak Kabuğu

Öğeyi etkinleştiriyoruz:

Uzaktan Kabuk Erişimine İzin Ver - Etkin

Hizmetlerin nasıl başlayacağını Grup İlkeleri'nin aşağıdaki bölümünden kontrol edebilirsiniz: Bilgisayar Yapılandırması - İlkeler - Windows Yapılandırması - Güvenlik Ayarları - Sistem Hizmetleri.

Windows Uzaktan Yönetim Hizmetini (WM-Management) açın ve aşağıdaki ayarları yapılandırın, ekran görüntüsüne bakın.

Her şey hazır. İş istasyonunu yeniden başlatıyoruz ve Grup İlkesi kullanarak WinRM'yi etkinleştirdikten sonra, tanıdık komutu kullanarak istemci sistemdeki hizmetin durumunu kontrol edin:

WinRM, winrm / config / dinleyiciyi numaralandır

WinRM hizmetinin başlangıç ​​türünün otomatik olarak ayarlandığından emin olun. Aslında, başlangıç ​​türü "gecikmeli otomatik" olsa da; Varsayılan olarak, WinRM hizmeti için bir başlatma gecikmesi ayarlanır (HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ WinRM dalında DelayedAutoStart parametresi = 1).

Grup İlkesi uygulandıktan sonra bu sistem WinRS komutları kullanılarak uzaktan kontrol edilebilir. Aşağıdaki komut, uzak sistemde çalışan bir komut istemi açacaktır:

kazananlar –r:<имя_компьютера>cmd

Komut istemi penceresi göründükten sonra, yerel olarak çalışıyormuş gibi uzak bilgisayarda herhangi bir komutu yürütebilir ve yürütmenin sonucunu görebilirsiniz. WinRM'nin ana bilgisayarınızda da etkinleştirilmesi gerektiğini unutmayın.

Benim durumumda, test makinesinin adı alektest4

kazananlar -r: alektest4 cmd

navigasyon gönderisi

Telegram istemcisini kullanırken bir proxy kullanın ((Roskomnadzor tarafından engellendi, vpn veya proxy kullanın)).