Terminal Service denince akla daha çok Citrix (www.citrix.com) çözümleri gelse de Microsoft bu konuda Windows NT 4.0 dan günümüze oldukça aşama kaydetmiştir. Kaldı ki çok yakın bir zamanda bu iki sektör devi ortak bir çalışmanın altına imza atarak 2006 yılında çıkması planlanan Longhorn platformunda ürünlerinin entegrasyonuna karar kılmışlardır.
Microsoft tarafında Terminal Service teknolojisinin gelişimine bakarsak NT 4.0 dan başlayan bir süreç karşımıza çıkar. İlk olarak Windows NT 4.0 Terminal Server Edition adıyla farklı bir versiyon olarak son kullanıcıya sunulan bu teknoloji Windows 2000 ve 2003 Server işletim sistemleriyle entegre olarak sunulmuştur.
Peki nasıl çalışır bu terminal service ; Uzaktan yönetim yada uygulama paylaştırma amacıyla kullanılan Terminal Service, RDP (Remote Desktop Protocol) üzerinden güvenli bir kanal yardımıyla Server? in kaynaklarını (CPU,RAM,HDD) kullanarak açılan yeni bir oturumun görüntülenmesini sağlar.
Şekil ? 1 Client-Server Bağlantısı
RDP Nedir?
Client bilgisayarın Terminal Server üzerinde oturum açabilmesi için kullandığı RDP, default olarak TCP 3389 portunu kullanan bir protokoldür. Client tarafındaki mouse ve klavye girdilerini Server? a, Server üzerindeki grafiksel imajları da client tarafına aktarmakla görevlidir. Bu işlemi yaparken sanal kanalları (virtual channel) kullanır. 64000 adet sanal kanal desteği bulunmaktadır. Bu kanallar RDP? nin fonksiyonelliğini arttırmak amacıyla kullanılır. Ses kartı desteği, mouse ve klavye driver? larının kullanılması, uzakta dosya kesme yapıştırma gibi özellikler sanal kanallar yardımıyla gerçekleşir. Bu sanal kanalların kullanılabilmesi için Server tarafında çalıştırılabilir dosyalar, client tarafında ise bazı DLL dosyalarının çalışması gerekir. (Windows NT 4.0 Terminal Service Edition? da bu özellik bulunmamaktadır.)
Windows NT 4,0 Terminal Service Edition ile birlikte RDP 4.0 sürümü kullanılırken Windows 2000 Server ile RDP 5.0 ve Windows Server 2003 ile RDP 5.2 sürümü yeni özellikler eklenerek karşımıza çıkmıştır. (Windows XP üzerinde kullanılan sürüm ise RDP 5.1? dir.)
Sınırlı yeteneklere sahip olan RDP 4.0 dan sonra RDP 5.0 ile birçok yeni özellik son kullanıcıyla buluşturulmuştur.
Encryption : 128 bitlik RC4 şifreleme tekniği ile iletişim şifrelenmekte ve güvenlik sağlanmaktadır.
Bandwidth Reduction : Client-Server arasındaki bantgenişliğinin düşük olduğu durumlarda performansı arttırmak için kullanılan bir özelliktir. Client ? Server arasında transfer edilmesi gereken data miktarını düşürmek esasına göre çalışır ve bir oturum boyunca sürekli kullanılacak grafiklerin cache? lenmesi yardımıyla sağlanır.
Roaming Disconnect : Kullanıcının Terminal Server üzerinde açmış olduğu oturumun herhangi bir nedenle disconnect olması durumunda yeniden bağlantı isteği geldiğinde ?ki bu istek farklı bir bilgisayardan da yapılabilir- Terminal Server daha önce kesintiye uğramış olan oturumu açacaktır.
ClipBoard Mapping : Kullanıcılara, lokal bilgisayarları ile Terminal Server üzerinde açmış oldukları oturumdaki uygulamalar arasında kesme, kopyalama ve yapıştırma eylemlerini gerçekleştirme fırsatı veren özelliktir.
Print Redirection : Bu özellik sayesinde kullanıcı Terminal Server oturumundan lokal bilgisayarındaki printer? a yazdırma işlemi gönderebilir.
Virtual Channels : Daha öncede tanımladığımız gibi client-server arasında iletişimin sağlandığı, aygıtlarla terminal oturumu arasında etkileşimi sağlayan sanal iletişim kanallarıdır.
Remote Control : Bu özellik ile Terminal Server üzerinde açılmış bir oturumu kullanarak diğer Terminal oturumlarını uzaktan yönetebilmek mümkündür.
Network Load Balancing : Birden fazla Terminal Server? in networke tek bir server gibi hizmet etmesi ile hata töleransı sağlanmış olur.
Yukarıda sıraladığımız yeni özellikler RDP 5.0 ile birlikte Terminal Server genel performans değerlendirmesine önemli katkılar sağlamıştır. Aşağıdaki şekil RDP 4.0 ve 5.0 kullanımının bir test ortamında verdiği sonuçları grafiksel olarak sunmaktadır. (Daha ayrıntılı karşılaştırma verileri için http://www.microsoft.com/windows2000/techinfo/howitworks/terminal/rdpfandp.asp adresini ziyaret edebilirsiniz.)
Şekil ? 2 RDP 4.0 ve RDP 5.0 Performans Karşılaştırması
RDP 5.2 yani Windows Server 2003 ile birlikte gelen en önemli özellikleri sıralarsak;
24 bit Color Support : Terminal Server üzerinde açılan oturumlarda renk derinliği 24 bit olarak konfigüre edilebilir.
Local Resources : Yalnızca Print Redirection değil disklerin ve seri portların da Terminal oturumunda kullanılması mümkün olabilir.
Smart Card Logon : Kimlik doğrulama aşamasında Smart Card kullanımına destek verir. Ancak öncelikle client tarafında smart card tanıtımı yapılmalıdır. Windows 2000,XP ve CE işletim sistemlerinde bu özellik kullanılabilir.
Time Zone : Bu özellik farklı time zone? ları kullanan bilgisayarların aynı terminal server üzerinde oturum açabilmeleri için kullanılır. Başlangıç olarak kapalıdır. Client makinalar üzerinde time zone? ların doğru bir şekilde konfigüre edilmiş olması gerekir.
Session Directory : Çoklu terminal server çalışan ortamlarda kullanıcı oturumlarının indekslenmesi suretiyle disconnect olan oturumlara yeniden bağlanabilmeyi mümkün kılan bu özelliği yazının ilerleyen bölümlerinde daha ayrıntılı bir şekilde inceleme fırsatımız olacak.
Bu yeni özellikleri kullanabilmek için client tarafında RDP 5.1 (XP? de default olarak var.), server tarafında da RDP 5.2 çalışmak zorundadır.
http://www.microsoft.com/windowsxp/remotedesktop/ RDP 5.1? i download etmek için bu linki kullanabilirsiniz yada XP yükleme CD? si içinden de bu yazılıma ulaşabilirsiniz.
Genel çalışma prensibi ve süreç içinde yaşanan yeniliklerin ardından Windows 2003 Server üzerinde çalıştıracağımız Terminal Service? in gereksinimleri ve performans değerlendirmesine göz atalım.
Terminal Service? in çalışacağı Server, özellikle CPU,RAM ve Disk performansı açısından son derece önem arz etmektedir. Windows 2000 Server? in piyasaya çıktığı dönemlerdeki donanım seçeneklerini günümüzle kıyasladığımızda arada inanılmaz farklılıklar görebiliriz. Bu durumda Windows 2003 Server üzerinde çalışan Terminal Service bize daha fazla performans getirecektir.
Şekil ? 3 Windows 2000-2003 Terminal Service Karşılaştırması
Yukarıdaki tabloda, Microsoftun gerçekleştirdiği testlerle iki farklı platform arasındaki desteklenebilecek maksimum kullanıcı sayısı gösterilmektedir. Ancak bu farklılık tamamen donanımdaki gelişmeden ileri gelen bir farklılıktır. Aynı donanım üzerinde, Windows 2000 bir sistemle Windows 2003 bir sistem arasında performans farklılığı olduğunu söyleyemeyiz.
Yine tabloda iki yeni tanımlama karşımıza çıkıyor. ?Knowledge Worker? ; daha çok uygulama çalıştıran ve buna paralel olarak daha çok kaynağa ihtiyaç duyan kullanıcı profili iken ?Data Entry Worker? ise tam tersine minimum düzeyde kaynak tüketen, çok daha az uygulama çalıştıran kullanıcı profili olarak tanımlanabilir. Bu noktada bir hatırlatma yapmak gerekir. Tarifini yaptığımız bu iki profil, test ortamında daha gerçekçi değerlere ulaşmak için kullanılan profillerdir. Gerçek hayatta kuracağımız Terminal Service içeren sistemler için bu iki profilin ortalamasına uygun profile sahip olacağımızı düşünerek hareket etmek daha mantıklı olacaktır.
Aşağıdaki tablo ise Windows 2003 Server üzerinde çalışan bir Terminal Service için RAM gereksinimlerini göstermektedir.
|
|
Knowledge Workers
|
Data Entry Workers
|
|
Kullanıcı Başına (MB)
|
21
|
10
|
|
Sistem (MB)
|
128
|
|
Toplam RAM (MB)
|
Sistem + ( Kullanıcı Sayısı x Kullanıcı başına RAM miktarı)
|
Şekil ? 4 Windows 2003 Terminal Service RAM Gereksinimleri
Genel çalışma prensibi ve gereksinimleri sıraladıktan sonra Windows 2003 platformunda çalıştıracağımız Terminal Service? in kurulum aşamasına geçebiliriz. Yazımızın başında belirttiğimiz gibi Terminal Service? i hem uzaktan yönetim hemde uygulama paylaştırmak için kullanabiliriz. Windows 2000 Server üzerinde her iki amaç için de kurulum yapmak gerekiyorken, Windows 2003 Server üzerinde Uzaktan Yönetim amacıyla kullanmak istediğimizde kuruluma ihtiyaç duymuyoruz. Tek yapmamız gereken Şekil-5 de görüldüğü gibi Remote Desktop bağlantı isteğine izin vermek olacaktır.
Şekil ? 5 Windows 2003 Server? da Remote Desktop? ı aktif hale getirmek
Bu noktada akla, neden iki farklı kurulum opsiyonuna ihtiyaç duyuluyor sorusu gelebilir. Teknik açıdan hiç bir farklılık olmasa da önemli bir fark olduğunu söylemeliyiz; Lisans yani para...
Yeri gelmişken Terminal Server lisanslama ile ilgili bir paragraf açalım;
Uzaktan yönetim modu lisans gerektirmez ve aynı anda yalnızca 2 oturum açılmasına izin verir. Ancak amaç uygulama dağıtmak olunca kullanıcı sayısı artacağı için daha fazla oturum açmaya ihtiyaç duyacağız. Bu durumda 120 günlük deneme süresinden sonra ?ki bu süre Windows 2000 Terminal Service? i için 90 gündür- oturum açacak her kullanıcı veya bağlantı yapacak her aygıt başına Terminal Server CAL (Client Access License) temin etmemiz gerekecektir. Terminal Server? in deneme süresinden sonra da hizmet verebilmesi için ortamda Lisans dağıtımından sorumlu olan bir Lisans Server olmalıdır. Bu hizmeti verecek bilgisayara Terminal Server Licensing hizmeti kurulmalıdır ve online olarak etkinleştirilmelidir. Ardından bağlantı yapan her kullanıcıya yada aygıta Lisans Server tarafından bir lisans atanacaktır. Terminal Server Lisanslama ile ilgili daha ayrıntılı bilgi için http://go.microsoft.com/fwlink/?LinkID=26220 adresini ziyaret edebilirsiniz.
Şekil ? 6 Windows 2003 Server? da Terminal Server ve Licensing Kurulum Ekranı
Şekil ? 7 Windows 2003 Server? da Terminal Server Kurulumu
Şekil-7 ye bakarsanız Windows 2003 Server üzerinde Terminal Server kurulumu esnasında karşımıza çıkan kurulum modu ve lisanslama ile ilgili uyarıları görebilirsiniz.
Şekil ? 8 Windows 2000 Server? da Terminal Server Kurulumu
Yukarıdaki şekilde de görüldüğü gibi Windows 2000 Server üzerinde Terminal Server kurulumu hem uzaktan yönetim hem de uygulama dağıtma olmak üzere iki farklı amaç için de kurulmak zorunda.
Kurulum aşamasında dikkat etmemiz gereken yerlere kaldığımız yerden devam edelim. Windows 2003 Server üzerinde Terminal Server kurulumunu tamamladıktan sonra yalnızca lokal Administrators grubunun terminal oturumu açma hakkı vardır. Diğer kullanıcılarada bu hakkı vermek için Built-in gruplardan biri olan ?Remote Desktop Users? grubunu kullanabiliriz.
Kurulum sihirbazının bir sonraki aşamasında güvenlikle ilgili olan ve uygulama uyumluluğu konusunda karşımıza iki farklı seçenek sunan bir ekranla karşılaşırız. Buradaki seçimimiz Terminal Server üzerinde daha eski işletim sistemleri için tasarlanmış uygulamaların çalışıp çalışmayacağını belirler. Eğer ?Full Security? seçimi yapılırsa eskiye dönük tam uyumluluk söz konusu olmayacak ve bazı uygulamalar, özellikle registry erişimi gerektiren uygulamalar Terminal Server üzerinde çalışmayacaktır. Relaxed Security ise eski platformlar için tasarlanmış ve registry erişimi gerektiren uygulamaların Terminal Server üzerinde çalışmasını sağlamak için seçilmelidir.
Şekil ? 9 Windows 2003 Server? da Terminal Server Kurulumu-2
Terminal Server kurulumunun ardından artık Server? a yapabileceğiniz bağlantı sayısı iki ile sınırlı değildir. Donanım gereksinimlerini karşıladıktan sonra ihtiyacınız kadar uzak oturum açıp uygulama paylaştırabilirsiniz.
Terminal Server Yönetimi
Sistemi yöneten zat-ı muhterem olarak, uygulama paylaşımı yaptığımız Terminal Server? in hizmet kalitesininin devamlılığını sağlamak, çıkabilecek sorunlara karşı önlemler almak, meydana gelen sorunları en hızlı bir şekilde gidermek yönetim konusundaki başarımızı ölçümler. Daha iyi bir yönetim için önce elimizdeki araçların neler olduğunu bilmek ve ardından bunları efektif olarak kullanmak gerekir. Terminal Server yönetimi için kullanabileceğimiz araçlar ;
- Terminal Services Configuration Yönetim Konsolu
- Terminal Services Manager Yönetim Konsolu
- Remote Desktops Yönetim Konsolu
- Active Directory U. and Comp. veya Local Users and Groups Yönetim Aracı
- Terminal Server Licensing
- System Monitor
- Task Manager
- Add or Remove Programs
- Komut Satırı Araçları
- Terminal Service ile ilgili Group Policy Ayarları
Bu yönetim araçlarını daha yakından inceleyelim.
1. Terminal Service Configuration : Bu yönetim aracı client ile server arasındaki iletişimin güvenlik seviyesinden oturum açma bilgilerine, yetkilendirmeden çalıştırılacak programın ne olacağına kadar, oturumla ilgili tüm ayrıntıların konfigüre edilmesini sağlar.
Şekil ? 10 Terminal Services Configuration Yönetim Aracı
İşletim sistemi kurulumu ile oluşturulan RDP-Tcp bağlantı objesinin özelliklerini açtığınızda karşınıza 8 farklı sekmeden oluşan bir ekran çıkacaktır. Bu bağlantı objesiyle kullanıcının Terminal Server? a açacağı oturumun başlangıcından bitişine kadar tüm aşamaları konfigüre etmek mümkündür.
Şekil ? 11 RDP-Tcp Özellik Ekranı
General : Client ile Server arasındaki iletişimin şifreleme seviyesini bu ekranda belirleyebiliriz. Burada 56 bitlik şifrelemeden başlayan 4 farklı seçenekten birini seçebiliriz. Dikkat edilmesi gereken nokta seçilen şifreleme seviyesinin client tarafından da destekleniyor olmasıdır.
Logon Settings : Oturum açarken kimlik doğrulaması yapılacak kullanıcı bilgilerinin girilmesine imkan verir. Bu ekranda gireceğimiz kullanıcı bilgileri uzak oturum isteklerinin hepsi için geçerli olacaktır. Uygulama dağıtılan bir ortamda her kullanıcının kendi hesap bilgilerini kullanması isteneceği için bu ekranda değişiklik yapılması tavsiye edilmez.
Sessions : Bu sekmede oturumların aktif ve boşta kalma süresini, kapatılmamış fakat bağlantısı bir şekilde kopmuş olan oturumlar için bağlantının ne zaman kopartılacağını belirleriz. Burada yapılan değişiklikler tüm kullanıcıları dolayısıyla tüm oturumları etkilecektir. Kullanıcı hesaplarının özelliklerinden de oturum özelliklerini bireysel bazda değiştirmek mümkündür.
Environment : Eğer kullanıcının oturum açtığında tek bir program çalıştırmasını istiyorsak gerekli konfigürasyonu bu sekmede gerçekleştiriyoruz. Çalıştırılması gereken programın yolunu giriyoruz. Program kapatıldığında oturum da kapanacaktır.
Remote Control : Sistem yöneticisinin işini kolaylaştıran bir özelliktir. Sorun yaşayan kullanıcıların uzak oturumlarına destek vermek amacıyla kullanılabilir. Ancak bu özelliği kullanmak için bizimde Terminal Server üzerinde bir oturum açmamız ve işlemleri o oturum üzerinden yapmamız gerekir.
Client Settings : Bu sekmede kullanıcıların açacağı oturumlarda kullanacağımız renk derinliği ve lokal aygıtların kullanımı ile ilgili detayları belirliyoruz. Aynı özellikleri oturum açarken kullandığımız ?Remote Desktop Connection? üzerinden kullanıcı bazlı belirlemek de mümkündür.
Network Adapter : Bağlantı objesinin hangi network adaptörü üzerinden destek vereceğini ve maksimum kaç bağlantı isteğini olumlu yanıtlayacağını bu sekmede ayarlıyoruz.
Permissions : Terminal Server? a hangi kullanıcı yada grupların oturum açıp açmayacağını belirlediğimiz yetkilendirme sekmesidir. Terminal Server? i ilgilendiren 3 farklı yetkilendirme seçeneği karşımıza çıkar. Guest Access kullanıcılara yalnızca Terminal Server? e oturum açma yetkisini vermek için yeterli bir izindir. Oturum açtıktan sonra diğer oturumlara mesaj gönderme, diğer oturumlara bağlanabilme gibi yetkileri kullanıcıya vermek için ?User Access? iznini atamak gerekir. Full Control ise bunlara ek olarak diğer kullanıcıların oturumlarını uzaktan yönetmek, resetlemek gibi hakların verilmesi için kullanılır.
Yine Terminal Service Configuration Aracında Server Settings bölümünde (Şekil-12) oturumların yönetiminden lisanslamaya, server performansından güvenlik seviyesine kadar birçok ayar yapmamız mümkün.
Delete Temporary Folders on Exit : Oturumlardan çıkış yapılırken geçici dosyaların temizlenmesini sağlar.
Use Temporary Folders per Session : Her oturum için ayrı bir geçici dosyaların tutulduğu klasör oluşturmasını sağlar. %USERPROFILE%Local SettingsTemp<sessionID olarak her oturuma farklı bir temp klasörü yaratılacaktır.
Licensing : Lisanslama modelini gösterir. Eğer Terminal Service kurulu değilse ve yalnızca uzaktan yönetim amacıyla Remote Desktop aktif edilmişse şekildeki gibi görünecektir. Terminal Service kurulduğunda iki farklı seçenek karşımıza çıkar. Per device Server? a bağlantı gerçekleştirecek PC,Thin Client yada PDA gibi cihazlara lisansların atanmasını sağlar. Per User ise oturum açacak kullanıcı hesaplarına lisans atanmasını sağlar.
Active Desktop : Hepimizin bildiği Active Desktop özelliğinin açılacak Terminal oturumlarında kullanılmasına izin vermek yada engellemek için kullanılır. Terminal Service kurulduğunda default olarak disabled gelir.
Permission Compatibility : Yazımızın başlarında Terminal Service kurulumunda değindiğimiz güvenlik seviyesini ayarlamamıza olanak sağlar. Eğer registry ve sistemin kurulu olduğu klasöre erişim gerektiren uygulamalar çalışıyorsa Relaxed Security seçimi yapılmalıdır. Aksi durumda sistemi daha güvenli kılmak için Full Security seçimi yapılabilir.
Restrict Each User to One Session : Her kullanıcının yalnızca bir oturum açma hakkı olsun istiyorsak aktif hale getirmemiz gereken bir özelllik. Default olarak her kullanıcı hesabı istediği kadar terminal oturumu açabilir.
Şekil ? 12 Terminal Service Configuration Yönetim Aracı
2. Terminal Server Manager Yönetim Aracı : Networkte hizmet veren tüm Terminal Server? ların ve onların üzerinde açılmış tüm oturumların listelendiği yönetim aracıdır. Kullanıcıların açtıkları oturumların detaylarını görmek, hangi uygulamaların çalıştığını izlemek ve oturumları gerektiğinde uzaktan kontrol etmek için bu yönetim aracını kullanmamız gerekir.
Şekil ? 13 Tüm oturumları yönetebildiğimiz Terminal Service Manager
3. Remote Desktops Yönetim Aracı : Eğer birden çok server yönetiminden sorumluysanız ve her işi oturduğunuz yerden halletmek istiyorsanız (yedekleme kartuşlarını değiştirme işini de uzaktan hallettiğimizi düşünüyoruz tabii ki J) tüm uzak oturumları tek bir konsolda oluşturarak yönetmemizi sağlayan bir araçtır. Diğer yardımcı araçlarımız gibi MMC tabanlı çalışan ?Remote Desktops? içinde uzaktan yöneteceğimiz her Server için ayrı bağlantı objeleri oluşturmamız gerekir.
Şekil ? 14 Üç Farklı Server? ın Uzak Bağlantılarını İçeren Remote Desktops Ekranı
4. Active Directory U. and Comp. veya Local Users and Groups Yönetim Aracı : Eğer domain ortamında isek Active Directory Users and Computers yönetim aracı, lokalde çalışıyorsak ise Local Users and Groups aracı, kullanıcıların hesapları üzerinde Terminal Service hizmetini ilgilendiren konfigürasyonların yapılmasını sağlar.
Kullanıcı hesapları üzerinde 4 ayrı sekme Terminal Service konfigürasyonu ile ilgilidir. Bu sekmelerden kullanıcının Terminal Server? a oturum açıp açmaması gerektiğinden oturumun time-out ve yeniden bağlanma opsiyonlarına kadar tüm detaylar konfigüre edilebilir. Yazının Terminal Service Configuration kısmında Session,Environment ve Remote Control sekmeleri ile tüm kullanıcıları etkileyecek genel bir konfigürasyon yapabileceğimizi söylemiştik.
Şekil-14? de görünen sekme yalnızca kullanıcı hesabına özel olan sekmedir ve profil bilgilerinin nerede tutulacağını belirlememizi sağlar. Burada belirtilen profil path? i User Profile sekmesinde olduğu gibi UNC path olmalıdır. Ayrıca aynı sekmede, kullanıcı için Terminal Server? a oturum açma iznini de belirleyebiliyoruz.
Şekil ? 15 Active Directory? de Kullanıcı Hesabı Özellikleri
5. Terminal Server Licensing : Daha öncede belirttiğimiz gibi 120 günlük deneme süresinden sonra Terminal hizmeti alacak tüm aygıtlar yada kullanıcılar için Terminal Service Lisansı almak gerekir. Bu lisansların merkezi kontrolünü ve denetimini yapmak için Terminal Service Licensing hizmetini kullanmak gerekir.
6. System Monitor : Genel sistem performansını gözlemlemek için kullandığımız bu aracı aynı zamanda Terminal Server? in performansını ölçümlemek ve oluşabilecek sorunlara erken müdahale etme şansını yakalamak için kullanırız.
7. Task Manager : Terminal Server üzerinde oturum açan tüm kullanıcıların çalıştırdığı bütün uygulamalarla ilgili ayrıntılı bilgi almamızı ve böylece performans değerlendirmesi yapmamızı sağlayan araçtır.
8. Add or Remove Programs : Terminal Server kurulumu yapıldıktan sonra yeni program ekleme işlemi için ?Add or Remove Programs? özelliğini kullanmak gerekecektir.
9. Komut Satırı Araçları : Grafiksel arayüzle yönetim daha tercih edilir olsa da komut satırından çalışan oldukça faydalı araçlarla yönetimimizi desteklememiz mümkün. Terminal Server için de bu faydalı araçlardan hizmetimize sunulmuş olanlar var. Bunlardan bir kaçını inceleyelim.
change logon {/enable | /disable | /query} : Bu komut sayesinde Terminal Server? in yeni oturum talebi geldiğinde vereceği tepkiyi belirliyoruz. Eğer Change logon /disable komutunu kullanırsak Terminal Server yeni oturum taleplerini reddedecektir. Ancak daha önce açılan oturumlar bundan etkilenmeyecektir. /Query parametresi ile durumu öğrenirken /enable parametresini kullanarak yeniden oturum kabul edecek hale gelmesini sağlıyoruz.
logoff [{SessionID | SessionName}] [/server:ServerName] : Terminal Server üzerinde açılmış oturumları komut satırından kapatmak için kullanılabilecek araçtır. Session ID açılan her oturuma atanmış numerik bir değerdir. Session Name ise yine açılan oturumlara RDP-TCP#2 şeklinde sistemin atadığı tanımlamadır.
Örnek : logoff rdp-tcp#2 /server:200.200.200.2
msg {UserName | SessionName | SessionID | @FileName | *} [/server:ServerName] [/time:Seconds] [Message : Oturum açmış tüm kullanıcılara yada yalnızca bir kullanıcıya mesaj göndermek için kullanılması gereken komuttur. Task Manager yada Terminal Service Manager da mesaj gönderimi için kullanılabilir. Asteriks (*) kullanırsak tüm kullanıcılara mesaj atmış oluruz. /time:10 gibi bir parametre eklersek de mesaj 10 saniye göründükten sonra kaybolacaktır.
Örnek : msg * /time:5 birazdan Terminal Server bakima alınacaktr.Lütfen oturumlarınızı kapatın.
mstsc.exe {ConnectionFile | /v:ServerName[:Port]} [/console] [/f] : Remote Desktop Connection programını komut satırından çalıştırmamızı sağlar. Hangi Terminal Server? a hangi portu kullanarak nasıl oturum açmak istediğimizi belirleme şansımız var.
Örnek : mstsc /v:200.200.200.2 :1975 /f (1975 TCP port üzerinden belirtilen Server? a Full Screen olarak oturum açmamı sağlayacak komut.)
query user [{UserName | SessionName | SessionID}] [/server:ServerName] : Terminal Server? a açılan tüm oturumları görüntülememizi sağlar. Aşağıdaki örnekte olduğu gibi...
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
>administrator console 0 Active 11.07.2005 10:38
administrator rdp-tcp#2 2 Active 11.07.2005 10:37
shadow (SessionName | SessionID) (/server:ServerName) : Terminal Server? in Remote Control özelliğini komut satırından kullanmamızı sağlayan araçtır. Yine aynı özelliği Terminal Service Manager üzerinden de kullanabildiğimizi hatırlatalım.
tsdiscon [{SessionID | SessionName}] [/server:ServerName] : Hali hazırdaki açık oturumun sonlandırılmadan bağlantının kesilmesini sağlar. Tekrar bağlantı isteği geldiğinde oturum kaldığı yerden devam edecektir.
tsshutdn [WaitTime] [/server:ServerName] [/reboot] [/powerdown] [/delay:LogOffDelay] : Sistemi yöneten kişilerin uzaktan Terminal Server? i kapatabilmesi yada yeniden başlatabilmesini sağlayan komuttur. WaitTime parametresi komutu çalıştırdıktan ne kadar süre sonra Terminal Server?in kapanacağını belirlemek için kullanılıyor. Bu parametre kullanılmadığı takdirde 60 saniyelik default süre işliyor. Adından da anlaşılacağı üzere /reboot Server? i yeniden başlatırken /powerdown Server? i tamamen kapatıyor. /delay parametresi ise tüm oturumlar kapandıktan sonra Server? in kapanması için ne kadar süre bekleneceğini belirler.
Terminal Service? i ilgilendiren komutların içinden daha çok kullanabileceklerimizi inceledik. Komutların tamamı için Terminal Service yardım menüsünden faydalanabilirsiniz.
Terminal Service Yönetimi için bir çok araç kullanabildiğimizi gördük. Bunların bir bölümünün aslında aynı işlevi farklı yollardan hayata geçirdiğini de biliyoruz. Yine yönetimi merkezileştirmek adına Terminal Service ile ilgili bazı konfigürasyonları Group Policy yardımıyla yapabiliyoruz.
Group Policy sayesinde networkte çalışan tüm Terminal Server? ların, Server konfigürasyonu, lisanslama, kullanıcı oturumları ve güvenlik yönetimi merkezileştirilmiş olacaktır. Tabii ki öncelikle Terminal Service kurulu bilgisayar hesaplarını bir OU içinde toplamak ve ardından oluşturacağımız Group Policy objesini söz konusu OU? ya uygulamamız gerekir. Group Policy Objesinde hem kullanıcı hemde bilgisayarlara uygulanan scope altında Terminal Service ile ilgili konfigürasyon bilgisine ulaşabiliriz;
Bilgisayarlar için ;
Computer Configuration Administrative Templates Windows Components Terminal Services
Şekil ? 16 Group Policy Computer Configuration Bölümünde Terminal Service Yönetimi
Şekil -15? e baktığınızda 7 tane farklı alt kategori ve bunlarla birlikte 19 adet farklı konfigürasyon başlığı görünüyor. Alt kategorilerden açıklamaya başlayalım;
Client /Server Data Redirection : Terminal Server? lara oturum açacak kullanıcı bilgisayarların disk, printer ve ses kartı gibi lokal kaynaklarını açtıkları terminal oturumu üzerinden de çalıştırabilmesi ile ilgili konfigürasyonlar bu bölümde belirlenir.
Encryption and Security : Client ile Terminal Server arasındaki veri akışının şifreleme seviyesinin belirlendiği bölümdür. Terminal Service Configuration yönetim aracından da şifreleme seviyesini belirleyebilceğimizi görmüştük. GPO yardımıyla tüm Terminal Server lar üzerinde aynı seviyenin uygulanmasını sağlarız. Bunun yanında RDP bağlantı özelliklerinde oturum açmak için girilen kullanıcı bilgileri ile otomatik olarak oturum açılmasını yada her koşulda kullanıcıdan şifre istenmesini de yine bu bölümde konfigüre ediyoruz.
Licensing : Lisanslama ile ilgili değişikliklerin yapıldığı bölümdür. Burada License Server Security Group özelliği Enabled olarak set edilirse DC üzerinde Terminal Servers Computers diye bir group oluşturulur. Licensing Server yalnızca bu group? a üye olan bilgisayarlara Lisans dağıtır. Disabled edilmesi durumunda talepte bulunan tüm bilgisayarların lisans istekleri karşılanır.
Temporary Folder : Terminal oturumu açıldığında oluşturulan geçici klasörlerin oturum kapandığında ne olacağını belirlemek için kullanılır. Default olarak Terminal Server kapanan oturumların geçici klasörlerini siler. Aksini istediğimiz durumlarda bu özelliği kullanmalıyız.
Client : RDP bağlantı objesi üzerinde kullanıcı bilgilerini girdikten sonra ?Save My Password? özelliğinin kullanımını engellemek için bu bölümde karşımıza çıkan özelliği Enabled olarak set etmemiz gerekir.
Session Directory : Yazının son bölümünde detaylı incelenecek.
Sessions : Kullanıcı hesapları ve Terminal Service Configuration yönetim aracı üzerinde açılacak oturumlarla ilgili belirleyebileceğimiz kuralların GPO yoluyla atanmasını sağlar. Bağlantısı kopan,boşta kalan yada time-out süresini aşmış oturumlarla ilgili ne yapılacağını buradan belirliyoruz. Aynı zamanda oturumların ne kadar süre aktif ve boşta kalabileceği konusunda zaman tanımlamalarını da bu bölümden yapıyoruz.
Not: Session bölümü GPO? nun User Configuration scope? unda da aynı seçeneklerle karşımıza çıkar. Her iki scope üzerinde ayarların aktif edilmesi halinde Computer Configuration kısmında yapılanlar baskın olacaktır.
Yine Şekil-15 de görünen 19 farklı konfigürasyondan önemli olanlarını açıklayalım ;
Keep-Alive Connections : Özellikle uzak ofis yani WAN link üzerinden yapılan bağlantılar için kullanılabilecek bir özelliktir. Burada belirttiğimiz süre boyunca Terminal Server bağlantının aktif olup olmadığını test edecektir. Bağlantı kopmuş görünse dahi oturumu aktif oturum olarak bekletecektir ve belirlenen süre dolduğunda bağlantıyı test edecektir.
Automatic Reconneciton : Remote Desktop Connection kullanarak oturum açan client? ların bağlantılarında meydana gelecek kısa süreli kesintilerin ardından yeniden bağlanmalarını sağlayan özelliktir. Bu özellik aktif edildiğinde client 5 saniye aralıkla maksimum 20 kez yeniden bağlanma girişiminde bulunur. Eğer bu özellik GPO üzerinden aktif edilmezse Remote Desktop Connection objesi üzerinden de set edilebilir.
Restrict Terminal Services Users to a Single Remote Session : Tüm kullanıcıların aynı hesapla yalnızca tek bir oturum açmasını istiyorsak aktif hale getirmemiz gereken bir özelliktir.
Limit Number Of Connecitons: Terminal Server yada Server? lar üzerine açılabilecek oturum sayısını belirlemek için kullanılır. Eğer GPO üzerinden aktif hale getirilirse kabul edilmesi istenen bağlantı adedini belirtmek gerekir. ?99999? olarak belirtilmesi durumunda Terminal Server?in kabul edeceği bağlantı isteği limitsiz olacaktır. Yine Terminal Service Configuration üzerinden de aynı ayar set edilebilir.
Set Rules for Remote Control of Terminal Service User Session : Server üzerinde açılmış bir uzak oturumdan diğer oturumları yönetmemizi sağlayan Remote Control özelliği ile ilgili yetkilerin belirlendiği bölümdür. İki farklı seçenek vardır. İlki kullanıcının oturumuna müdahale etmeden yalnızca izlememizi sağlarken diğeri kendi oturumumuz gibi yönetibilmemizi sağlar. Bu ayar hem User hem Computer Configuration scope? undan yapılabilir.
Remove Disconnect Option from Shutdown Dialog: Kullanıcıların oturumlarını kapatırken log off olmak yerine disconnect seçeneğini kullanmaları nedeniyle Terminal Server üzerinde gereksiz kaynak tüketimi her zaman sorun teşkil eden bir durumdur. Bunu engellemek için kullanıcıların oturumlarını kapatırken disconnect seçeneğinin kaldırmak gerekir. Bu özelliği enabled hale getirmek bunun için yeterli olur.
Start Program a connection : Oturum açacak kullanıcıların yalnızca bizim istediğimiz bir programı çalıştırmasını ve bunun dışında hiç bir işlem yapmasını istemiyorsak bu özelliği kullanabiliriz. Bu özellik hem kullanıcı hesabının özelliklerinde hemde Terminal Service Configuration yönetim aracında da karşımıza çıkmıştı. Bu özelliği GPO yardımıyla aktif hale getirmek tüm server ve tüm oturumlarda geçerli olmasını sağlayacaktır. Çalıştırılmasını istediğimiz ?exe? uzantılı dosyasının nerede olduğunu yazmak yeterli olacaktır. (Örnek : C:Program FilesMicrosoft OfficeOFFICE11 /winword.exe)
Kullanıcılar için ;
User Configuration Administrative Templates Windows Components Terminal Services
Şekil ? 17 Group Policy User Configuration Bölümünde Terminal Service Yönetimi
Computer Configuration Scope? unda olduğu kadar fazla özellik olmadığı gibi olanların sadece Client alt başlığında görünen ?Dont Allow Password to be Saved? ayarı User Configuration Scope? una özeldir. Bu ayarda Terminal Server Client yazılımı olan Remote Desktop Connection objesi üzerinde kullanıcı bilgilerinde girilen password? ün kaydedilmesini engeller.
Artık Terminal Service hizmetinin çalışma prensibi, bileşenleri, kurulum ve yönetimi konusunda yeterli bilgiyi edindiğimize göre bu servisin nimetlerinden faydalanmaya başlayabiliriz. Yazının ikinci bölümünde ise birden fazla Terminal Server? dan oluşan bir networkte kullanacağımız Session Directory konusunu ele alacağız...
|