- റിമോട്ടിംഗ് WinRM/WS-Man (HTTP/HTTPS) ഉപയോഗിക്കുന്നു, കൂടാതെ സുരക്ഷാ നിയന്ത്രണങ്ങളോടെ 1-to-1, 1-to-many, സ്ഥിരമായ സെഷനുകൾ അനുവദിക്കുന്നു.
- Enable-PSRemoting സേവനം, ശ്രോതാക്കൾ, ഫയർവാൾ എന്നിവ കോൺഫിഗർ ചെയ്യുന്നു; HTTPS-ന് സാധുവായ ഒരു സർട്ടിഫിക്കറ്റും CN/SAN പൊരുത്തവും ആവശ്യമാണ്.
- ഫലങ്ങൾ ഡിസീരിയലൈസ് ചെയ്ത് തിരികെ നൽകുന്നു; റിമോട്ട് സ്ക്രിപ്റ്റ്ബ്ലോക്കിനുള്ളിൽ രീതികൾ അഭ്യർത്ഥിക്കുകയും സൂക്ഷ്മമായ ഡെലിഗേഷനായി ഇഷ്ടാനുസൃത എൻഡ്പോയിന്റുകൾ ഉപയോഗിക്കുകയും ചെയ്യുന്നു.
നിങ്ങൾക്ക് ഇതിനകം തന്നെ പവർഷെൽ ഉപയോഗിച്ച് നിരവധി ജോലികൾ പ്രാദേശികമായി ഓട്ടോമേറ്റ് ചെയ്യാൻ കഴിഞ്ഞേക്കാം, എന്നാൽ നിങ്ങൾക്ക് യഥാർത്ഥത്തിൽ എവിടെയാണ് പവർഷെൽ റിമോട്ടിംഗ് വ്യത്യാസം വരുത്തുന്നു റിമോട്ട് മെഷീനുകളിൽ, കുറച്ച് അല്ലെങ്കിൽ നൂറുകണക്കിന് കമാൻഡുകൾ, ഇന്ററാക്ടീവ് ആയി അല്ലെങ്കിൽ സമാന്തരമായി പ്രവർത്തിപ്പിക്കുമ്പോഴാണ് ഇത് സംഭവിക്കുന്നത്. Windows PowerShell 2.0 മുതൽ ലഭ്യമായതും 3.0 മുതൽ മെച്ചപ്പെടുത്തിയതുമായ ഈ സാങ്കേതികവിദ്യ, WS-Management (WinRM) അടിസ്ഥാനമാക്കിയുള്ളതും പരിവർത്തനം ചെയ്യുന്നതുമാണ്. പവർഷെൽ ശക്തവും, വിപുലീകരിക്കാവുന്നതും, സുരക്ഷിതവുമായ ഒരു റിമോട്ട് മാനേജ്മെന്റ് ചാനലിൽ.
ഒന്നാമതായി, രണ്ട് പ്രധാന ആശയങ്ങൾ മനസ്സിലാക്കേണ്ടത് പ്രധാനമാണ്: cmdlets with -കമ്പ്യൂട്ടർനെയിം പാരാമീറ്റർ (ഉദാ., ഗെറ്റ്-പ്രോസസ് അല്ലെങ്കിൽ ഗെറ്റ്-സർവീസ്) മൈക്രോസോഫ്റ്റ് ശുപാർശ ചെയ്യുന്ന ദീർഘകാല പാതയല്ല, കൂടാതെ പവർഷെൽ റിമോട്ടിംഗ് ഒരു "ഹാക്ക്" ആയി പ്രവർത്തിക്കുന്നില്ല. വാസ്തവത്തിൽ, പരസ്പര പ്രാമാണീകരണം നടപ്പിലാക്കുന്നു, ക്രെഡൻഷ്യലുകൾ സൂക്ഷിക്കാതെയോ സൂപ്പർ പ്രിവിലേജുകളോടെ ഒന്നും മാന്ത്രികമായി പ്രവർത്തിപ്പിക്കാതെയോ, ഓഡിറ്റ് ലോഗുകൾ ചെയ്യുകയും നിങ്ങളുടെ പതിവ് അനുമതികളെ മാനിക്കുകയും ചെയ്യുന്നു.
പവർഷെൽ റിമോട്ടിംഗ് എന്താണ്, അത് എന്തിനാണ് ഉപയോഗിക്കുന്നത്?
കോൺ പവർഷെൽ റിമോട്ടിംഗ് നിങ്ങൾക്ക് കഴിയും മിക്കവാറും എല്ലാ കമാൻഡുകളും വിദൂരമായി നടപ്പിലാക്കുക ഒരു ലോക്കൽ സെഷനിൽ, ക്വറിയിംഗ് സർവീസുകൾ മുതൽ കോൺഫിഗറേഷനുകൾ വിന്യസിക്കുന്നത് വരെ, നൂറുകണക്കിന് കമ്പ്യൂട്ടറുകളിൽ ഒരേസമയം അങ്ങനെ ചെയ്യാൻ കഴിയും. -ComputerName (പലരും DCOM/RPC ഉപയോഗിക്കുന്നു) അംഗീകരിക്കുന്ന cmdlets-ൽ നിന്ന് വ്യത്യസ്തമായി, റിമോട്ടിംഗ് WS-Man (HTTP/HTTPS) വഴി സഞ്ചരിക്കുന്നു, ഫയർവാൾ-സൗഹൃദമായ ഇത്, ക്ലയന്റിലേക്കല്ല, റിമോട്ട് ഹോസ്റ്റിലേക്കാണ് സമാന്തരത്വവും ഓഫ്ലോഡുകളും പ്രവർത്തിക്കാൻ അനുവദിക്കുന്നത്.
ഇത് മൂന്ന് പ്രായോഗിക നേട്ടങ്ങളിലേക്ക് വിവർത്തനം ചെയ്യുന്നു: വമ്പിച്ച എക്സിക്യൂഷനുകളിൽ മികച്ച പ്രകടനം, നെറ്റ്വർക്കുകളിൽ കുറഞ്ഞ ഘർഷണം നിയന്ത്രണ നിയമങ്ങളും കെർബറോസ്/എച്ച്ടിടിപിഎസുമായി പൊരുത്തപ്പെടുന്ന സുരക്ഷാ മോഡലും. കൂടാതെ, ഓരോ സിഎംഡിലെറ്റിനെയും സ്വന്തം റിമോട്ട്, റിമോട്ടിംഗ് നടപ്പിലാക്കാൻ ആശ്രയിക്കാതെ ഏത് സ്ക്രിപ്റ്റിനും റോളിനും ഇത് പ്രവർത്തിക്കും. അത് ലക്ഷ്യസ്ഥാനത്ത് ലഭ്യമാണ്.
ഡിഫോൾട്ടായി, സമീപകാല വിൻഡോസ് സെർവറുകൾ റിമോട്ടിംഗ് പ്രവർത്തനക്ഷമമാക്കിയിരിക്കുന്നു; വിൻഡോസ് 10/11-ൽ നീ അത് സജീവമാക്കൂ ഒരൊറ്റ cmdlet ഉപയോഗിച്ച്. അതെ, നിങ്ങൾക്ക് ഇതര ക്രെഡൻഷ്യലുകൾ, സ്ഥിരമായ സെഷനുകൾ, ഇഷ്ടാനുസൃത എൻഡ്പോയിന്റുകൾ എന്നിവയും അതിലേറെയും ഉപയോഗിക്കാം.
കുറിപ്പ്: റിമോട്ടിംഗ് എന്നാൽ എല്ലാം തുറക്കുക എന്നല്ല. സ്ഥിരസ്ഥിതിയായി, കാര്യനിർവാഹകർ മാത്രം അവർക്ക് കണക്റ്റുചെയ്യാൻ കഴിയും, പ്രവർത്തനങ്ങൾ അവരുടെ ഐഡന്റിറ്റിക്ക് കീഴിലാണ് നടപ്പിലാക്കുന്നത്. നിങ്ങൾക്ക് സൂക്ഷ്മമായ ഡെലിഗേഷൻ ആവശ്യമുണ്ടെങ്കിൽ, അത്യാവശ്യ കമാൻഡുകൾ മാത്രം വെളിപ്പെടുത്താൻ കസ്റ്റം എൻഡ്പോയിന്റുകൾ നിങ്ങളെ അനുവദിക്കുന്നു.

ഇത് അകത്ത് എങ്ങനെ പ്രവർത്തിക്കുന്നു: WinRM, WS-Man, പോർട്ടുകൾ
പവർഷെൽ റിമോട്ടിംഗ് ഒരു ക്ലയന്റ്-സെർവർ മോഡലിലാണ് പ്രവർത്തിക്കുന്നത്. ക്ലയന്റ് WS-മാനേജ്മെന്റ് അഭ്യർത്ഥനകൾ അയയ്ക്കുന്നത് HTTP (5985/TCP) അല്ലെങ്കിൽ HTTPS (5986/TCP). ലക്ഷ്യത്തിൽ, വിൻഡോസ് റിമോട്ട് മാനേജ്മെന്റ് (WinRM) സേവനം കേൾക്കുകയും, എൻഡ്പോയിന്റ് (സെഷൻ കോൺഫിഗറേഷൻ) പരിഹരിക്കുകയും, പശ്ചാത്തലത്തിൽ പവർഷെൽ സെഷൻ ഹോസ്റ്റ് ചെയ്യുകയും ചെയ്യുന്നു (wsmprovhost.exe പ്രക്രിയ), സീരിയലൈസ് ചെയ്ത ഫലങ്ങൾ ക്ലയന്റിന് തിരികെ നൽകുന്നു SOAP വഴി XML-ൽ.
ആദ്യമായി റിമോട്ടിംഗ് പ്രാപ്തമാക്കുമ്പോൾ, ശ്രോതാക്കൾ കോൺഫിഗർ ചെയ്യപ്പെടുന്നു, ഉചിതമായ ഫയർവാൾ എക്സെപ്ഷൻ തുറക്കപ്പെടുന്നു, സെഷൻ കോൺഫിഗറേഷനുകൾ സൃഷ്ടിക്കപ്പെടുന്നു. പവർഷെൽ 6+ ൽ നിന്ന്, ഒന്നിലധികം പതിപ്പുകൾ ഒന്നിച്ച് നിലനിൽക്കുന്നു, കൂടാതെ പ്രാപ്തമാക്കുക-PSRemoting പതിപ്പിനെ പ്രതിഫലിപ്പിക്കുന്ന പേരുകൾ ഉപയോഗിച്ച് എൻഡ്പോയിന്റുകൾ രജിസ്റ്റർ ചെയ്യുന്നു (ഉദാഹരണത്തിന്, PowerShell.7, PowerShell.7.xy).
നിങ്ങളുടെ പരിതസ്ഥിതിയിൽ HTTPS മാത്രമേ അനുവദിക്കൂ എങ്കിൽ, നിങ്ങൾക്ക് ഒരു സൃഷ്ടിക്കാൻ കഴിയും സുരക്ഷിത ശ്രോതാവ് ഒരു വിശ്വസനീയ CA നൽകുന്ന സർട്ടിഫിക്കറ്റ് (ശുപാർശ ചെയ്യുന്നത്) ഉപയോഗിച്ച്. പകരമായി, വർക്ക്ഗ്രൂപ്പ് സാഹചര്യങ്ങൾക്കോ ഡൊമെയ്ൻ ഇതര കമ്പ്യൂട്ടറുകൾക്കോ വേണ്ടി പരിമിതവും അപകടസാധ്യതയെക്കുറിച്ചുള്ള അവബോധവുമുള്ള രീതിയിൽ TrustedHosts ഉപയോഗിക്കുക എന്നതാണ് മറ്റൊരു ബദൽ.
പവർഷെൽ റിമോട്ടിംഗിന് -ComputerName-നൊപ്പം cmdlets-നൊപ്പം സഹവർത്തിക്കാൻ കഴിയുമെന്ന് ശ്രദ്ധിക്കുക, പക്ഷേ മൈക്രോസോഫ്റ്റ് WS-Man നെ മുന്നോട്ട് നയിക്കുന്നു വിദൂര ഭരണനിർവ്വഹണത്തിനുള്ള സ്റ്റാൻഡേർഡ്, ഭാവി പ്രൂഫ് മാർഗമായി.
പവർഷെൽ റിമോട്ടിംഗും ഉപയോഗപ്രദമായ പാരാമീറ്ററുകളും പ്രവർത്തനക്ഷമമാക്കുന്നു
വിൻഡോസിൽ, അഡ്മിനിസ്ട്രേറ്ററായി പവർഷെൽ തുറന്ന് പ്രവർത്തിപ്പിക്കുക പ്രാപ്തമാക്കുക-PSRemoting. സിസ്റ്റം WinRM ആരംഭിക്കുന്നു, ഓട്ടോസ്റ്റാർട്ട് കോൺഫിഗർ ചെയ്യുന്നു, ലിസണർ പ്രാപ്തമാക്കുന്നു, ഉചിതമായ ഫയർവാൾ നിയമങ്ങൾ സൃഷ്ടിക്കുന്നു. ഒരു പൊതു നെറ്റ്വർക്ക് പ്രൊഫൈലുള്ള ക്ലയന്റുകളിൽ, നിങ്ങൾക്ക് ഇത് മനഃപൂർവ്വം അനുവദിക്കാം -സ്കിപ്പ്നെറ്റ്വർക്ക്പ്രൊഫൈൽചെക്ക് (തുടർന്ന് നിർദ്ദിഷ്ട നിയമങ്ങൾ ഉപയോഗിച്ച് ശക്തിപ്പെടുത്തുക):
Enable-PSRemoting
Enable-PSRemoting -Force
Enable-PSRemoting -SkipNetworkProfileCheck -Force
വാക്യഘടനയും അനുവദിക്കുന്നു, -സ്ഥിരീകരിക്കുക y -അങ്ങനെയെങ്കിൽ മാറ്റ നിയന്ത്രണത്തിനായി. ഓർമ്മിക്കുക: ഇത് വിൻഡോസിൽ മാത്രമേ ലഭ്യമാകൂ., കൂടാതെ നിങ്ങൾ എലവേറ്റഡ് കൺസോൾ പ്രവർത്തിപ്പിക്കണം. സൃഷ്ടിച്ച നിയമങ്ങൾ സെർവർ, ക്ലയന്റ് പതിപ്പുകൾക്കിടയിൽ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു, പ്രത്യേകിച്ച് പൊതു നെറ്റ്വർക്കുകളിൽ, നിങ്ങൾ സ്കോപ്പ് വികസിപ്പിക്കുന്നില്ലെങ്കിൽ സ്ഥിരസ്ഥിതിയായി അവ ലോക്കൽ സബ്നെറ്റിലേക്ക് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു (ഉദാഹരണത്തിന്, Set-NetFirewallRule ഉപയോഗിച്ച്).
ഇതിനകം റെക്കോർഡ് ചെയ്ത സെഷൻ കോൺഫിഗറേഷനുകൾ പട്ടികപ്പെടുത്തുന്നതിനും എല്ലാം തയ്യാറാണെന്ന് സ്ഥിരീകരിക്കുന്നതിനും, ഉപയോഗിക്കുക Get-PSSessionConfigurationPowerShell.x ഉം Workflow ഉം എൻഡ്പോയിന്റുകൾ ദൃശ്യമായാൽ, റിമോട്ടിംഗ് ഫ്രെയിംവർക്ക് പ്രവർത്തനക്ഷമമാണ്.

ഉപയോഗ രീതികൾ: 1 മുതൽ 1 വരെ, 1 മുതൽ നിരവധി വരെ, തുടർച്ചയായ സെഷനുകൾ
ഒരു കമ്പ്യൂട്ടറിൽ ഒരു ഇന്ററാക്ടീവ് കൺസോൾ ആവശ്യമുള്ളപ്പോൾ, ഇതിലേക്ക് തിരിയുക Enter-PSSessionപ്രോംപ്റ്റ് ദൃശ്യമാകും, നിങ്ങൾ എക്സിക്യൂട്ട് ചെയ്യുന്നതെല്ലാം റിമോട്ട് ഹോസ്റ്റിലേക്ക് പോകും. നിരന്തരം വീണ്ടും നൽകുന്നത് ഒഴിവാക്കാൻ നിങ്ങൾക്ക് Get-Credential ഉപയോഗിച്ച് ക്രെഡൻഷ്യലുകൾ വീണ്ടും ഉപയോഗിക്കാം:
$cred = Get-Credential
Enter-PSSession -ComputerName dc01 -Credential $cred
Exit-PSSession
നിങ്ങൾ അന്വേഷിക്കുന്നത് ഒരേസമയം നിരവധി കമ്പ്യൂട്ടറുകളിലേക്ക് കമാൻഡുകൾ അയയ്ക്കുക എന്നതാണെങ്കിൽ, ആ ഉപകരണം ഇൻവോക്ക്-കമാൻഡ് ഒരു സ്ക്രിപ്റ്റ്ബ്ലോക്ക് ഉപയോഗിച്ച്. ഡിഫോൾട്ടായി, ഇത് 32 കൺകറന്റ് കണക്ഷനുകൾ വരെ സമാരംഭിക്കുന്നു (-ThrottleLimit ഉപയോഗിച്ച് ക്രമീകരിക്കാവുന്നതാണ്). ഫലങ്ങൾ ഇങ്ങനെ തിരികെ നൽകുന്നു ഡിസീരിയലൈസ് ചെയ്ത വസ്തുക്കൾ (“ലൈവ്” രീതികൾ ഇല്ലാതെ):
Invoke-Command -ComputerName dc01,sql02,web01 -ScriptBlock { Get-Service -Name W32Time } -Credential $cred
.Stop() അല്ലെങ്കിൽ .Start() പോലുള്ള ഒരു മെത്തേഡ് ഇൻവോക്ക് ചെയ്യേണ്ടതുണ്ടോ? അത് ചെയ്യൂ. സ്ക്രിപ്റ്റ്ബ്ലോക്കിനുള്ളിൽ വിദൂര സന്ദർഭത്തിൽ, ലോക്കൽ ഡെസീരിയലൈസ് ചെയ്ത ഒബ്ജക്റ്റ് അല്ല, അത്രമാത്രം. തത്തുല്യമായ ഒരു cmdlet (സ്റ്റോപ്പ്-സർവീസ്/സ്റ്റാർട്ട്-സർവീസ്) ഉണ്ടെങ്കിൽ, വ്യക്തതയ്ക്കായി അത് ഉപയോഗിക്കുന്നതാണ് സാധാരണയായി നല്ലത്.
ഓരോ കോളിലും സെഷനുകൾ ആരംഭിക്കുന്നതിനും അവസാനിപ്പിക്കുന്നതിനുമുള്ള ചെലവ് ഒഴിവാക്കാൻ, ഒരു സ്ഥിരമായ PSS സെഷൻ ഒന്നിലധികം ഇൻവോക്കേഷനുകളിൽ ഇത് വീണ്ടും ഉപയോഗിക്കുക. കണക്ഷൻ സൃഷ്ടിക്കാൻ New-PSSession ഉപയോഗിക്കുക, ടണൽ വീണ്ടും ഉപയോഗിക്കാൻ Invoke-Command-Session ഉപയോഗിക്കുക. പൂർത്തിയാകുമ്പോൾ Remove-PSSession ഉപയോഗിച്ച് അത് അടയ്ക്കാൻ മറക്കരുത്.
സീരിയലൈസേഷൻ, പരിധികൾ, നല്ല രീതികൾ
ഒരു പ്രധാന വിശദാംശം: യാത്ര ചെയ്യുമ്പോൾ, വസ്തുക്കൾ "+പരന്നതായി" മാറുന്നു ഡിസീരിയലൈസ് ചെയ്ത സ്നാപ്പ്ഷോട്ടുകൾ, പ്രോപ്പർട്ടികൾ ഉള്ളതും എന്നാൽ രീതികളില്ലാത്തതുമാണ്. ഇത് മനഃപൂർവ്വം ചെയ്തതാണ്, ബാൻഡ്വിഡ്ത്ത് ലാഭിക്കുന്നു, എന്നാൽ ലോക്കൽ കോപ്പിയിൽ ലോജിക് (.Kill() പോലുള്ളവ) എക്സിക്യൂട്ട് ചെയ്യുന്ന അംഗങ്ങളെ നിങ്ങൾക്ക് ഉപയോഗിക്കാൻ കഴിയില്ല എന്നാണ് ഇതിനർത്ഥം. പരിഹാരം വ്യക്തമാണ്: ആ രീതികൾ അഭ്യർത്ഥിക്കുക. വിദൂരമായി നിങ്ങൾക്ക് ചില ഫീൽഡുകൾ മാത്രമേ ആവശ്യമുള്ളൂ എങ്കിൽ, കുറച്ച് ഡാറ്റ അയയ്ക്കാൻ Select-Object ഉപയോഗിച്ച് ഫിൽട്ടർ ചെയ്യുക.
സ്ക്രിപ്റ്റുകളിൽ, എന്റർ-പിഎസ്എസ്സെഷൻ (ഇന്ററാക്ടീവ് ഉപയോഗത്തിനായി ഉദ്ദേശിച്ചിട്ടുള്ളത്) ഒഴിവാക്കി സ്ക്രിപ്റ്റ് ബ്ലോക്കുകൾക്കൊപ്പം ഇൻവോക്ക്-കമാൻഡ് ഉപയോഗിക്കുക. നിങ്ങൾക്ക് ഒന്നിലധികം കോളുകൾ പ്രതീക്ഷിക്കുന്നുണ്ടെങ്കിൽ അല്ലെങ്കിൽ അവസ്ഥ സംരക്ഷിക്കേണ്ടതുണ്ടെങ്കിൽ (വേരിയബിളുകൾ, ഇറക്കുമതി ചെയ്ത മൊഡ്യൂളുകൾ), തുടർച്ചയായ സെഷനുകൾ ഉപയോഗിക്കുക കൂടാതെ, ബാധകമെങ്കിൽ, PowerShell 3.0+ ലെ Disconnect-PSSession/Connect-PSSession ഉപയോഗിച്ച് അവ വിച്ഛേദിക്കുക/വീണ്ടും ബന്ധിപ്പിക്കുക.
പ്രാമാണീകരണം, HTTPS, ഓഫ്-ഡൊമെയ്ൻ സാഹചര്യങ്ങൾ
ഒരു ഡൊമെയ്നിൽ, നേറ്റീവ് പ്രാമാണീകരണം എന്നത് കർബറോസ് എല്ലാം ശരിയായി നടക്കും. ഉപകരണത്തിന് സെർവർ നാമം പരിശോധിക്കാൻ കഴിയാത്തപ്പോൾ, അല്ലെങ്കിൽ നിങ്ങൾ ഒരു CNAME IP അല്ലെങ്കിൽ അപരനാമത്തിലേക്ക് കണക്റ്റുചെയ്യുമ്പോൾ, നിങ്ങൾക്ക് ഈ രണ്ട് ഓപ്ഷനുകളിൽ ഒന്ന് ആവശ്യമാണ്: 1) Listener സർട്ടിഫിക്കറ്റുള്ള HTTPS നിങ്ങൾക്ക് വിശ്വാസമുള്ള ഒരു CA നൽകുന്നതോ, അല്ലെങ്കിൽ 2) TrustedHosts-ലേക്ക് ലക്ഷ്യസ്ഥാനം (പേര് അല്ലെങ്കിൽ IP) ചേർക്കുന്നതും ക്രെഡൻഷ്യലുകൾ ഉപയോഗിക്കുകരണ്ടാമത്തെ ഓപ്ഷൻ ആ ഹോസ്റ്റിനുള്ള പരസ്പര പ്രാമാണീകരണം പ്രവർത്തനരഹിതമാക്കുന്നു, അതിനാൽ അത് സ്കോപ്പിനെ ആവശ്യമായ ഏറ്റവും കുറഞ്ഞതിലേക്ക് കുറയ്ക്കുന്നു.
ഒരു HTTPS ലിസണർ സജ്ജീകരിക്കുന്നതിന് ടീം സ്റ്റോറിൽ ഇൻസ്റ്റാൾ ചെയ്തതും WinRM-ലേക്ക് ബന്ധിപ്പിച്ചതുമായ ഒരു സർട്ടിഫിക്കറ്റ് (നിങ്ങളുടെ PKI-യിൽ നിന്നോ ഒരു പൊതു CA-യിൽ നിന്നോ ഉള്ളതായിരിക്കണം) ആവശ്യമാണ്. തുടർന്ന് പോർട്ട് 5986/TCP ഫയർവാളിൽ തുറക്കുകയും ക്ലയന്റിൽ നിന്ന് ഉപയോഗിക്കുകയും ചെയ്യുന്നു. -എസ്എസ്എൽ ഉപയോഗിക്കുക റിമോട്ട് cmdlets-ൽ. ക്ലയന്റ് സർട്ടിഫിക്കറ്റ് പ്രാമാണീകരണത്തിനായി, നിങ്ങൾക്ക് ഒരു സർട്ടിഫിക്കറ്റ് ഒരു ലോക്കൽ അക്കൗണ്ടിലേക്ക് മാപ്പ് ചെയ്യാനും കണക്റ്റുചെയ്യാനും കഴിയും. -സർട്ടിഫിക്കറ്റ്തമ്പ്പ്രിന്റ് (Enter-PSSession ഇത് നേരിട്ട് സ്വീകരിക്കുന്നില്ല; ആദ്യം New-PSSession ഉപയോഗിച്ച് സെഷൻ സൃഷ്ടിക്കുക.)
യോഗ്യതാപത്രങ്ങളുടെ രണ്ടാമത്തെ ഹോപ്പ് ആൻഡ് ഡെലിഗേഷൻ
ഒരു സെർവറിലേക്ക് കണക്റ്റുചെയ്തതിനുശേഷം, ആ സെർവർ ആക്സസ് ചെയ്യേണ്ടിവരുമ്പോൾ പ്രശസ്തമായ "ഡബിൾ ഹോപ്പ്" ദൃശ്യമാകുന്നു. മൂന്നാം ഉറവിടം നിങ്ങളുടെ പേരിൽ (ഉദാ. ഒരു SMB ഷെയർ). ഇത് അനുവദിക്കുന്നതിന് രണ്ട് സമീപനങ്ങളുണ്ട്: CredSSP, റിസോഴ്സ് അധിഷ്ഠിത കൺസ്ട്രൈന്റ്ഡ് കെർബറോസ് ഡെലിഗേഷൻ.
കോൺ CredSSP ക്ലയന്റിനെയും ഇടനിലക്കാരനെയും ക്രെഡൻഷ്യലുകൾ വ്യക്തമായി നിയോഗിക്കാൻ നിങ്ങൾ പ്രാപ്തരാക്കുന്നു, കൂടാതെ നിർദ്ദിഷ്ട കമ്പ്യൂട്ടറുകളിലേക്ക് നിയോഗിക്കാൻ അനുവദിക്കുന്നതിന് നിങ്ങൾ ഒരു നയം (GPO) സജ്ജമാക്കുന്നു. ഇത് വേഗത്തിൽ കോൺഫിഗർ ചെയ്യാൻ കഴിയും, പക്ഷേ എൻക്രിപ്റ്റ് ചെയ്ത ടണലിനുള്ളിൽ ക്രെഡൻഷ്യലുകൾ വ്യക്തമായ വാചകത്തിൽ സഞ്ചരിക്കുന്നതിനാൽ സുരക്ഷിതത്വം കുറവാണ്. എല്ലായ്പ്പോഴും ഉറവിടങ്ങളും ലക്ഷ്യസ്ഥാനങ്ങളും പരിമിതപ്പെടുത്തുക.
ഡൊമെയ്നിലെ ഇഷ്ടപ്പെട്ട ബദൽ ആണ് കെർബറോസ് പ്രതിനിധി സംഘം പരിമിതപ്പെടുത്തി ആധുനിക എഡിയിൽ (റിസോഴ്സ് അധിഷ്ഠിത കൺസ്ട്രൈൻഡ് ഡെലിഗേഷൻ). പ്രാരംഭ കണക്ഷനിൽ നിങ്ങളുടെ ഐഡന്റിറ്റി വെളിപ്പെടുത്തുന്നത് ഒഴിവാക്കിക്കൊണ്ട്, നിർദ്ദിഷ്ട സേവനങ്ങൾക്കായി മധ്യബിന്ദുവിൽ നിന്ന് ഡെലിഗേഷൻ സ്വീകരിക്കുന്നതിനെ ആശ്രയിക്കാൻ ഇത് എൻഡ്പോയിന്റിനെ അനുവദിക്കുന്നു. സമീപകാല ഡൊമെയ്ൻ കൺട്രോളറുകളും അപ്ഡേറ്റ് ചെയ്ത RSAT ഉം ആവശ്യമാണ്.
ഇഷ്ടാനുസൃത എൻഡ്പോയിന്റുകൾ (സെഷൻ കോൺഫിഗറേഷനുകൾ)
റിമോട്ടിങ്ങിന്റെ രത്നങ്ങളിലൊന്ന് കണക്ഷൻ പോയിന്റുകൾ രജിസ്റ്റർ ചെയ്യാൻ കഴിയുന്നതാണ് ഇഷ്ടാനുസൃതമാക്കിയ കഴിവുകളും പരിമിതികളും. ആദ്യം നിങ്ങൾ New-PSSessionConfigurationFile (പ്രീലോഡ് ചെയ്യാനുള്ള മൊഡ്യൂളുകൾ, ദൃശ്യമായ ഫംഗ്ഷനുകൾ, അപരനാമങ്ങൾ, ExecutionPolicy, LanguageMode, മുതലായവ) ഉപയോഗിച്ച് ഒരു ഫയൽ ജനറേറ്റ് ചെയ്യുക, തുടർന്ന് നിങ്ങൾ അത് Register-PSSessionConfiguration-ൽ രജിസ്റ്റർ ചെയ്യുക, അവിടെ നിങ്ങൾക്ക് സജ്ജമാക്കാൻ കഴിയും റൺഅസ്ക്രെഡൻഷ്യൽ അനുമതികളും (-ShowSecurityDescriptorUI ഉള്ള SDDL അല്ലെങ്കിൽ GUI ഇന്റർഫേസ്).
സുരക്ഷിത ഡെലിഗേഷനായി, -VisibleCmdlets/-VisibleFunctions ഉപയോഗിച്ച് ആവശ്യമുള്ളത് മാത്രം തുറന്നുകാട്ടുക, ഉചിതമെങ്കിൽ സൗജന്യ സ്ക്രിപ്റ്റിംഗ് പ്രവർത്തനരഹിതമാക്കുക. ഭാഷാ മോഡ് നിയന്ത്രിതഭാഷ അല്ലെങ്കിൽ NoLanguage. നിങ്ങൾ FullLanguage വിടുകയാണെങ്കിൽ, ആർക്കെങ്കിലും ഒരു സ്ക്രിപ്റ്റ് ബ്ലോക്ക് ഉപയോഗിച്ച് അൺഎക്സ്പോസ്ഡ് കമാൻഡുകൾ അഭ്യർത്ഥിക്കാൻ കഴിയും, അത് RunAs-മായി സംയോജിപ്പിച്ച്, അത് ഒരു ദ്വാരമായിരിക്കും. ഈ എൻഡ്പോയിന്റുകൾ ഒരു നേർത്ത പല്ലുള്ള ചീപ്പ് ഉപയോഗിച്ച് രൂപകൽപ്പന ചെയ്ത് അവയുടെ വ്യാപ്തി രേഖപ്പെടുത്തുക.
ഡൊമെയ്നുകൾ, GPO-കൾ, ഗ്രൂപ്പ്വെയർ
AD-യിൽ നിങ്ങൾക്ക് GPO ഉപയോഗിച്ച് സ്കെയിലിൽ പവർഷെൽ റിമോട്ടിംഗ് വിന്യസിക്കാൻ കഴിയും: WinRM ലിസണറുകളുടെ ഓട്ടോമാറ്റിക് കോൺഫിഗറേഷൻ അനുവദിക്കുക, സേവനം ഓട്ടോമാറ്റിക് ആയി സജ്ജമാക്കുക, ഫയർവാൾ എക്സെപ്ഷൻ സൃഷ്ടിക്കുക. GPO-കൾ ക്രമീകരണങ്ങൾ മാറ്റുമെന്ന് ഓർമ്മിക്കുക, പക്ഷേ അവ എല്ലായ്പ്പോഴും സേവനം തൽക്ഷണം ഓണാക്കില്ല; ചിലപ്പോൾ നിങ്ങൾ പുനരാരംഭിക്കുകയോ gpupdate നിർബന്ധിക്കുകയോ ചെയ്യേണ്ടതുണ്ട്.
വർക്ക്ഗ്രൂപ്പുകളിൽ (ഡൊമെയ്ൻ അല്ലാത്തത്), ഇതുപയോഗിച്ച് റിമോട്ടിംഗ് കോൺഫിഗർ ചെയ്യുക പ്രാപ്തമാക്കുക-PSRemoting, ക്ലയന്റിൽ TrustedHosts സജ്ജമാക്കുക (winrm set winrm/config/client @{TrustedHosts=»host1,host2″}) ലോക്കൽ ക്രെഡൻഷ്യലുകൾ ഉപയോഗിക്കുക. HTTPS-ന്, നിങ്ങൾക്ക് സ്വയം ഒപ്പിട്ട സർട്ടിഫിക്കറ്റുകൾ മൌണ്ട് ചെയ്യാൻ കഴിയും, എന്നിരുന്നാലും ഒരു വിശ്വസനീയ CA ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു, കൂടാതെ പേര് സാധൂകരിക്കുക സർട്ടിഫിക്കറ്റിലെ -ComputerName-ൽ നിങ്ങൾ ഉപയോഗിക്കുന്ന (CN/SAN പൊരുത്തം).
കീ cmdlets ഉം വാക്യഘടനയും
ഒരുപിടി കമാൻഡോകൾ ദൈനംദിന സാഹചര്യങ്ങളുടെ 90%സജീവമാക്കാൻ/നിർജ്ജീവമാക്കാൻ:
Enable-PSRemoting
Disable-PSRemoting
സംവേദനാത്മക സെഷൻ 1 മുതൽ 1 വരെ, പുറത്തുകടക്കുക:
Enter-PSSession -ComputerName SEC504STUDENT
Exit-PSSession
1 മുതൽ പല വരെ, സമാന്തരതയും യോഗ്യതകളും ഉപയോഗിച്ച്:
Invoke-Command -ComputerName dc01,sql02,web01 -ScriptBlock { Get-Service W32Time } -Credential $cred
തുടർച്ചയായ സെഷനുകൾ പുനരുപയോഗവും:
$s = New-PSSession -ComputerName localhost -ConfigurationName PowerShell.7
Invoke-Command -Session $s -ScriptBlock { $PSVersionTable }
Remove-PSSession $s
ടെസ്റ്റിംഗും WinRM-ഉം ഉപയോഗപ്രദം:
Test-WSMan -ComputerName host
winrm get winrm/config
winrm enumerate winrm/config/listener
winrm quickconfig -transport:https
ഫയർവാൾ, നെറ്റ്വർക്ക്, പോർട്ടുകൾ എന്നിവയെക്കുറിച്ചുള്ള പ്രായോഗിക കുറിപ്പുകൾ.
ലക്ഷ്യ കമ്പ്യൂട്ടറിൽ HTTP-യ്ക്കായി 5985/TCP ഉം HTTPS-നായി 5986/TCP ഉം തുറക്കുക. ഏതെങ്കിലും ഇന്റർമീഡിയറ്റ് ഫയർവാൾWindows ക്ലയന്റുകളിൽ, Enable-PSRemoting ഡൊമെയ്ൻ, സ്വകാര്യ പ്രൊഫൈലുകൾക്കായി നിയമങ്ങൾ സൃഷ്ടിക്കുന്നു; പൊതു പ്രൊഫൈലുകൾക്ക്, Set-NetFirewallRule -RemoteAddress Any (നിങ്ങളുടെ അപകടസാധ്യതയെ അടിസ്ഥാനമാക്കി നിങ്ങൾക്ക് വിലയിരുത്താൻ കഴിയുന്ന ഒരു മൂല്യം) ഉപയോഗിച്ച് സ്കോപ്പ് പരിഷ്കരിക്കുന്നില്ലെങ്കിൽ ഇത് ലോക്കൽ സബ്നെറ്റിലേക്ക് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു.
റിമോട്ട് കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുന്ന SOAR/SIEM സംയോജനങ്ങൾ നിങ്ങൾ ഉപയോഗിക്കുകയാണെങ്കിൽ (ഉദാ. XSOAR-ൽ നിന്ന്), സെർവറിന് ഉണ്ടെന്ന് ഉറപ്പാക്കുക DNS റെസല്യൂഷൻ ഹോസ്റ്റുകളിലേക്കുള്ള കണക്ഷൻ, 5985/5986 ലേക്കുള്ള കണക്റ്റിവിറ്റി, മതിയായ പ്രാദേശിക അനുമതികളുള്ള ക്രെഡൻഷ്യലുകൾ. ചില സന്ദർഭങ്ങളിൽ, NTLM/അടിസ്ഥാന പ്രാമാണീകരണത്തിന് ക്രമീകരണം ആവശ്യമായി വന്നേക്കാം (ഉദാ. SSL ഉള്ള ബേസിക്കിൽ ഒരു പ്രാദേശിക ഉപയോക്താവിനെ ഉപയോഗിക്കുന്നത്).
Enable-PSRemoting പാരാമീറ്ററുകൾ (പ്രവർത്തന സംഗ്രഹം)
-നിർവ്വഹണത്തിന് മുമ്പ് സ്ഥിരീകരണം ആവശ്യപ്പെടുന്നു; -ഫോഴ്സ് മുന്നറിയിപ്പുകൾ അവഗണിക്കുന്നു ആവശ്യമായ മാറ്റങ്ങൾ വരുത്തുക; -SkipNetworkProfileCheck പൊതു ക്ലയന്റ് നെറ്റ്വർക്കുകളിൽ റിമോട്ടിംഗ് പ്രാപ്തമാക്കുന്നു (സ്ഥിരസ്ഥിതിയായി ലോക്കൽ സബ്നെറ്റിലേക്ക് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു); -WhatIf മാറ്റങ്ങൾ പ്രയോഗിക്കാതെ എന്ത് സംഭവിക്കുമെന്ന് നിങ്ങളെ കാണിക്കുന്നു. കൂടാതെ, ഏതൊരു സ്റ്റാൻഡേർഡ് cmdlet പോലെ, ഇത് പിന്തുണയ്ക്കുന്നു പൊതു പാരാമീറ്ററുകൾ (-വെർബോസ്, -എറർ ആക്ഷൻ, മുതലായവ).
"Enable" നിങ്ങൾക്കായി HTTPS ലിസണറുകളോ സർട്ടിഫിക്കറ്റുകളോ സൃഷ്ടിക്കുന്നില്ലെന്ന് ഓർമ്മിക്കുക; തുടക്കം മുതൽ എൻഡ്-ടു-എൻഡ് എൻക്രിപ്ഷനും അടിസ്ഥാനമാക്കിയുള്ള പ്രാമാണീകരണവും നിങ്ങൾക്ക് ആവശ്യമുണ്ടെങ്കിൽ സർട്ടിഫിക്കറ്റുകൾ, HTTPS ലിസണർ കോൺഫിഗർ ചെയ്യുക, -ComputerName-ൽ നിങ്ങൾ ഉപയോഗിക്കുന്ന പേരിൽ CN/SAN സാധൂകരിക്കുക.
ഉപയോഗപ്രദമായ WinRM, PowerShell റിമോട്ടിംഗ് കമാൻഡുകൾ
ചിലത് കിടക്കയ്ക്കടുത്തുള്ള അവശ്യ വസ്തുക്കൾ ദൈനംദിന ജീവിതത്തിന്:
winrm get winrm/config
winrm enumerate winrm/config/listener
Set-NetFirewallRule -Name 'WINRM-HTTP-In-TCP' -RemoteAddress Any
Test-WSMan -ComputerName host -Authentication Default -Credential (Get-Credential)
New-PSSession -ComputerName host
Enter-PSSession -ComputerName host
Enable-PSRemoting -SkipNetworkProfileCheck -Force
വിൻഡോസ് സ്കെയിലിൽ കൈകാര്യം ചെയ്യുമ്പോൾ, "കമ്പ്യൂട്ടറിൽ നിന്ന് കമ്പ്യൂട്ടറിലേക്ക്" നിന്ന് ഒരു പ്രഖ്യാപനപരവും സുരക്ഷിതവുമായ സമീപനത്തിലേക്ക് മാറാൻ റിമോട്ടിംഗ് നിങ്ങളെ അനുവദിക്കുന്നു. സ്ഥിരമായ സെഷനുകൾ, ശക്തമായ പ്രാമാണീകരണം (കെർബറോസ്/എച്ച്ടിടിപിഎസ്), നിയന്ത്രിത എൻഡ്പോയിന്റുകൾ, ഡയഗ്നോസ്റ്റിക്സിനുള്ള വ്യക്തമായ ട്രെയ്സുകൾ എന്നിവ സംയോജിപ്പിക്കുന്നതിലൂടെ, നിങ്ങൾക്ക് വേഗതയും നിയന്ത്രണവും ലഭിക്കും. സുരക്ഷയോ ഓഡിറ്റിംഗോ ബലികഴിക്കാതെ. നിങ്ങൾ GPO ആക്ടിവേഷൻ സ്റ്റാൻഡേർഡ് ചെയ്യുകയും പ്രത്യേക കേസുകൾ (TrustedHosts, double hop, certificates) മാസ്റ്റർ ചെയ്യുകയും ചെയ്താൽ, ദൈനംദിന പ്രവർത്തനങ്ങൾക്കും സംഭവ പ്രതികരണത്തിനുമായി നിങ്ങൾക്ക് ഒരു സോളിഡ് റിമോട്ട് പ്ലാറ്റ്ഫോം ലഭിക്കും.
വ്യത്യസ്ത ഡിജിറ്റൽ മീഡിയയിൽ പത്തുവർഷത്തിലധികം അനുഭവപരിചയമുള്ള എഡിറ്റർ സാങ്കേതികവിദ്യയിലും ഇൻ്റർനെറ്റ് പ്രശ്നങ്ങളിലും വിദഗ്ധനാണ്. ഇ-കൊമേഴ്സ്, കമ്മ്യൂണിക്കേഷൻ, ഓൺലൈൻ മാർക്കറ്റിംഗ്, പരസ്യ കമ്പനികൾ എന്നിവയുടെ എഡിറ്ററായും ഉള്ളടക്ക സ്രഷ്ടാവായും ഞാൻ പ്രവർത്തിച്ചിട്ടുണ്ട്. സാമ്പത്തിക ശാസ്ത്രം, ധനകാര്യം, മറ്റ് മേഖലകളിലെ വെബ്സൈറ്റുകളിലും ഞാൻ എഴുതിയിട്ടുണ്ട്. എൻ്റെ ജോലിയും എൻ്റെ അഭിനിവേശമാണ്. ഇപ്പോൾ, എൻ്റെ ലേഖനങ്ങളിലൂടെ Tecnobits, നമ്മുടെ ജീവിതം മെച്ചപ്പെടുത്തുന്നതിനായി സാങ്കേതികവിദ്യയുടെ ലോകം എല്ലാ ദിവസവും നമുക്ക് നൽകുന്ന എല്ലാ വാർത്തകളും പുതിയ അവസരങ്ങളും പര്യവേക്ഷണം ചെയ്യാൻ ഞാൻ ശ്രമിക്കുന്നു.