System Center Configuration Manager 1702 ile WORKGROUP’ da Çalışan İstemcilerin Otomatik Olarak Etki Alanına Katılması – Real World Experiance

Merhabalar,

Bu yazım bir müşteri ortamında talep edilen ve gerçekleştirilen bir isteğe istinaden gerçekleştirilmiştir. Bilindiği üzere sccm ile etki alanında bulunan istemcilerimizi yönetebildiğimiz gibi workgroup’ da bulunan istemcilerimize yönetebiliyoruz. Etki alanında bulunan istemcileri daha efektif olarak yönetebiliyoruz.

Workgroup’ da çalışan istemcilerin yönetilmesi şirket kaynaklarına erişmesi gibi işlemler etki alanlarında bulunan istemcilere göre daha zordur. Bunun için etki alanları dahil olmaları önemlidir.

Bir müşterimden gelen bir talep üzerine kendilerine aşağıda bahsedeceğim gibi bir çözüm sağladım. Öncelikle müşterinin yapısını sizler ile paylaşayım. Ülke içerisinde bir den çok ofisi ve şubesi olan bir grup, belirli şubelerde çalışan personelin kullandığı bilgisayarlar etki alanına dahil değil ve bu istemcileri otomatik olarak etki alanına dahil etmek isyorlar.

İstemci makinaları etki alanına dahil etmek isterlerken IT personelininde bir efor harcanması ve bu isle uğraşmaması istenmektedir.

Kullanıcıların makinalarında bir arayüz çıksın ve kendileri sadece Evet diyerek etki alanına dahil olsunlar.

İşte burada PowerShell ve SCCM becerinizi göstermeniz gerekmektedir. Ben bu istek karşısında yaptığım bütün işlemleri sizlere aktarıyor olacağım.

Öncelikle isteğe bakıldığında son kullanıcı karşına bir PowerShell ekranı çıkartmak imkansız. Olabildiğince sade ve son kullanıcının işlem yapabileceği bir operasyon olmalıdır ki sorunsuz olarak bu işlemi gerçekleştirebilsinler. Bunun için PowerShell kodlarınızı bir GUI arayüzüne çevirmeniz gerekmektedir.

Bunun için benim hazırlamış olduğum PowerShell aşağıdaki gibidir.

Hazırlamış olduğum PowerShell script’ ini biraz detaylandıralım.

  • $YeniIsim = [Microsoft.VisualBasic.Interaction]::InputBox(“Bilgisayar Isminizi Belirtiniz !”) : Burada YeniIsim adında bir değişken tanımladım. Sonrasında Microsoft VisualBasic.Interaction parametresi ile bu değişkeni girebileceğiniz bir GUI arayüzü eklemiş oldum. InputBox parametreside açılacak GUI’ ye girilen bir makina ismi yazabilinmesi için giriş yapılabilecek olan bir alan oluşturmuş oldum.
  • RenameComputer -NewName $YeniIsim : Bu parametre ile GUI üzerinde belirlemiş olduğumuz makina ismimiz olacak şekilde makina isminin değiştirilmesini sağladım.
  • $KullaniciAdi = “Etki Alanı\Yetkili Kullanıcı” : Bu kısımda yeni bir değişken oluşturarak etki alanında yetkili bir kullanıcı belirtdim ki bu kullanıcı istemcimi etki alanıma dahil etsin.
  • $Sifre = “Yetkili Kullanıcı Şifresi” | ConvertTo-SecureString -AsPlainText -Force : Yeni bir değişken oluşturarak yetkili kullanıcıma ait şifre bilgisini belirtdim fakat sonrasında bu bilgiyi güvenli hale getirmek için SecureString olarak çevirtmiş oldum.
  • $KimlikDogrulama = New-Object System.Management.Automation.PSCredential ($KullaniciAdi, $Sifre) : Bu kısımda yeni bir değişken oluşturdum fakat bu değişken etki alanına dahil edilme sırasında sorulan kimlik bilgilerini otomatize etmek içindi. Burada gerçekleştirdiğim kimlik doğrulamasını belirtmiş olduğum değişkenlerden otomatik olarak okuyarak işlem gerçekleştirebilmesini sağlamış oldum.
  • $EtkiAlaninaKatil = [Microsoft.VisualBasic.Interaction]::InputBox(“Etki Alanına Katılıyormusunuz ? E/H ”) : Burada oluşturmuş olduğum değişken ile bir Kabul mekanızması oluşturdum ve kullanıcıya bir GUI sunarak buna “E” Evet veya “H” Hayır değerini belirtmesini sağladım.
  • If ($EtkiAlaninaKatil -eq “e” -or $EtkiAlaninaKatil -eq “E”) : Bu kısımda bir IF döngüsü kullandım kullanıcı küçük “e” veya büyük “E” derse etki alanına alma işlemi başlasın diye.
  • Add-Computer -DomainName “Etki Alanı Bilgisi” -Credential $KimlikDogrulama : Bu kısımda kullanıcı eğer Evet derse etki alanına alma işlemini oluşturduğum değişken değerleri ile dahil edecektir.
  • $YenidenBaslat = [Microsoft.VisualBasic.Interaction]::InputBox(“Yeniden Başlatalım mi ? E/H ”) : Bu değişken ile tekrardan kullanıcımızın karşınına bir GUI çıkartarak bilgisayarın yeniden başlatılıp başlatılmamasını belirlemesini istedim. Evet derse bilgisayar yeniden başlatılacak ve etki alanına üye edilerek açılacaktır.

Bu istekde önemli olan bu PowerShell’ in hazırlanması kısmıdır.

Hazırlamış olduğum Scritp : Indir

Hazırlamış olduğumuz bu PowerShell dosyanı istemcilerimiz üzerinde doğrudan çalıştıra bileceğimiz gibi bir paket halinede getirebilirsiniz.

Ben hazırladığım bu PowerShell Script’ ini EXE olarak bir paket haline getireğim. Tabiki bu dönüşüm sırasında gene PowerShell’ in gücünü kullacağım.

PowerShell to EXE : İndir

Oluşturmuz olduğum powershell script’ ini EXE haline getirmek için ps2exe.ps1 script’ ini kullandım. Bu PowerShell script’ inin kullanımı aşağıda görebileceğiniz gibi ayrıcada belirtiyorum.

PS C:\PS2EXE>.\ps2exe.ps1 -Inputfile C:\”Hazırlanan PowerShell Yolu\Myscript.ps1” C:\Dönüşüm Sonrasında Bulunacağı Konum\

Böylelikle hazırlamış olduğumuz PowerShell’ imizi bir EXE paketi haline getirmiş olduk. Bu kısımda fazla değinmiyorum ama bir çok yan parametre mevcut’ dur bu powershell script’ i için.

En başta bahsetdiğim gibi bu işlem WORKGROUP’ da bulunan istemcilerimizi etki alanıza dahil etmek için gerçekleştirilmektedir. SCCM yönetimsel konsolumuz üzerinde istemcimize baktığımızda workgroupda bulunan istemcilerimizi görebiliyoruz.

WORKGROUP’ da bulunan istemcilere sccm ajanlarının nasıl kurulacağına dair pek bir bilgi anlatmayacağım bu yazımda fakat genede etki alanı dışında bulunan istemcilere ajan kurulumu için bir kaç önemli noktayı belirteyim.

Etki alanı dışında bulunan istemcilere manuel kurulum yapmak gerekir. Bu kurulumu Command Prompt üzerinden yapılmasını öneririm.

Burada ajan kurulumu yapılacak olan istemcinin bilmesi gereken iki önemli nokta var.

  • Hangi Site Code’ u içerecek ?
  • Hangi Management Point’ e bağlanacak ?

Bu iki nokta ajan kurulan istemciler için önemlidir. Bunun için CMD üzerinden yapılmasını öneririm. Command Prompt üzerinden kurulumda kullanılacak olan parametre aşağıdaki gibidir.

Ccmsetup.exe SMSMP=”Management Point Sunucu FQDN” SMSSITECODE=”TRK” DNSSUFFIZ=”Domain FQDN” bu parametreleri kullanarak yapacağınız kurulumda Management Point Sunucusu ve SiteCode’ u belirterek kurulum yapmış olacaksınız.

Etki alanında bulunmayan istemcilere sccm ajanı kurulumundan sonra mutlaka istemciyi sccm konsolu üzerinden Onaylamalısınız. Bunun için istemci üzerine ajan kurulumu tamamlandıktan sonra konsol üzerinde istemciye sağ click yaparak Approve demeniz gerekmektedir.

Peki neden bu işlemi yapmak gerekiyor ?

Hiyerarşi ayarlarına bakıldığında trusted olarak eklenmiş etki alanlarında bulunan istemciler otomatik olarak Onaylanır. Trust olarak görülmeyen etki alanında bulunan istemciler otomatik olarak onaylanmazlar ki SCCM kurulumu tamamlandıktan sonra temel ayar aşağıdaki gibi gelmektedir. Tabiki bu bazı durumlara göre değiştirilebilir.

Onaylanmamak istemcilerde ne gibi etkilere yol açtığını daha sonraki yazılarımda bahsediyor olacağım.

EXE haline getirmiş olduğum PowerShell script’ imi Package kısmında bir paket olarak oluşturuyorum. Paket hazırlamanın nasıl yapıldığını bildiğinizi farz ederek bu adımları sırası ile paylaşmıyorum. Fakat bir kaç farklılığı paylaşıyor olacağım.

Paketimizi hazırlarken General sekmesinde Browse diyerek hazırlamış exe haline getirmiş olduğumuz dosyamızı gösteriyoruz. Run kısmı Normal olarak kalması önemlidir. Ki istemcilerimize hazırladığımız GUI ekranı gelebilsin.

Environment sekmesinde Run Mode’ u Run with administrative rights a getirmelisiniz.

Peki neden yönetici yetkileriyle çalıştırılmalıdır !!

Oluşturduğumuz PowerShell script’ inde bir parametre var “Rename-Computer -NewName” diye… Bu parametrede kullanılması gereken -LocalCredential parametresi eksiktir. Eksik olmasının sebebine gelince her makinanın lokal administrator şifresi bilinemeyeceğinden dolayı bu parametreyi kullanmıyoruz. Bu sebepten dolayı yönetici yetkisi ile çalışması gerekmektedir.

Bu noktadan sonra artık oluşturulan paketi WorkGroup’ da bulunan istemcilere dağıtıımını yaparak ietki alanına katılmaları için gereken operasyonu başlatmış oluyoruz.

Ben burada istemciler üzerine dağıtırken Available olarak gerçekleştirdim. Sizlere zorunlu olarak dağıtım yapmak istiyorsanız Required olarak dağıtım sağlayabilirsiniz. Software Center üzerine gelen paketimizin çalışması için Install diyerek başlıyoruz.

Install dedikten sonra karşınıza bir CMD ekranı ve yeni bilgisayar isminizi belirtmenizi isteyen bir pencere açılacaktır. Burada açılan cmd ekranı PowerShell script’ ini hazırlarken içerine eklemiş olduğum Get-WmiObject Win32_ComputerSystem parametresinden kaynaklı olarak ortaya çıkar. Böylelikle Mevcut makina ismi, mevcut etki alanını istemciler görebilsin diyedir.

Bu kısımda IT biriminin kullanıcı makinasına vereceği ismi kullanıcının girerek OK demesi gerekmektedir.

Makina isminin yeniden başlatıldıktan sonra değişeceğini belirtiyor. Bir sonraki GUI makinanın etki alanına katılmasını onaylamanız için karşınıza gelecektir. Bu kısımda “E” yazarak OK liyoruz.

Yeni makina ismimizi belirledik, etki alanımıza istemcimizi dahil ettik ve artık son olarak yeniden başlatılmasını onaylamak için gelen GUI’ ye “E” dedikten sonra OK diyerek istemcimizin yeniden başlamasını sağlıyoruz.

İstemci makinamız yeniden başlatıldıktan sonra baktığımızda istemcimiz etki alanımıza üye olduğunu görülebilmektedir.

Bu işlemlerin hepsi bir müşterimin isteği doğrultusunda gerçekleştirdiğim bir çözüm metodudur. Bu iş çerçevesinde IT personelinin iş yükünü olabildiğince hafifleterek operasyonel işlemi tamamen son kullanıcıya yaptırtmış bulunuyoruz.

Umarım sizlere faydalı olacaktır…

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Twitter Auto Publish Powered By : XYZScripts.com