Günümüzde pek çok şirket için kullanıcı deneyimi son derece önemlidir. Kullandıkları bilgisayarlar, internet bağlantıları, erişmek istedikleri programlara erişim hızları toplamda üretkenliklerini arttıran faktörler olduğu için biz bilgi sistemleri sorumluları bu konuda yoğun mesai harcamaktayız. Bu noktada pek çok şirketin sahip olduğu bilgi sistemleri iş gücü ve bütçeleri oranınca çözümler kullanılır. Her şirketin iş ihtiyacı farklı olmak ile aslında ortak iş ihtiyaçları da söz konusudur. Ancak her şirketin bütçesi farklı olduğu için sektörde benzer iş ihtiyaçları için farklı çözümler görebilirsiniz. Örneğin kimi şirketler her kullanıcısına laptop verir, kullandığı tüm programları ve verileri bu laptop üzerinde saklar ve 3. Parti yedekleme yazılımları ile bu verilerin güvenliğini sağlar. Ancak bu senaryoda özellikle verilerin dağınık olmasından kaynaklı hem yedekleme maliyetleri çok yüksek olur hem de veri güvenliğini sağlamak bir hayli zordur. Zaten pek çok veri sızıntısının bu şekildeki son kullanıcı bilgisayarlarından yapıldığını biliyoruz. Bir diğer senaryo ise RDS olarak isimlendirdiğimiz şirketinizdeki merkezi sunuculara Windows Server tarafından bütünleşik olarak sunulan RDS rolünü yükleyerek çalışanlarınızın iş yüklerini bu sunucular üzerinde oturum sanallaştırma, uygulama sanallaştırma veya masa üstü sanallaştırma teknolojileri ile çözebilirsiniz.
Bu ve benzeri merkezi çalışma ortamları için uzaktaki veya şirket içerisindeki kullanıcılarınızın oturum, uygulama veya masa üstü sanallaştırma iş ihtiyaçları için Microsoft Windows Server Remote Desktop Services kullanabilirsiniz.
Öncelikle RDS teknolojileri için kullandığımız terimleri ve topolojiyi görerek konuya başlayabiliriz.
Temel olarak RDS bize yukarıdaki gibi tanımladığımız kullanıcıların uygun ve desteklenen donanımlar üzerinden RDP Protokolü ile RDS sunucularımıza bağlanmasını sağlar. Burada lokal Windows kullanıcıları ve Workgroups ortamları kullanılabileceği gibi merkezi yönetim ve güvenlik iş ihtiyaçları nedeni ile sektörde genelde Active Directory Domain ortamlarında bu tür kurulumları görebilirsiniz.
Bu nedenle yukarıdaki şekildeki kullanıcılar genelde Active Directory kullanıcıları olmaktadır. Kullanılan cihazlar ise ister domain üyesi ister Workgroups olsun temel olarak güvenlik dışında bir sorun teşkil etmez. Bağlandıkları sunucular ise genelde bir Active Directory domain ortamına katılmış RDS sunucularıdır.
Burada temel 3 çözüm sunulmaktadır.
Session Virtualization – Oturum Sanallaştırma
Temel olarak kendi bilgisayarınızdan bir RDS sucusuna RDP protokolü aracılığı ile uzak bağlantı yaptığınız senaryodur. Karşınıza bir masa üstü gelir, yani siz aslında bir session yani uzak oturum açıyorsunuz, ancak açtığınız bu uzak oturum başka bir sunucuda sanallaştırılarak size sunulduğu için buna oturum sanallaştırılması denir. Ama sektörde RDS olarak bilinir, oysaki RDS servisin genel adı olup sunduğu hizmetlerden sadece birisi oturum sanallaştırmadır.
Oturum sanallaştırma sektörde RDS’ in en yaygın kullanılan özelliğidir.
Application Virtualization – Uygulama Sanallaştırma
Bu senaryoda ise kullanıcı kendi bilgisayarı üzerinden bir web sitesine erişir ve bu web sitesi üzerinde kendisi için yayınlanmış uygulamaları listeler. Daha sonra kendi bilgisayarında bir ofis programı olmasa bile örneğin Word belgelerini açıp düzenleyebilir ya da kendi bilgisayarında bir muhasebe programı yüklü olmasa bile yayınlanmış muhasebe programına tıkladığı zaman kendi bilgisayarında bu programı kullanamaya başlar.
Örneğin yukarıdaki ekranda istediğiniz ve tabi ki uyumlu RDS sunucusu üzerinde yüklü uygulamaları publish yani yayınlayarak kullanıcılarınıza kendi bilgisayarlarından ilgili programları kullanma deneyimi sunabilirsiniz.
Peki örneğin bilgisayarınızda bir Office programı yüklü olmadan nasıl oluyor da Word belgelerini düzenleyebiliyorsunuz? Ya da bir muhasebe programı yüklü olmadan buradaki bir muhasebe programının linkine tıklayınca program açılabiliyor?
Aslında uygulama sanallaştırma kavramının altında yatan teknoloji bu uygulamanın RDS sunucu üzerinde açılması ama size sadece bu görüntünün iletilmesinden ibaret. Yani program aslında sizin bilgisayarınızda değil RDS sunucusu üzerinde çalışıyor ve onun kaynaklarını kullanıyor.
Desktop Virtualization – Masa Üstü Sanallaştırma
Masa üstü sanallaştırma ise VDI olarak bildiğimiz teknolojidir. Bu teknoloji aslında session host yani oturum sanallaştırmaya çok benzer, çünkü bu teknolojide de kullanıcınız uzak bağlantı ile sunucu üzerinde yeni bir oturum açar, yani kullanıcı deneyimi birbirine çok benzemektedir. Fakat temel fark session host çözümünde tüm oturumlar aynı OS katmanında çalışır. Yani bir Windows server 2019 sunucusu üzerinde aynı anda örneğin 5, 10 veya daha çok kişi çalışır. Bunun en temel sorunu olası bir kullanıcının aşırı kaynak tüketmesi durumunda tüm sunucu bundan etkilenir.
Masa üstü sanallaştırmada ise her kullanıcıya özel bir işletim sistemi tanımlanır. Yani kullanıcının bağlandı oturum ortak değil kendisine ait atanmış kaynakları olan bir sanal masa üstüdür. Bir nevi bir Windows server üzerinde örneğin 10 kullanıcınız var ise 10 tane Windows 10 açıyor gibi düşünebilirsiniz.
Aslında bu üç senaryo içerisinde en konforlusu, en güvenilir olanı VDI olmak ile özellikle her kullanıcı için ayrı bir işletim sistemi çalıştırılması kaynaklı daha çok sistem gücüne ihtiyaç vardır. Özellikle CPU veya RAM konusunda çok fazla fark olmasa bile özellikle VDI alt yapıları için hızlı SSD ve flash diskler gerektiği için genelde her şirket her ne kadar VDI kullanmak isterse de session host ile ilerlemektedir.
Peki temel 3 çözümü gördükten sonra ben bu makalemde session host çözümü yani sektördeki en yaygın kullanımı ile ilerleyeceğim.
Öncelikle amacımız bir session host yani oturum sanallaştırma olacak ise bunun için gereksinimleri ve bu yapının bileşenlerini bilmemiz gerekli.
Yukarıdaki şekle baktığımız zaman temel olarak kullanacağımız bileşenleri görebiliriz.
Remote Desktop Web Access
Web browser üzerinden remote app veya rds erişimlerini sağlayan roledür.
Remote Desktop Gateway
Eğer ortamınızı dış dünyaya açmak isterseniz mutlaka kullanmanız gereken bir roledür. Temel olarak RDWeb Access her ne kadar 80 veya 443 nolu port üzerinden hizmet verse de bir kullanıcı bu web sitesi üzerinden tıkladığı uygulama linkleri veya rdp bağlantı linkleri 3389 nolu portu kullanarak connection broker yani bağlantı dağıtım sunucusuna bağlanır. Bu nedenle dış dünyaya 3389 nolu portu açmadan RDWeb için 80 veya 443 nolu portu açmanız çözüm olmaz.
Özetle dış dünyaya bu yapıyı açmak istiyor ancak 3389 nolu portu dış dünyaya açmak istemiyorsanız bir nevi güvenlik bağlantı için kurulacak roledür.
Remote Desktop Connection Broker
Gelen bağlantı isteklerini üzerinde tanımladığımız kurallar çerçevesinde arkasındaki Remote Desktop Virtualization Host veya Remote Desktop Session Host sunucularına yönlendiren bağlantı sunucusudur.
Remote Desktop Virtualization Host
Sanal masa üstü çözümü için kurmanız gereken roledür.
Remote Desktop Session Host
Oturum sanallaştırma için kurmanız gereken roledür.
Remote Desktop Licensing
Ortamın lisanslanması için kullanılan roledür. Bu role yüklendikten sonra geçerli lisanslarınız yüklenerek sorunsuz bir şekilde kullanıma başlayabilirsiniz.
Eğer connection broker sunucusu HA yani cluster kurulacak ise mutlaka bir SQL Server ihtiyacı olur, yani bu sayede büyük yapılar için sunucu rollerinden en az ikişer tane kurarak yüksek erişilebilir yapılar kurulabilir.
Yukarıda farklı bir şekil ile tüm bileşenleri göstermeye çalıştım. Aslında grafik aynı yapıyı anlatıyor. Ek olarak burada File Storage gibi bir kavram görebilirsiniz, bunun temel sebebi ise eğer birden çok session host server olan bir yapı kurmanız durumunda connection broker her bağlantı için yük dengelemek adına kullanıcıları farklı host sunuculara atabilir, bu durumda SH1 sunucusunda oturum açan birisi ikinci bağlantıda örneğin ertesi gün geldiğinde SH2 nolu sunucuya login olur ise yeni bir masa üstü açılacağı için böyle bir senaryoda Roaming Profile çözümü şarttır. Bu nedenle de ortak bir file storage ihtiyacı vardır. Bunun için bir file server ve paylaşım alanı yeterlidir.
Peki bu kadar kavram ve bileşen tanımından sonra isterseniz kurulum adımlarına geçelim.
Kurulum için temel iki önemli konu bulunmaktadır.
1 – Kapasite
2 – Mimari
Kuracağınız yapı tek bir sunucu ve üzerinde gerekli olan tüm roller ise genelde kapasite üzerine çok kafa yormadan kurulum yapıp kullanıcıları bağlayıp kullanılan kaynağa göre arttırma veya azaltma yöntemi kullanılabiliyor. Ancak banka, telekom, gsm, büyük şirketlerde ise temel olarak profilleme yapılır. Yani hangi tip kullanıcıdan kaç adet var, her bir profil için gerekli olan CPU, RAM ve disk alanı hesaplanır, bu sayede toplam kapasite ortaya çıkar. Eğer 100, 200, 500, 1000 veya fazla kullanıcı var ise zaten bunlar için gerekli olan kapasite tek bir sunucu ile sağlanamayacağı için birden çok sunucu olması gerekir. Bu durumda RDWeb, Connection broker, RDGW, session host gibi roller için birden çok sunucu kurulması gerekir. Bu durumda da mimari büyük önem kazanır.
Biz bu makalemizde temel kurulum ile ilerleyeceğiz.
Öncelikle kapasite çalışmasını yaptıktan sonra uygun bir fiziksel veya sanal sunucuya Windows Server 2019 kuruyoruz.
Daha sonra server manager ekranını açıyoruz ve “Add roles and features” linkine tıklıyoruz.
Karşımıza ilk olarak yukarıdaki gibi bir ekran gelir. Bu ekran varsayılan özellik ekleme ekranı olup bu sihirbazın kullanımı hakkında bilgi verir. Bu ekranı Next diyerek geçebiliriz.
İkinci ekranda ise ne tür bir role kurulumu yapacağımızı seçeceğiz. DHCP, DNS, CA, AD gibi role bazlı kurulum yapabileceğimiz gibi şu anda olduğu gibi Remote Desktop Services yüklemesi yapabiliriz. İkinci seçeneği seçip ilerliyoruz.
Bu bölümde temel iki seçeneğimiz bulunmaktadır. Eğer büyük bir organizasyon için farklı sunucularda farklı rollerin olacağı bir yapı kuracaksanız ilk seçenek ile ilerliyoruz.
Gerek ilk seçenek gerekse ikinci seçenek, hangisini seçerseniz seçin ikinci soru oturum sanallaştırma mı yoksa sanal masa üstü yani VDI kurulumu mu yapacağınızdır. Ben oturum sanallaştırmayı seçiyorum.
Gördüğünüz gibi oturum sanallaştırmayı seçtikten sonra, standart kurulum adımlarını takip ettiğim için her bir rolü tek tek bana soracak.
Geldiğimiz noktada önce RD Connection Broker rolünü seçiyoruz, sonra RDWeb Access, Session host derken kurulumu tamamlayabiliriz. Ancak burada olduğu gibi eğer elinizde tek bir sunucu var ise standart kurulum mantıklı değildir. Çünkü zaten alternatif bir sunucu olmadığı için gereksiz bu ekranlarda zaman kaybedersiniz. Eğer birden çok sunucu var ise bu kuruluma sunucuları seçip devam edebilirsiniz. Ben tekrar ilk seçenek olan Standart ve Quick ekranından hızlı kurulum ile devam edeceğim.
Bu ekrana tekrar geri dönüp Quick Start’ ı seçiyorum.
Standart veya Quick fark etmeksizin sorduğu soruyu hatırlayalım. Oturum sanallaştırma mı yoksa masa üstü sanallaştırma mı? Ben oturum sanallaştırmayı seçiyorum.
Evet gördüğünüz gibi sol bölümde çok seçenek yok, yani tek bir sunucumuz olduğu için tüm rolleri bu sunucu üzerine kuracak. Sunucuyu da kendisi seçmiş durumda. Eğer server manager üzerinde birden çok sunucu ekli ise burada birden çok sunucu görebilirsiniz. Yine isterseniz bunlara ayrı ayrı RDS Session Host kurulumu yapabilirsiniz. Ancak birden çok sunucu var ise temel olarak standart kurulum ile ilerlemek daha esnek seçim imkanları sunması açısından doğru olur.
Yukarıdaki ekranda 3 role’ ünde aynı sunucuya kurulacağını görebiliyoruz. Aşağıdaki kutucuğu işaretleyip Deploy diyebiliriz.
Bundan sonra sunucu bir defa kapanacak ve açıldıktan sonra aşağıdaki kurulumları tamamlayacaktır.
Kısa bir süre sonra yükleme tamamlanacaktır.
Ardından server manager ekranını açalım ve RDS bölümüne gelelim.
Burada yüklü olan rolleri gri ile, yüklenmemiş olan rolleri ise üzerinde yeşil bir “+” işareti ile görebiliyoruz.
Eğer dış dünyadan bir erişim ihtiyacı var ise RDGW rolünü ayrı bir sunucuya kurabilirsiniz. Benzer şekilde birden çok RDS sunucusu var ise hepsine hizmet etmesi için bir RD Lisans sunucusu kurabilirsiniz. Ancak eğer başka bir sunucunuz yok ise RD GW’ i aynı sunucuya kurmanız tavsiye edilmez çünkü bu güvenlik zafiyetine neden olabilir.
Lisans role kurulumunu da artı tuşuna basarak hızlıca yapabilirsiniz.
Lisans sunucu rolü olmadan kurduğunuz bu yapı 120 gün boyunca ücretsiz olarak size hizmet verecektir. 120 günün sonunda ise bağlantı kabul etmeyecektir. Bu durumda bu yapı için uygun kullanıcı veya makine bazlı RDS CAL lisansı almanız gereklidir. Bu lisans Windows CAL lisansından farklı olup onun yerine geçmez. Veya Windows CAL, RDS CAL olarak kullanılamaz.
Şu anda yapımız uzak bağlantı kabul etmeye hazır. Ancak birkaç küçük ayar daha gerekli.
İlk olarak bu sunucu için hangi lisans sunucusu ve hangi lisans tipini kullanacağını ayarlamamız gerekli.
Bunun için eğer tek bir sunucunuz var ise local gpo kullanabilirsiniz, eğer çok fazla RDS sunucusu var ise merkezi GPO kullanabilirsiniz.
Bunun için local veya merkezi gpo da aşağıdaki yolu izleyin
Computer Configuration – Policies – Administrative Templates – Windows Components – Remote Desktop Services – Remote Desktop Session Host – Licensing
Burada temel iki ayarımız olacak.
Kullanacağınız lisans modelini seçiyorsunuz.
Burada ise lisans sunucusu için FQDN bilgisi giriyoruz. Sunucu ip adresi veya sunucu ismi de girebilirsiniz.
Bu ayarları yaptıktan sonra artık lisans olmasa bile sunucu 120 gün sorunsuz çalışır.
Peki kurulum sonrası temel ayarlar nelerdir?
En sık sorulan soruların başında bu sunucuya kimler bağlanabilir oluyor. Bu tür sorular için yine server manager üzerinden rds bölümüne geliyoruz.
Burada hızlı kurulum gerçekleştirdiğimiz için bize hazır bir collection oluşturdu. Collection’ ın amacı bir RDS sunucusu üzerinde birden farklı ortam oluşturmanızı sağlar. Burada Edit Properties diyerek ayarlara girebilirsiniz.
En temel ayarları buradan yapabilirsiniz. Eğer sunucu ayarlarını yapmak istiyorsanız ise bu durumda Deployment seçeneklerini değiştirmeniz gerekli.
Bu bölüme gelip Edit Deployment diyebilirsiniz.
Yukarıdaki ayarlar sadece ilgili collection ile ilişkili olup, birden çok collection oluşturabildiğiniz gibi bu ayarlar sunucu ile ilgili ayarlardır. Eğer RDGW kuracaksanız bu bölümden yapılandırmasını yapabilirsiniz. Lisans ayarları, RD Web Access URL adresi ve sertifikalar gibi temel bilgilere ve ayarlara bu ekrandan ulaşabilirsiniz.
Unutmayın, yönlendirme, session time out veya benzeri ayarlar collection ayarları olup ilk ekrandan ilerleyerek bu ayarlara ulaşabilirsiniz.
Evet, temel olarak bir RDS sunucu kurulumu ve session host yapısının nasıl kurulacağını ve ilk ayarların nasıl yapılacağından bahsettik. Umarım faydalı bir makale olmuştur. Bir sonraki makalemizde görüşmek üzere.