Windows Sunucusunda Uzak Masaüstü Hizmetleri (RDS) Grubunu Yapılandırma


Bu kılavuz, Windows Server'da Uzak Masaüstü Hizmetleri (RDS) rolüne dayalı bir terminal sunucusu grubunun nasıl kurulacağını, yapılandırılacağını ve sürdürüleceğini gösterir. Makale, Uzak Masaüstü Hizmetlerini bir Active Directory etki alanında Windows Server 2022, 2019 veya 2016 üzerinde dağıtmanıza yardımcı olacaktır.

Uzak Masaüstü Hizmetleri (RDS) Bileşenleri Mimarisi

Windows Server'daki RDS rolü aşağıdaki bileşenleri içerir:

  • Uzak Masaüstü Oturum Ana Bilgisayarı (RDSH) - RDS oturum ana bilgisayarları. Bunlar, kullanıcı uygulamalarının üzerinde çalıştığı bir RDS grubunun ana işgücüdür;

  • Uzak Masaüstü Bağlantı Aracısı (RDCB) - bir RDS bağlantı aracısı. Bir RDS grubunu yönetmek, iş yükünü dağıtmak, kullanıcıları oturumlarına yeniden bağlamak, RDS toplama ayarlarını depolamak ve yayınlanan RemoteApps için kullanılır;

  • Uzak Masaüstü Ağ Geçidi (RDGW) - İnternetten RDS grubuna güvenli erişim sağlar;

  • RD Web Erişimi (RDWA) - uzak masaüstlerine ve RemoteApps'e erişim için bir web arabirimi;

  • Uzak Masaüstü Lisansı (RD Lisansı) — RDS lisanslarını (CAL'ler) yönetmek için bir lisanslama hizmeti.

Küçük RDS dağıtımımızda, aşağıdaki rollere sahip yalnızca üç Windows Server ana bilgisayarı vardır:

  • mun-rds1.a-d.site

    — RDSH

  • mun-rds2.a-d.site

    - RDSH

  • mun-rdsman.a-d.site

    - RDSH, RDWA, RDCB ve RD Lisanslaması

En basit durumda, Bağlantı Aracısı ve RDS Web Erişimi olmadan Uzak Masaüstü Oturum Ana Bilgisayarı (RDSH) rolüyle bağımsız bir sunucu dağıtabilirsiniz.

Bir RDS grubu oluşturmak için ön koşullar:

  1. Tüm RDS ana bilgisayarlarına aynı Windows Server sürümünü kurun, yapılandırın ve AD etki alanına katılın;

  2. ADUC konsolunu (dsa.msc) açın ve RDSH rolüne sahip tüm ana bilgisayarları aynı Active Directory OU'suna (Kuruluş Birimi) taşıyın. Böylece GPO kullanarak RDS ayarlarını uygulamak daha kolay olacaktır;

  3. RDSH sunucuları için bir Active Directory etki alanı güvenlik grubu oluşturun (örneğin, mun-rdsh) ve tüm ana bilgisayarları buna ekleyin;

  4. RDS kullanıcı profillerini (veya gezici profilleri) depolamak için Kullanıcı Profili Disklerini (UPD) kullanmak istiyorsanız, bir dosya sunucusunda paylaşılan bir ağ klasörü oluşturmalısınız (paylaşılan klasörü Windows çalıştıran bir Dosya Sunucusu Yük Devretme Kümesine yerleştirmeniz önerilir) Sunucu). mun-rdsh grubu için paylaşılan klasörde Tam Denetim izinleri verin.

Windows Server'da Yeni Bir RDS Dağıtımı Oluşturma

Sunucu Yöneticisi GUI'sini kullanarak bir RDS yapılandırmasının nasıl oluşturulacağını ve yapılandırılacağını görelim.

Sunucu Yöneticisi'ni açın ve istediğiniz tüm RDS sunucularını konsola ekleyin. Tüm Sunucular -> Sunucu ekle'yi tıklayın.

Sunucu Yöneticisi menüsünü tıklayın ve Rol ve Özellik Ekle -> Uzak Masaüstü Hizmetleri kurulumu -> Standart dağıtım -> Oturum tabanlı'yı seçin dağıtım.

Hızlı Başlangıç modu, tüm RDS rollerini tek bir sunucuya dağıtmak için kullanılır. Bir RDS grubu, tüm RDS rollerini (RD Oturum Ana Bilgisayarı, RD Web Erişimi ve RD Bağlantı aracısı) çalıştıran yalnızca bir sunucuya sahip olabilir. Ancak bu yapılandırma, Windows Server Uzak Masaüstü Hizmetlerinde hataya dayanıklılık ve iş yükü dengelemesi sağlamaz.

Ardından, ana bilgisayarlarınıza hangi RDS rollerini atamak istediğinizi belirtin. RDS grup oluşturma sihirbazında karşılık gelen roller için sunucuları seçin. Benim durumumda, aşağıdaki RDS yapılandırmasını oluşturmak istiyorum:

  • RD Bağlantı Aracı -

     mun-rdsman
  • RD Web Erişimi —

    mun-rdsman
  • RD Oturumu barındırıcıları —

    mun-rdsman

    ,

    mun-rds1

    ,

    mun-rds2

RDS rollerini başka herhangi bir yapılandırmadaki sunucular arasında dağıtabilirsiniz.

Gerekirse hedef sunucuyu otomatik olarak yeniden başlat'ı işaretleyin ve Dağıt'ı tıklayın. RDS rolleri tüm sunuculara yüklenene kadar bekleyin.

Böylece, RDS grubunuz oluşturulur.

Bir sonraki adım, RDS lisanslama sunucusunu kurmak ve yapılandırmaktır. Grubunuzdaki sunuculardan birine RD Lisansı rolünü yükleyebilir veya alanınızdaki mevcut bir RDS lisanslama sunucusunu kullanabilirsiniz. RD Lisanslama rolünün nasıl kurulacağı, yapılandırılacağı ve etkinleştirileceğiyle ilgili ayrıntılı kılavuzu kontrol edin.

RDS dağıtımınızı yönetmek için Sunucu Yöneticisi -> Uzak Masaüstü Hizmetleri'ni açın. Geçerli RDS grubu yapılandırması, Genel Bakış sekmesinde görüntülenir.

RDS grubu ayarlarını değiştirmek için Dağıtıma Genel Bakış bölümünde Görevler -> Dağıtım Özelliklerini Düzenle'yi seçin.

Burada değiştirebilirsiniz:

  • RD Ağ Geçidi ayarları;

  • Lisans sunucusu adresi ve RDS CAL türü (kullanıcı başına/cihaz başına);

  • RD Web Erişimi URL'sini görüntüleyin;

  • RDS için SSL sertifikaları ekleyin (kılavuzda bu adımı atlayacağız).

Çiftliği RDCB ana bilgisayarı aracılığıyla yönetebilirsiniz. RDS grubu yapılandırması, SQL Server veritabanında depolanır. İsterseniz, RDS Bağlantı Aracısı rolünü ve yapılandırmasını manuel olarak başka bir sunucuya taşıyabilirsiniz.

Hataya dayanıklı bir Uzak Masaüstü Hizmetleri grubu oluşturmak için RD Bağlantı Aracısı rolü için yüksek kullanılabilirlik sağlamanız gerekir. Bu, bağlantı aracısı yapılandırmasını depolayan paylaşılan bir SQL Server veritabanıyla farklı sunucularda birden fazla RDCB örneği (Aktif/Etkin) çalıştırarak elde edilir. RDCB SQL veritabanını yüksek düzeyde kullanılabilir yapmak için SQL Server Always On high-availability grubunu kullanabilirsiniz. Daha önce, yüksek düzeyde kullanılabilir bir RDS Bağlantı Aracısının nasıl yapılandırılacağına ilişkin ayrıntılı bir kılavuz yayınlamıştık.

Windows Server'da Uzak Masaüstü Hizmetleri Koleksiyonları Oluşturma

Bir sonraki adım, RDS oturumları koleksiyonları oluşturmaktır. Uzak Masaüstü koleksiyonları, bir RDS grubundaki ana bilgisayarları ayrı gruplara ayırmaya veya farklı kullanıcı grupları için farklı ayar kümeleri ve kullanılabilir Uzak Uygulamalar oluşturmaya izin verir.

Koleksiyonlar'a gidin ve Düzenle -> Oturum Koleksiyonu Oluştur'u seçin.

Burada yapmanız gerekenler:

  1. Bir RDS koleksiyonu adı belirtin:

     rds-Mun-Managers

    ;

  2. Koleksiyon kullanıcılarına hangi RDS ana bilgisayarlarının hizmet vereceğini seçin (bir RDSH sunucusu bir koleksiyona ait olabilir, aynı koleksiyonda farklı Windows Server sürümlerine sahip ana bilgisayarların olması önerilmez);

  3. Kullanıcı Grupları sekmesinde, koleksiyona bağlanmasına izin verilen kullanıcı gruplarını belirtin. Etki alanı kullanıcılarını gruplardan çıkarın ve grubunuzu ekleyin (

    mun-Managers

    );

  4. Kullanıcı profillerini depolamak için UPD vhdx dosya biçimini kullanmak istiyorsanız, Kullanıcı Profili Diski sekmesinde Kullanıcı profili disklerini etkinleştir'i işaretleyin. Kullanıcı profili disklerinin konumu alanında, paylaşılan klasörünüze giden UNC yolunu belirtin (örneğin,

    \\mun-fs01\munrds_upd

    ), UPD formatındaki kullanıcı profili dosyalarının depolanacağı ve maksimum disk boyutu (varsayılan olarak 20 GB). UPD kullanırken, bir kullanıcı herhangi bir RDS toplama ana bilgisayarında oturum açarsa, kullanıcının paylaşılan profili her zaman yüklenir;

    Bu makalede, Windows Server RDS'deki Kullanıcı Profili Diskleri hakkında daha fazla bilgi edinin.

  5. Yeni bir RDS koleksiyonu oluşturmak için Oluştur'u tıklayın;

  6. Kullanıcı profili şablonunu içeren UPD dosyasının (UVHD-template.vhdx) belirtilen dizinde oluşturulduğundan emin olun.

RDS koleksiyonu ayarlarını yapılandırmak için koleksiyonu seçin ve Görevler -> Özellikleri Düzenle'yi tıklayın.

Burada temel toplama seçeneklerini (ad, açıklama, erişim grupları) ve diğer bazı ayarları değiştirebilirsiniz.

Oturum sekmesinde, etkin olmayan (boşta) RDP oturumları için yeniden bağlanma/otomatik bağlantı kesme seçeneklerini yapılandırabilirsiniz (RDP Oturumları için Zaman Aşımlarını Yapılandırma hakkında daha fazla bilgi edinin).

Güvenlik sekmesinde, RDP oturumları için güvenlik (Anlaşma, RDP Güvenlik düzeyi veya SSL/TLS) ve şifreleme (Düşük, Yüksek, İstemci uyumlu veya FIPS uyumlu) ayarlarını seçebilirsiniz. Burada, RDP için Ağ Düzeyinde Kimlik Doğrulamayı (NLA) etkinleştirebilir/devre dışı bırakabilirsiniz.

RDP bağlantılarını güvenli hale getirmek için SSL/TLS sertifikalarını nasıl kuracağınız aşağıda açıklanmıştır.

Yük Dengeleme sekmesinde, çiftliğinizdeki RDS ana bilgisayarı Göreceli Ağırlığı değiştirebilirsiniz. Bir koleksiyondaki sunucu özellikleri (RAM, CPU) çok farklıysa, performansı düşük olan ana bilgisayarlar için daha düşük bir ağırlık belirlemeniz gerekir. Bundan sonra RDCB, kullanıcı oturumlarını ağırlıklarına bağlı olarak RDS ana bilgisayarları arasında dağıtacaktır.

İstemci Ayarları sekmesi, kullanıcıların hangi yerel aygıtları RDP oturumlarına yönlendirmesine izin verileceğini belirtmenize olanak tanır. Örneğin, yazıcıların, sürücülerin, ses cihazlarının veya panonun yerel bir kullanıcı bilgisayarından RDS oturumuna yeniden yönlendirilmesini etkinleştirebilir veya devre dışı bırakabilirsiniz.

Kullanıcı Profili Diskleri sekmesinde, UPD ayarlarında ince ayar yapabilirsiniz. Belirli klasörleri veya dosyaları eşitleme dışında bırakabilirsiniz. Paylaşılan bir ağ klasöründeki UPD profil boyutunun küçültülmesine izin verir ve bir profilin daha hızlı yüklenmesini sağlar (bir kullanıcı oturum açtığında ağ üzerinden paylaşılan klasörden yüklendiğini unutmayın).

UPD'yi yapılandırmak ve kullanmak, gezici profillerden veya klasör yeniden yönlendirmeden daha kolaydır. Aynı UPD profilini birden fazla RDS koleksiyonunda kullanamazsınız.

Bir kullanıcı UPD diskinin boyutunu azaltmak için yerleşik PowerShell cmdlet'ini kullanabilirsiniz.

Resize-VHD

, Hyper-V sanal VHDX disklerini yeniden boyutlandırmak için kullanılır.

RDS koleksiyonunun HOST SUNUCULARI bölümü aracılığıyla herhangi bir RDSH sunucusunu bakım moduna (RDS Boşaltma Modu) geçirebilirsiniz. Bunu yapmak için bir sunucuyu tıklayın ve Yeni bağlantıya izin verme'yi seçin. Ardından Bağlantı Aracısı, RD ana bilgisayarına yeni kullanıcı oturumları göndermeyecektir. Bu modda, kullanıcıları etkilemeden Windows güncellemelerini veya güncelleme uygulamalarını sunucuya yükleyebilirsiniz.

Burada ayrıca bir koleksiyona bir RDS ana bilgisayarı ekleyebilir/kaldırabilirsiniz.

RD Oturum Ana Bilgisayarı sunucusu başarısız olursa, bu kılavuzu izleyerek sunucuyu Uzak Masaüstü Hizmetleri dağıtımınızdan uygun şekilde kaldırabilirsiniz.

Uzak Masaüstü Hizmetlerinde RemoteApps Nasıl Yayınlanır?

RemoteApps, RDS sunucularında kullanıcılar için yayınlanan programlardır. RemoteApps sayesinde, bir terminal RDSH sunucusunda kurulu uygulamaları yerel bir kullanıcı bilgisayarında çalışıyormuş gibi kullanabilirsiniz. Kullanıcı, Windows Server RDS masaüstünün tamamını görmez ve yalnızca bir yöneticinin kendisi için yayınladığı uygulamalarla çalışır. Kullanıcının bilgisayarında sadece RDS üzerinde çalışan programın penceresi görüntülenecektir.

RemoteApps oluşturmazsanız, kullanıcılar doğrudan Windows Server masaüstünde çalışır. Bu nedenle, bir kullanıcının ihtiyaç duyabileceği uygulama kısayollarını C:\Users\Public\Desktop klasörüne kopyalamayı unutmayın. Bu klasördeki dosyalar, tüm kullanıcıların masaüstlerinde görüntülenecektir. RDSH'nize bir MS Office 365 yüklemek istiyorsanız, Office'in SharedComputerLicensing modunda dağıtılması gerektiğini unutmayın.

RemoteApps, RDS toplama ayarlarında oluşturulur. REMOTEAPP PROGRAMLARI bölümünde Görevler -> Uzak Uygulama Programlarını Yayınla'yı seçin.

Windows, geçerli RD ana bilgisayarında yüklü olan tüm uygulamaları listeleyecektir. Bunlardan birini seçebilirsiniz. Listede ihtiyacınız olan bir uygulama yoksa, ancak diğer RDS ana makinelerinde yüklüyse, Ekle'yi tıklayın ve uygulamanın yürütülebilir dosyasının (exe, bat, cmd, vb.) tam yolunu belirtin.

RemoteApp'i yayınlayın.

Ardından, RemoteApp ayarlarında ek uygulama seçenekleri belirleyebilirsiniz.

  • Yayınlanmış bir RemoteApp'i RD Web Erişimi web arabiriminde göstermek isteyip istemediğiniz;

  • Uygulama için başlangıç seçeneklerini (bağımsız değişkenler) ayarlayın (Komut Satırı Parametreleri -> Her zaman aşağıdaki komut satırı parametrelerini kullanın);

  • Kullanıcı Ataması sekmesinde, uygulamayı bir kullanıcının mı yoksa grubun mu çalıştıracağına ilişkin kısıtlamalar da ayarlayabilirsiniz.

Yayınlanan RemoteApp'in bir simgesini değiştirmek isterseniz, sunucuda RDS Bağlantı Aracısı rolüyle aşağıdaki klasörü açın:

C:\Windows\RemotePackages\CPubFarms\rds-Mun-Managers\CPubRemoteApps

Uygulama simgesini başka bir ICO dosyasıyla değiştirin.

Ardından bir kullanıcı, RD Web Erişimi'nden bir RemoteApp programı çalıştırabilir (

https://mun-rdsman.a-d.site/RDWeb

) veya özel bir *.RDP dosyası kullanarak.

SSO (Tek Oturum Açma) kullanarak RDS Web Erişiminde şeffaf bir kimlik doğrulaması yapılandırabilirsiniz.

Yayınlanmış bir RemoteApp programını çalıştırmak için RDP dosyasına aşağıdaki satırları eklemeniz gerekir:

remoteapplicationmode:i:1
remoteapplicationname:s:putty
remoteapplicationprogram:s:"C:\Tools\putty.exe"
disableremoteappcapscheck:i:1
alternate shell:s:rdpinit.exe

RDS grubunuzu rahat bir şekilde kullanmak için bazı faydalı ipuçları:

  • RDWeb Erişimi rolü için HTML5 desteğini yapılandırabilirsiniz. Kullanıcıların herhangi bir tarayıcı veya işletim sistemini kullanarak RDP istemcisi olmadan bile RDS sunucularına bağlanmasına olanak tanır;

  • RD Web Erişimi sunucusunda, süresi dolmuş bir kullanıcı parolasını değiştirmek için bir bağlantı yayınlayabilirsiniz (varsayılan olarak, NLA etkinse, süresi dolmuş bir Active Directory kullanıcı parolasıyla bir RDSH'de kimlik doğrulaması yapamazsınız);

  • Bir RDP oturumunda parolanın nasıl değiştirileceğine ilişkin bir kullanıcı kılavuzu;

  • Bir yönetici, bir RDS sunucusundaki bir kullanıcı oturumunun masaüstüne bağlanmak/görüntülemek için RD Oturumu Gölge bağlantılarını kullanabilir;

  • Hangi RDS sunucularının belirli bir kullanıcının oturumlarına sahip olduğunu hızlı bir şekilde bulmak için PowerShell'i kullanabilirsiniz:

    Import-Module RemoteDesktop
    Get-RDUserSession -ConnectionBroker mun-rdsman.a-d.site | where {$_.UserName -eq "a.muller"} | Select HostServer
  • RDP bağlantı günlüklerini görüntülemek için PowerShell betiklerini kullanabilirsiniz;

  • Ek güvenlik sağlamak için, üçüncü taraf araçları kullanarak Windows RDS ana bilgisayarlarınızda kullanıcılar için iki faktörlü kimlik doğrulamayı (2FA) etkinleştirebilirsiniz.

PowerShell Kullanarak Uzak Masaüstü Hizmetleri Grubu Nasıl Dağıtılır?

Bir RDS grubunun yapısını açıkça görüyorsanız, PowerShell kullanarak RDS yapılandırmanızı hızlı bir şekilde dağıtabilirsiniz.

Yönetilen RDS ana bilgisayarlarını yeniden başlatmanız gerekeceğinden, başka bir sunucuda bir RDS grubu oluşturmak için aşağıdaki PowerShell komutlarını çalıştırmak daha iyidir.

RDS grubunuzdaki sunucu adlarını ayarlayın. Bu örnekte, RDCB ve RDS lisanslama rollerini ayrı sunuculara kuracağım (daha sonra yüksek düzeyde kullanılabilir bir RDCB yapılandırmasının etkinleştirilmesi önerilir).

$RDSH1 = "mun-rds1.a-d.site"
$RDSH2 = "mun-rds2.a-d.site"
$RDSCB = "mun-rdcb.a-d.site"
$RDSGW = "mun-rdsgw.a-d.site"
Import-Module RemoteDesktop

RDS rollerini sunuculara yükleyin:

Add-WindowsFeature -ComputerName $RDSH1, $RDSH2 -Name RDS-RD-Server -IncludeManagementTools
Add-WindowsFeature -ComputerName $RDSCB -Name RDS-Connection-Broker -IncludeManagementTools
Add-WindowsFeature -ComputerName $RDSGW -Name RDS-Web-Access, RDS-Gateway -IncludeManagementTools

Tüm ana bilgisayarları yeniden başlatın:

Restart-Computer -ComputerName $RDSH1,$RDSH2,$RDSCB,$RDSGW

Yeni bir RDSessionDeployment örneği oluşturun:

New-RDSessionDeployment -ConnectionBroker $RDSCB -SessionHost $RDSH1,$RDSH2 -Verbose

Çiftliğinize RDWA ve RDGW sunucuları ekleyin:

Add-RDServer -Server $RDSGW -Role RDS-WEB-ACCESS -ConnectionBroker $RDSCB
Add-RDServer -Server $RDSGW -Role RDS-GATEWAY -ConnectionBroker $RDSCB -GatewayExternalFqdn "rds.a-d.site"

Grubunuzdaki RDS rollerini ve ana bilgisayar adlarını listeleyebilirsiniz:

Get-RDServer -ConnectionBroker $RDSGW

Add-WindowsFeatures cmdlet'ini kullanarak RDS Lisanslama rolünü kurun:

Add-WindowsFeature -ComputerName $RDSCB -Name RDS-Licensing, RDS-Licensing-UI

Bir PerUser RDS lisanslama modu ayarlayın:

Invoke-Command -ComputerName $RDSCB -ScriptBlock {Set-RDLicenseConfiguration -Mode PerUser -LicenseServer $RDSCB -ConnectionBroker $RDSCB}
Add-RDServer -Server $RDSCB -Role RDS-LICENSING -ConnectionBroker $RDSCB

Add-ADGroupMember kullanarak bir etki alanı güvenlik grubuna bir lisanslama sunucusu ekleyin:

Add-ADGroupMember "Terminal Server License Servers" -Members "mun-rdcb$"

RDS için bir sertifikanız varsa, bunu grup yapılandırmanıza ekleyebilirsiniz (RDS sunucunuz için ücretsiz Let's Encrypt SSL sertifikasını kullanabilirsiniz):

$Path = "C:\ps\RDSCert.pfx"
$Password = ConvertTo-SecureString -String "setCertificPAssw00rd11-" -AsPlainText -Force
Set-RDCertificate -Role RDGateway -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDWebAccess -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDPublishing -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDRedirector -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force

Yüklü SSL sertifikaları hakkında bilgi almak için:

Get-RDCertificate

Ardından, RDS koleksiyonları oluşturabilirsiniz:

$CollectionName = "ITdept"
New-RDSessionCollection -CollectionName $CollectionName -SessionHost $RDSH1,$RDSH2 -ConnectionBroker $RDSCB -CollectionDescription “IT department management collection”

Grupların RDS sunucularına erişimine izin vermek için:

$UserGroup =@("WOSHUB\mun-admins","WOSHUB\mun-devops")
Set-RDSessionCollectionConfiguration -CollectionName $CollectionName -UserGroup $UserGroup

Bir RemoteApp programı yayınlamak için:

New-RDRemoteapp -Alias GoogleChrome -DisplayName GoogleChrome -FilePath "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -ShowInWebAccess 1 -CollectionName $CollectionName -ConnectionBroker $RDSCB

Bu makalede, Sunucu Yöneticisi grafik arayüzü ve PowerShell kullanılarak Windows Server 2019/2022'de Uzak Masaüstü Hizmetleri grubunun nasıl kurulacağını ve yapılandırılacağını ele aldık. RD Web Erişimi ve RD Ağ Geçidi rolleri burada açıklanmamaktadır. Bu rolleri nasıl yapılandıracağımızı ilerideki makalelerde göstereceğiz.

İlgili makaleler