प्रबंधित सेवा खाता (एमएसए ) एक विशेष प्रकार का सक्रिय निर्देशिका खाता है जिसका उपयोग सेवाओं, अनुप्रयोगों और निर्धारित कार्यों को सुरक्षित रूप से चलाने के लिए किया जा सकता है। मूल विचार यह है कि इन खातों का पासवर्ड पूरी तरह से सक्रिय निर्देशिका द्वारा प्रबंधित किया जाता है। 240 वर्णों की लंबाई वाला एक जटिल पासवर्ड उनके लिए स्वचालित रूप से उत्पन्न होता है, जो स्वचालित रूप से बदलता है (डिफ़ॉल्ट रूप से, प्रत्येक 30 दिनों में)। प्रमाणीकरण के लिए केवल Kerberos का उपयोग किया जाता है (कोई NTLM सुरक्षा समस्या नहीं), इंटरैक्टिव लॉगऑन की अनुमति नहीं है, पासवर्ड किसी को भी ज्ञात नहीं है और स्थानीय सिस्टम पर संग्रहीत नहीं है (आप LSASS सिस्टम प्रक्रिया से mimikatz या समान के साथ पासवर्ड नहीं निकाल सकते हैं) उपकरण)। इस तरह, एक सेवा या अप्राप्य कार्य शुरू करने के लिए, आपको AD में अलग-अलग सेवा उपयोगकर्ता बनाने और उनके पासवर्ड प्रबंधित करने की आवश्यकता नहीं है।
प्रबंधित सेवा खाते Windows Server 2008 R2 (ऑब्जेक्ट प्रकार msDS-ManagedServiceAccount
. में पेश किए गए थे ) उनकी मुख्य सीमा यह है कि ऐसे खाते का उपयोग केवल एक सर्वर पर किया जा सकता है (उन्हें क्लस्टर और एनएलबी सेवाओं में उपयोग नहीं किया जा सकता है)। इसलिए, Windows Server 2012 ने समूह प्रबंधित सेवा खाते/gMSA (प्रकार msDS-GroupManagedServiceAccount
पेश किया। ) जीएमएसए खातों का एक साथ कई मेजबानों पर उपयोग किया जा सकता है।
आइए सक्रिय निर्देशिका में सर्वर और वर्कस्टेशन पर सेवाओं और कार्यों को लॉन्च करने के लिए MSA और gMSA का उपयोग करने की सुविधाओं पर विचार करें।
MSA/gMSA सेवा खातों का उपयोग करने के लिए आवश्यकताएँ:
प्रबंधित सेवा खाता | समूह प्रबंधित सेवा खाता | |
AD डोमेन और वन कार्यात्मक स्तर | Windows Server 2008 R2 या नया | Windows Server 2012 या नया |
केडीसी | Microsoft कुंजी वितरण सेवा (KdsSvc) के साथ डोमेन नियंत्रक सक्षम | |
पावरशेल | सेवा AD खाते बनाने और प्रबंधित करने के लिए, आपको Windows PowerShell के लिए सक्रिय निर्देशिका मॉड्यूल स्थापित करना होगा | |
.नेट फ्रेमवर्क | .NET Framework 3.5 या नया सर्वर पर स्थापित होना चाहिए | |
समर्थित Windows संस्करण | Windows 7/Windows Server 2008 R2 या नया | Windows Server 2012/Windows 8 या नया |
कुंजी वितरण सेवा (KDS) कुंजी बनाएं
इससे पहले कि आप MSA/gMSA खाता बनाना शुरू करें, आपको एक बार का ऑपरेशन करना होगा और KDS रूट कुंजी बनाना होगा। ऐसा करने के लिए, डोमेन नियंत्रक पर निम्न पावरशेल कमांड चलाएँ (Microsoft कुंजी वितरण सेवाओं को स्थापित और चलाना होगा):
Add-KdsRootKey –EffectiveImmediately
इस मामले में, कुंजी बनाई जाती है और AD प्रतिकृति समाप्त होने के 10 घंटे बाद उपलब्ध हो जाती है।
टिप. परीक्षण वातावरण में तुरंत कुंजी का उपयोग करने के लिए, आप यह आदेश चला सकते हैं:Add-KdsRootKey –EffectiveTime ((get-date).addhours(-10))
सुनिश्चित करें कि KDS रूट कुंजी सफलतापूर्वक बनाई गई है:Get-KdsRootKey
केडीएस कुंजी की जांच के लिए कमांड का प्रयोग करें:
Test-KdsRootKey -KeyId (Get-KdsRootKey).KeyId
सक्रिय निर्देशिका में एक प्रबंधित MSA खाता कैसे बनाएं
AD में एक नया MSA प्रबंधित खाता बनाने के लिए, कमांड का उपयोग करें:
New-ADServiceAccount -Name msaMunSrv1 –RestrictToSingleComputer
डिफ़ॉल्ट रूप से, MSA और gMSA कंटेनर में बनाए जाते हैं CN=प्रबंधित सेवा खाते , लेकिन आप पथ . का उपयोग करके OU को बदल सकते हैं पैरामीटर।
अपने MSA सेवा खाते को लक्षित कंप्यूटर से लिंक करें:
$Identity = Get-ADComputer -identity mun-srv01
Add-ADComputerServiceAccount -Identity $identity -ServiceAccount msaMunSrv1
ADUC (सक्रिय निर्देशिका उपयोगकर्ता और कंप्यूटर) कंसोल खोलें और सुनिश्चित करें कि msDS-ManagedServiceAccount प्रकार का एक नया खाता प्रबंधित सेवा खाते में दिखाई दिया है कंटेनर (OU).
यह AD कंटेनर डिफ़ॉल्ट रूप से छिपा हुआ है। इसे देखने के लिए, उन्नत सुविधाएं सक्षम करें दृश्य . में स्नैप-इन का मेनू।
आप कमांड का उपयोग करके MSA खाते की जानकारी प्राप्त कर सकते हैं:
Get-ADServiceAccount msaMunSrv1
सक्रिय निर्देशिका में एक समूह प्रबंधित सेवा खाता (gMSA) बनाएं
जीएमएसए खाता बनाने से पहले, एक डोमेन सुरक्षा समूह बनाएं और उसमें सर्वर जोड़ें जिन्हें इस समूह सेवा खाते के लिए पासवर्ड का उपयोग करने की अनुमति होगी। समूह बनाने और पॉप्युलेट करने का सबसे आसान तरीका है PowerShell का उपयोग करना:New-ADGroup grMunSQL1 -path 'OU=Groups,OU=Munich,OU=DE,dc=woshub,DC=com' -GroupScope Global -PassThru –Verbose
Add-AdGroupMember -Identity grMunSQL1 -Members mun-sql01$, mun-sql02$, mun-sql03$
समूह प्रबंधित सेवा खाता (gMSA) बनाने के लिए, कमांड का उपयोग करें:
New-ADServiceAccount -name gmsaMunSQL1 -DNSHostName gmsaMunSQL1.woshub.com -PrincipalsAllowedToRetrieveManagedPassword grMunSQL1 –verbose
जीएमएसए खाता भी प्रबंधित सेवा खाते ओयू में डिफ़ॉल्ट रूप से बनाया जाता है।
Windows पर समूह प्रबंधित सेवा खाता स्थापित करना
लक्ष्य सर्वर या कार्यस्थानों पर MSA / gMSA सेवा खातों का उपयोग करने के लिए, आपको सबसे पहले सक्रिय निर्देशिका पावरशेल मॉड्यूल स्थापित करना होगा:
Add-WindowsFeature RSAT-AD-PowerShell
सर्वर पर MSA (gMSA) सेवा खाता स्थापित करें:
Install-ADServiceAccount -Identity gmsaMunSQL1
जांचें कि क्या सेवा खाता सही तरीके से स्थापित है:
Test-ADServiceAccount gmsaMunSQL1
यदि आदेश सत्य लौटाता है , सब कुछ ठीक से कॉन्फ़िगर किया गया है।
अगर आदेश
False
लौटाता है , सबसे अधिक संभावना है कि MSA खाता सर्वर पर स्थापित नहीं है या इस कंप्यूटर के पास इसका उपयोग करने की अनुमति नहीं है: <पूर्व>चेतावनी:प्रबंधित सेवा खाते gmsaMunSQL1 के लिए परीक्षण विफल रहा। यदि स्टैंडअलोन प्रबंधित सेवा खाता है, तो खाता सक्रिय निर्देशिका में किसी अन्य कंप्यूटर ऑब्जेक्ट से लिंक है। यदि समूह प्रबंधित सेवा खाता, या तो इस कंप्यूटर के पास समूह MSA का उपयोग करने की अनुमति नहीं है या यह कंप्यूटर gMSA के लिए आवश्यक सभी Kerberos एन्क्रिप्शन प्रकारों का समर्थन नहीं करता है।
आप यह सत्यापित करने के लिए मानक RunAs का उपयोग नहीं कर सकते हैं कि आपकी सेवाएँ और स्क्रिप्ट MSA सेवा खाते के अंतर्गत चल सकती हैं। इसके बजाय PsExec टूल का उपयोग करें (हमने आपको पहले दिखाया था कि NT Authority\System की ओर से कमांड प्रॉम्प्ट चलाने के लिए psexec का उपयोग कैसे करें)।
- व्यवस्थापक के रूप में कमांड प्रॉम्प्ट खोलें;
- आदेश चलाएँ:
PsExec64.exe -i -u woshub\gmsaMunSQL1$ -p ~ cmd.exe
पासवर्ड को ~ . से बदलें . इसका मतलब है कि पासवर्ड एडी से प्राप्त किया जाना चाहिए। - खुलने वाली cmd विंडो में,
whoami
चलाएँ यह सुनिश्चित करने के लिए आदेश कि कंसोल जीएमएसए खाते के अंतर्गत चल रहा है; - सत्यापित करें कि प्रबंधित सेवा खाते के अंतर्गत स्क्रिप्ट, प्रोग्राम या सेवाएं सही ढंग से चल रही हैं।
अब यह MSA/gMSA उपयोगकर्ता के रूप में चलाने के लिए आवश्यक Windows सेवाओं, कार्य अनुसूचक कार्यों, IIS पूल आदि को कॉन्फ़िगर करने के लिए बनी हुई है।
एक प्रबंधित सेवा खाते के अंतर्गत Windows सेवा कैसे चलाएँ?
अब आप MSA/gMSA खाते के अंतर्गत चलाने के लिए आवश्यक Windows सेवा को कॉन्फ़िगर कर सकते हैं।
- सेवा प्रबंधन कंसोल खोलें (
services.msc
); - आवश्यक सेवा के गुण खोलें और "लॉग ऑन . पर जाएं "टैब;
- यह खाता चुनें विकल्प और MSA खाते का नाम दर्ज करें। $ . जोड़ना सुनिश्चित करें खाता नाम के अंत में प्रतीक (आपको खाता पासवर्ड दर्ज करने की आवश्यकता नहीं है);
- MSA सेवा खाता स्वचालित रूप से प्रदान किया जाएगा एक सेवा के रूप में लॉग ऑन करें अनुमतियां;
- परिवर्तनों को सहेजने के बाद, सेवा को फिर से शुरू करना होगा।
प्रबंधित सेवा खाते/gMSA के साथ शेड्यूल किया गया कार्य चलाना
आप gMSA सेवा खाते के अंतर्गत कार्य चलाने के लिए Windows कार्य शेड्यूलर को कॉन्फ़िगर कर सकते हैं। यह सुविधाजनक है क्योंकि जीएमएसए खाते के पासवर्ड स्क्रिप्ट में संग्रहीत नहीं होते हैं, आपको उन्हें एन्क्रिप्ट या संरक्षित करने की आवश्यकता नहीं होती है। जब पासवर्ड बदलता है, तो आपको कार्य को फिर से कॉन्फ़िगर करने की आवश्यकता नहीं होती है।
MSA/gMSA खाते को अनुमति देने के लिए, इसे आवश्यक सुरक्षा समूह में जोड़ने के लिए पर्याप्त है। उदाहरण के लिए, स्थानीय व्यवस्थापक समूह, डोमेन व्यवस्थापक, DNS व्यवस्थापक, आदि।आप PowerShell का उपयोग करके gMSA खाते के रूप में चलाने के लिए कार्य को कॉन्फ़िगर कर सकते हैं। उदाहरण के लिए, निम्न स्क्रिप्ट एक नया शेड्यूल किया गया कार्य बनाएगी जो डेटाबेस का बैकअप लेने के लिए प्रतिदिन रात 11:00 बजे एक पावरशेल स्क्रिप्ट चलाती है:
$action = New-ScheduledTaskAction -Execute powershell.exe -Argument "-file C:\PS\Scripts\DBBackup.ps1 -executionpolicy bypass -NoProfile"
$trigger = New-ScheduledTaskTrigger -At 23:00 -Daily
$principal = New-ScheduledTaskPrincipal -UserID woshub\gmsaMunSQL1$ -LogonType Password
Register-ScheduledTask DBBackup –Action $action –Trigger $trigger –Principal $principal
टिप. शेड्यूल किए गए कार्य को चलाने के लिए, आपको जीएमएसए खाते को "बैच जॉब के रूप में लॉग ऑन करें देना होगा। " अनुमति।
'-LogonType Password
' तर्क निर्दिष्ट करता है कि इस जीएमएसए खाते के लिए पासवर्ड डोमेन नियंत्रक से पुनर्प्राप्त किया जाएगा।
आप taskschd.msc
. का उपयोग करके वांछित सेटिंग्स के साथ एक शेड्यूल्ड जॉब भी बना सकते हैं जीयूआई। फिर आप इसे प्रबंधित सेवा खाते के अंतर्गत चलाने के लिए schtasks.exe उपकरण का उपयोग करके पुन:कॉन्फ़िगर कर सकते हैं:
schtasks /Change /TN BackupDB /RU "woshub\gmsaMunSQL1$" /RP ""