Birkaç hafta sonu önce, (görünüşe göre ben bir mazoşistim) ESXi’nin ev laboratuvarımı çalıştıran ücretsiz sürümünden bıktığımı ve Microsoft’un Hyper-V Server 2016’sını denemeye karar verdim.
Hafif olması, PowerShell ile erişilebilir olması ve test AD alanlarının dağıtımını otomatik hale getiren çok sayıda harika Github projesinin olması fikri hoşuma gitti.
Windows dizüstü bilgisayarımda Hyper-V ile biraz oynamıştım ve GUI Hyper-V yöneticisini de beğenmiştim. Laboratuvarımı bununla ve PowerShell ile uzaktan yönetebilseydim mutlu olurdum.
Hyper-V sunucusunu ISO’dan kurmak kolaydı, ancak ona bağlanmaya çalışırken birkaç günümü harcayacağımı bilmiyordum.
Bu dokümanlardaki adımları takip ettim ama yine de çalıştıramadım:
Sorunumun özü, Hyper-V Sunucusunun gerçekten bir AD Etki Alanı ortamında çalıştırılmasının amaçlanmış olmasıdır. PowerShell veya Hyper-V Yöneticisi aracılığıyla uzaktan yönetim, kimlik doğrulama ve yetkilendirme işlemlerinin arkasında AD varsa, sorunsuz bir şekilde çalıştığından eminim.
Dairemde bir AD Etki Alanı kurulu değildi ve bir DC’yi başlatıp kişisel kullanım için bir etki alanını yönetme konusunda çok az isteğim vardı. Bu yüzden Hyper-V’yi bir ÇALIŞMA GRUBU ile iyi çalışacak şekilde yapılandırmaya başladım. Yapmak istediğim şey, ana Windows iş istasyonumdan sunucuya uzaktan bağlanabilmek ve sunucuyu yönetebilmekti. Ayrıca ana iş istasyonumda minimum miktarda ince ayar yapmak istedim (yani güvenlik duvarlarını devre dışı bırakmak, joker karakterlere güvenmek vb. gibi açıkça güvensiz hiçbir şey yapmamak).
Uzak bağlantıların çalışmasını sağlamak için işe yarayan bulduğum komutlar aşağıdadır.
İlk kurulumun ve Yönetici şifresinin ayarlanmasının ardından, aşağıdaki minimalist ekranla karşılaşırsınız:
Buradan yapılandırılması gereken birkaç şey var.
-
“Uzaktan Yönetimi Yapılandır” bölümünde Uzaktan Yönetimin etkinleştirildiğinden emin olun ve ayarı sunucuya ping atılmasına izin verecek şekilde değiştirin
-
Sunucuyu RDP üzerinden uzaktan yönetebilmek için Uzak Masaüstü’nü etkinleştirin
-
Bir adı yapılandırma. Seçtim
hyperv-server
. Bu yeniden başlatmayı gerektirir.
Ayrıca şunun için bir ana bilgisayar girişi oluşturdum: hyperv-server.home.local
yerel DNS sunucumda ana bilgisayar adına göre erişebilmem için. Manuel olarak düzenleme etc\hosts
dosya da işe yarayacaktır.
Bu ayarlardan sonra RDP’yi ana makine adına göre ve kimlik bilgilerini kullanarak kutuya aktarabildim. HYPERV-SERVER\Administrator
.
Sunucu PowerShell Yapılandırması
Yapılandırma menüsünün arkasında PowerShell’e girmenizi sağlayan bir komut istemi bulunur. Buradan, sunucuyu PS-Remoting’e izin verecek ve sunucuda CredSSP kimlik doğrulamasına izin verecek şekilde yapılandırmanız gerekir. Aşağıdaki komutları kullanın:
|
|
Bu etkinleştirildikten sonra sunucuyu yapılandırmayı tamamlamış olursunuz. Şimdi müşterimin onunla iletişim kurmasını sağlamanın zor kısmı geldi.
İstemci Yapılandırması
Hyper-V Sunucusunu Windows 10 dizüstü bilgisayarımdan uzaktan yönetiyor olurdum. İlk şey, Windows Güvenlik Duvarı’nın trafiğe izin vermesi için bağlantı profilinin “Özel” olarak ayarlandığından emin olmaktır (yani genel bir ağ üzerinden çalışmaz).
|
|
Bir sonraki adım, sunucuyu WS-Yönetim Protokolü için güvenilir bir ana bilgisayar olarak ekleyerek istemciyi, sunucuya bağlanmanın uygun olacağı şekilde yapılandırmaktır.
Girişi eklemek için istemcide WinRM’yi etkinleştirmeniz gerekir. Dizüstü bilgisayarımda WinRM’yi etkinleştirmek istemedim ama neyse ki girişi ekledikten sonra hizmeti durdurmanın işe yaradığını keşfettim. Girişi eklemek için:
|
|
Bunun ana bilgisayar adı yerine bir IP adresiyle çalışması gerekir, ancak test etmedim. YMMV
Şimdi test ederek iş istasyonunuzda kimlik doğrulaması yapabileceğinizi ve iş istasyonunuzdan komutları uzaktan çalıştırabileceğinizi test edin. Invoke-Command
:
|
|
Sizden yerel Yönetici şifresini isteyecek ve ardından uzaktan yürütecektir. hostname
emretmek:
Bu işe yararsa, artık istemci ile sunucu arasında güvenli bir şekilde iletişim kurabilir ve sonunda Hyper-V’yi uzaktan yönetmeye başlayabilirsiniz.
Hyper-V Yöneticisini Yapılandırma
Henüz yapmadıysanız etkinleştirmeyi unutmayın Hyper-V Management Tools
Hyper-V Yöneticisi GUI’sini almak için Windows Özellikleri’nde. Aslında Hyper-V Platformunu etkinleştirmenize gerek yok (Virtualbox’ı yerel olarak çalıştırdığımdan beri bunu yapmıyorum).
Hyper-V Manager’ı açın, sağ tıklayın ve “Sunucuya Bağlan”ı seçin. Hyper-V sunucusunun IP adresini veya ana bilgisayar adını girin ve yerel Yönetici kimlik bilgilerini girerek “Başka bir kullanıcı olarak bağlan”ı seçin
Şimdi… bunun tamamen işe yarayacağını düşünürsünüz. Özellikle de WinRM ve PS-Remoting’in gayet iyi çalıştığını zaten kanıtladığımız için. Ancak ‘Tamam’a basın ve bu hata ortaya çıkıyor:
Bunun neden başarısız olduğu hakkında hiçbir fikrim yok. Geçici bir çözüm bulana kadar bu beni kaybetti.
Yetkilendirme Geçici Çözümü
Yetkilendirme hatasını aşmak için Hyper-V Sunucusu kimlik bilgilerini kullanarak belleğe manuel olarak eklemeniz gerekir. cmdkey
. Hyper-V sunucusundan çıkın ve istemcideki komut istemine aşağıdakini girin:
|
|
Şimdi Hyper-V Sunucusunu yeniden açın ve uzak sunucuya tekrar bağlanın, ancak ihtiyacımız olan kimlik bilgileri zaten bellekte olduğundan başka bir kullanıcı belirtme zahmetine girmeyin:
Bu nihayet işe yarıyor! Sunucuya bağlanıp uzaktan yönetebilirsiniz:
Kimlik bilgileri bellekte kaldığı sürece sunucuyu uzaktan yönetebilirsiniz. Başka bir olası geçici çözüm, Hyper-V Manager’ı şu şekilde başlatmaktır: runas
ve doğru yerel hesap:
|
|
Bunu çalıştırmak için bir kısayol oluşturabilir ve hazır olabilirsiniz.
Hyper-V Sunucusunda
- Uzaktan Yönetimi Etkinleştir
- Uzak Masaüstünü Etkinleştir
- Bilgisayar Adını Ayarla
- WSMan ve PS-Remoting’i etkinleştirin:
|
|
İstemciyi Yönetme Hakkında
- Hyper-V Sunucusu için ana bilgisayarları veya DNS girişini yapılandırma
- Ağ profilinin “Gizli” olduğundan emin olun:
|
|
- WinRM’yi geçici olarak başlatın ve Hyper-V Sunucusunu Güvenilir Ana Bilgisayar olarak ekleyin:
|
|
- Windows Özelliklerinde Hyper-V Yönetim Araçlarını Etkinleştirin
- Cmdkey ile Hyper-V Yönetici kimlik bilgilerini ekleyin:
|
|
- Hyper-V Manager’ı başlatın ve sunucuya bağlanın (kullanıcıyı belirtmeyin)
- veya Hyper-V Manager’ı şununla başlatın:
runas
:
- veya Hyper-V Manager’ı şununla başlatın:
|
|
Özet
Etrafta çok fazla uğraştıktan sonra, bu, etki alanı olmayan bir ortamda bir Hyper-V sunucusunu uzaktan yönetmek için bulduğum minimum çalışma yapılandırmasıdır.
Hyper-V Manager’ın sağlanan kimlik bilgileriyle neden çalışmadığından hâlâ %100 emin değilim ve cmdkey
veya runas
geçici çözüm gereklidir. Birisi buna biraz ışık tutabilirse, minnettar olurum!
Umarım bu oradaki birine yardımcı olur -ropnop