แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒชแƒแƒขแƒ แƒฎแƒœแƒ˜แƒก แƒฌแƒ˜แƒœ แƒฉแƒ•แƒ”แƒœ แƒ“แƒแƒ’แƒ•แƒฎแƒ•แƒ“แƒ แƒ“แƒแƒ•แƒแƒšแƒ”แƒ‘แƒ, แƒ“แƒแƒ•แƒแƒ™แƒ•แƒ˜แƒ แƒ“แƒ”แƒ— แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ˜แƒก แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒก Windows แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ–แƒ”. แƒแƒ‘แƒ, แƒ แƒแƒ’แƒแƒ  แƒแƒ•แƒ“แƒ”แƒฅแƒ˜ แƒ›แƒแƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ แƒแƒช แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒฏแƒ”แƒ แƒ›แƒ” แƒ’แƒแƒ’แƒ แƒแƒ“ แƒ˜แƒฅแƒชแƒ, แƒกแƒฌแƒแƒ แƒ”แƒ“ แƒ˜แƒ› แƒ“แƒ แƒแƒก, แƒ แƒแƒชแƒ แƒ›แƒแƒ— แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒแƒ–แƒ” แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒฌแƒ•แƒ”แƒ แƒ˜แƒแƒœแƒ˜ แƒ™แƒแƒšแƒ”แƒ’แƒ แƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ”แƒ‘แƒแƒจแƒ˜ แƒ˜แƒงแƒ. แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ›แƒ” แƒ“แƒ แƒ›แƒแƒก แƒ แƒแƒฆแƒแƒช แƒ•แƒ”แƒญแƒ•แƒ˜แƒแƒœแƒแƒ‘แƒ“แƒ˜แƒ— แƒ“แƒ แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ”แƒ— แƒแƒ›แƒแƒ–แƒ” แƒ’แƒ•แƒ”แƒคแƒ˜แƒฅแƒ แƒ. แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ แƒฉแƒ•แƒ”แƒœ แƒœแƒ”แƒš-แƒœแƒ”แƒšแƒ แƒ•แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ— NetXMS แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก, แƒ˜แƒก แƒ’แƒแƒฎแƒ“แƒ แƒแƒ› แƒแƒ›แƒแƒชแƒแƒœแƒ˜แƒก แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒ“แƒ แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒจแƒ˜ แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ™แƒแƒœแƒ“แƒ˜แƒ“แƒแƒขแƒ˜.

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒคแƒแƒ แƒ›แƒแƒจแƒ˜:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ’แƒ แƒซแƒ”แƒšแƒ“แƒ”แƒ‘แƒ.

แƒฌแƒแƒ“แƒ˜. NetXMS-แƒจแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜ แƒ•แƒแƒ“แƒแƒ’แƒแƒกแƒฃแƒšแƒ˜ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒกแƒ” แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜ แƒ›แƒ˜แƒกแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒฌแƒแƒ“แƒ”แƒ‘แƒšแƒแƒ“. แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, Powershell-แƒ–แƒ” แƒ”แƒก แƒแƒ แƒ˜แƒก Windows. แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ›แƒ แƒฃแƒœแƒ“แƒ แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜, แƒแƒ˜แƒฆแƒแƒก แƒ›แƒแƒ—แƒ˜ แƒ•แƒแƒ แƒ’แƒ˜แƒกแƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒก แƒ•แƒแƒ“แƒ แƒ“แƒฆแƒ”แƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒ’แƒแƒ“แƒแƒกแƒชแƒ”แƒก แƒ”แƒก แƒœแƒแƒ›แƒ”แƒ แƒ˜ NetXMS-แƒก. แƒ›แƒ˜แƒกแƒ˜ แƒแƒ’แƒ”แƒœแƒขแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—. แƒกแƒฌแƒแƒ แƒ”แƒ“ แƒแƒฅแƒ”แƒ“แƒแƒœ แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ—.

แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ”แƒ แƒ—แƒ˜, แƒฃแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒกแƒ˜. แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ— แƒ“แƒฆแƒ”แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒแƒ›แƒ“แƒ” แƒฃแƒแƒฎแƒšแƒแƒ”แƒกแƒ˜ แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒ—.

แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› NetXMS แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ›แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒก แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘, แƒ›แƒแƒœ แƒ˜แƒก แƒฃแƒœแƒ“แƒ แƒ›แƒ˜แƒ˜แƒฆแƒแƒก แƒแƒ’แƒ”แƒœแƒขแƒ˜แƒกแƒ’แƒแƒœ. แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒแƒ› แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ›แƒ˜แƒกแƒ˜ แƒแƒ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒแƒ’แƒ”แƒœแƒขแƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒจแƒ˜ nxagentd.conf แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ— แƒ’แƒแƒ แƒ” แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ”.แƒฌ HTTPS.CertificateExpireDateSimple, แƒ แƒแƒ›แƒ”แƒšแƒจแƒ˜แƒช แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ แƒ”แƒ’แƒ˜แƒกแƒขแƒ แƒ˜แƒ แƒ”แƒ‘แƒ— แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒแƒก:

ExternalParameter = HTTPS.CertificateExpireDateSimple: powershell.exe -File "servershareNetXMS_CertExpireDateSimple.ps1"

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ› แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒฅแƒกแƒ”แƒšแƒจแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒ— แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒ“แƒ แƒแƒกแƒ”แƒ•แƒ” แƒแƒ  แƒ“แƒแƒ’แƒแƒ•แƒ˜แƒฌแƒงแƒ“แƒ”แƒ— แƒกแƒฎแƒ•แƒ โ€ž-NoLogo -NoProfile -NonInteractiveโ€œ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ” แƒ’แƒแƒ›แƒแƒ•แƒขแƒแƒ•แƒ” แƒ™แƒแƒ“แƒ˜แƒก แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, แƒแƒ’แƒ”แƒœแƒขแƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ:

#
# NetXMS agent configuration file
# Created by agent installer at Thu Jun 13 11:24:43 2019
#
 
MasterServers = netxms.corp.testcompany.ru
ConfigIncludeDir = C:NetXMSetcnxagentd.conf.d
LogFile = {syslog}
FileStore = C:NetXMSvar
SubAgent = ecs.nsm
SubAgent = filemgr.nsm
SubAgent = ping.nsm
SubAgent = logwatch.nsm
SubAgent = portcheck.nsm
SubAgent = winperf.nsm
SubAgent = wmi.nsm
 
ExternalParameter = HTTPS.CertificateExpireDateSimple: powershell.exe -File "servershareNetXMS_CertExpireDateSimple.ps1"

แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒ˜แƒœแƒแƒฎแƒแƒ— แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ“แƒ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒแƒ’แƒ”แƒœแƒขแƒ˜. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— NetXMS แƒ™แƒแƒœแƒกแƒแƒšแƒ˜แƒ“แƒแƒœ: แƒ’แƒแƒฎแƒกแƒ”แƒœแƒ˜แƒ— แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ (Edit agent's configuration file), แƒ“แƒแƒแƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ—, แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒ”แƒ— Save&Apply, แƒ แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“แƒแƒช, แƒคแƒแƒฅแƒขแƒแƒ‘แƒ แƒ˜แƒ•แƒแƒ“, แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒ›แƒแƒฎแƒ“แƒ”แƒ‘แƒ. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒ”แƒ— แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ (แƒ’แƒแƒ›แƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ > แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ), แƒ—แƒฃ แƒšแƒแƒ“แƒ˜แƒœแƒ˜แƒก แƒซแƒแƒšแƒ แƒกแƒแƒ”แƒ แƒ—แƒแƒ“ แƒแƒ  แƒ’แƒแƒฅแƒ•แƒ—. แƒแƒ› แƒœแƒแƒ‘แƒ˜แƒฏแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒซแƒšแƒแƒ— แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ.

NetXMS แƒ™แƒแƒœแƒกแƒแƒšแƒจแƒ˜ แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒ— แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒจแƒ”แƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ”แƒฅแƒกแƒžแƒ”แƒ แƒ˜แƒ›แƒ”แƒœแƒขแƒฃแƒšแƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ–แƒ”แƒช แƒ•แƒแƒžแƒ˜แƒ แƒ”แƒ‘แƒ— แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒก แƒ“แƒ แƒ˜แƒฅ แƒแƒฎแƒแƒšแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก (แƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜, แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ–แƒ” แƒ’แƒแƒ“แƒแƒขแƒแƒœแƒแƒก). แƒแƒ˜แƒ แƒฉแƒ˜แƒ”แƒ— HTTPS.CertificateExpireDateSimple แƒกแƒ˜แƒ˜แƒ“แƒแƒœ, แƒจแƒ”แƒ˜แƒงแƒ•แƒแƒœแƒ”แƒ— แƒแƒฆแƒฌแƒ”แƒ แƒ แƒ›แƒ™แƒแƒคแƒ˜แƒ แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒ—, แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— แƒขแƒ˜แƒžแƒ˜ แƒ›แƒ—แƒ”แƒš แƒ แƒ˜แƒชแƒฎแƒ•แƒ–แƒ” แƒ“แƒ แƒ“แƒแƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒ”แƒ— แƒ™แƒ”แƒœแƒญแƒ˜แƒกแƒงแƒ แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒ•แƒแƒšแƒ˜. แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ›แƒ˜แƒ–แƒœแƒ˜แƒ—, แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก, แƒ แƒแƒ› แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒ›แƒแƒ™แƒšแƒ” แƒ˜แƒงแƒแƒก, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, 30 แƒฌแƒแƒ›แƒ˜. แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ›แƒ–แƒแƒ“แƒแƒ, แƒฏแƒ”แƒ  แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜แƒ.

แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒแƒ—... แƒแƒ แƒ, แƒฏแƒ”แƒ  แƒแƒ“แƒ แƒ”แƒ. แƒแƒฎแƒšแƒ, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒ•แƒ”แƒ แƒแƒคแƒ”แƒ แƒก แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ—. แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ˜แƒ›แƒ˜แƒขแƒแƒ›, แƒ แƒแƒ› แƒกแƒชแƒ”แƒœแƒแƒ แƒ˜ แƒฏแƒ”แƒ  แƒแƒ  แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ. แƒ’แƒแƒ›แƒแƒ•แƒแƒกแƒฌแƒแƒ แƒแƒ— แƒ”แƒก แƒ’แƒแƒ›แƒแƒขแƒแƒ•แƒ”แƒ‘แƒ. แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ แƒ˜แƒชแƒฎแƒ•แƒก, แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒแƒ›แƒแƒฌแƒฃแƒ แƒ•แƒแƒ›แƒ“แƒ” แƒ“แƒแƒ แƒฉแƒ”แƒœแƒ˜แƒšแƒ˜ แƒ“แƒฆแƒ”แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒแƒก. แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜. แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜:

try {
    # ะŸะพะปัƒั‡ะฐะตะผ ะฒัะต ัะตั€ั‚ะธั„ะธะบะฐั‚ั‹ ะธะท ั…ั€ะฐะฝะธะปะธั‰ะฐ ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ
    $lmCertificates = @( Get-ChildItem -Recurse -path 'Cert:LocalMachineMy' -ErrorAction Stop )
     
    # ะ•ัะปะธ ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ ะฝะตั‚, ะฒะตั€ะฝัƒั‚ัŒ "10 ะปะตั‚"
    if ($lmCertificates.Count -eq 0) { return 3650 }
 
    # ะŸะพะปัƒั‡ะฐะตะผ Expiration Date ะฒัะตั… ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ
    $expirationDates = @( $lmCertificates | ForEach-Object { return $_.NotAfter } )
 
    # ะŸะพะปัƒั‡ะฐะตะผ ะฝะฐะธะฑะพะปะตะต ะฑะปะธะทะบะธะน Expiration Date ะธะท ะฒัะตั…
    $minExpirationDate = ($expirationDates | Measure-Object -Minimum -ErrorAction Stop ).Minimum
 
    # ะšะพะฝะฒะตั€ั‚ะธั€ัƒะตะผ ะฝะฐะธะฑะพะปะตะต ะฑะปะธะทะบะธะน Expiration Date ะฒ ะบะพะปะธั‡ะตัั‚ะฒะพ ะพัั‚ะฐะฒัˆะธั…ัั ะดะฝะตะน ั ะพะบั€ัƒะณะปะตะฝะธะตะผ ะฒ ะผะตะฝัŒัˆัƒัŽ ัั‚ะพั€ะพะฝัƒ
    $daysLeft = [Math]::Floor( ($minExpirationDate - [DateTime]::Now).TotalDays )
 
    # ะ’ะพะทะฒั€ะฐั‰ะฐะตะผ ะทะฝะฐั‡ะตะฝะธะต
    return $daysLeft
}
catch {
    return -1
}

แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ“แƒ˜แƒก:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒแƒ›แƒแƒฌแƒฃแƒ แƒ•แƒแƒ›แƒ“แƒ” แƒ“แƒแƒ แƒฉแƒ 723 แƒ“แƒฆแƒ”, แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒแƒ แƒ˜ แƒฌแƒ”แƒšแƒ˜. แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜แƒ, แƒ แƒแƒ“แƒ’แƒแƒœ แƒชแƒแƒขแƒ แƒฎแƒœแƒ˜แƒก แƒฌแƒ˜แƒœ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒ•แƒชแƒ” แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜ Exchange แƒขแƒ”แƒกแƒขแƒ˜แƒก แƒกแƒ™แƒแƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒ˜แƒงแƒ. แƒแƒšแƒ‘แƒแƒ—, แƒ•แƒ˜แƒœแƒ›แƒ” แƒแƒ›แƒ˜แƒ— แƒ“แƒแƒ™แƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒ”แƒขแƒ˜ แƒ’แƒ•แƒ˜แƒœแƒ“แƒแƒ“แƒ. แƒฉแƒ•แƒ”แƒœ แƒ“แƒแƒ•แƒแƒ•แƒแƒšแƒ”แƒ—, แƒ แƒแƒ› แƒ›แƒแƒ•แƒ˜แƒžแƒแƒ•แƒแƒ— แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ–แƒ” แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒกแƒ˜แƒ, แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ— แƒ“แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ›แƒ แƒ•แƒœแƒแƒฎแƒแƒ— แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒแƒ›แƒแƒฌแƒฃแƒ แƒ•แƒแƒ›แƒ“แƒ” แƒ“แƒแƒ แƒฉแƒ”แƒœแƒ˜แƒšแƒ˜ แƒ“แƒฆแƒ”แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ.

แƒ›แƒ”แƒแƒ แƒ” แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜, แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒฌแƒ˜แƒšแƒแƒ“ แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜.

แƒฉแƒ•แƒ”แƒœ แƒ™แƒ•แƒšแƒแƒ• แƒ•แƒแƒกแƒฌแƒแƒ แƒ”แƒ‘แƒ— แƒแƒ’แƒ”แƒœแƒขแƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒก แƒ“แƒ แƒ˜แƒฅ, ExternalParameter-แƒ˜แƒก แƒฎแƒแƒ–แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“, แƒ•แƒฌแƒ”แƒ แƒ— แƒแƒ  แƒกแƒฎแƒ•แƒแƒก:

ExternalList = HTTPS.CertificateNames: powershell.exe -File "serversharenetxms_CertExternalNames.ps1"
ExternalParameter = HTTPS.CertificateExpireDate(*): powershell.exe -File "serversharenetxms_CertExternalParameter.ps1" -CertificateId "$1"

ะ’ แƒ’แƒแƒ แƒ” แƒกแƒ˜แƒ แƒฉแƒ•แƒ”แƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒก. แƒฉแƒ•แƒ”แƒœแƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒ—. แƒฉแƒ•แƒ”แƒœ แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒแƒ› แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒกแƒ˜แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ - HTTPS.CertificateNames.

แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ NetXMS_CertNames.ps1:

#ะกะฟะธัะพะบ ะฒะพะทะผะพะถะฝั‹ั… ะธะผะตะฝ ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ
$nameTypeList = @(
        [System.Security.Cryptography.X509Certificates.X509NameType]::SimpleName,
        [System.Security.Cryptography.X509Certificates.X509NameType]::DnsName,
        [System.Security.Cryptography.X509Certificates.X509NameType]::DnsFromAlternativeName,
        [System.Security.Cryptography.X509Certificates.X509NameType]::UrlName,
        [System.Security.Cryptography.X509Certificates.X509NameType]::EmailName,
        [System.Security.Cryptography.X509Certificates.X509NameType]::UpnName
)
 
#ะ˜ั‰ะตะผ ะฒัะต ัะตั€ั‚ะธั„ะธะบะฐั‚ั‹, ะธะผะตัŽั‰ะธะต ะทะฐะบั€ั‹ั‚ั‹ะน ะบะปัŽั‡
$certList = @( Get-ChildItem -Path 'Cert:LocalMachineMy' | Where-Object { $_.HasPrivateKey -eq $true } )
 
#ะŸั€ะพั…ะพะดะธะผ ะฟะพ ัะฟะธัะบัƒ ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ, ั„ะพั€ะผะธั€ัƒะตะผ ัั‚ั€ะพะบัƒ "ะ˜ะผั ัะตั€ั‚ะธั„ะธะบะฐั‚ะฐ - ะ”ะฐั‚ะฐ - Thumbprint" ะธ ะฒะพะทะฒั€ะฐั‰ะฐะตะผ ะตั‘
foreach ($cert in $certList) {
    $name = '(unknown name)'
    try {
        $thumbprint = $cert.Thumbprint
        $dateExpire = $cert.NotAfter
        foreach ($nameType in $nameTypeList) {
            $name_temp = $cert.GetNameInfo( $nameType, $false)
            if ($name_temp -ne $null -and $name_temp -ne '') {
                $name = $name_temp;
                break;
            }
        }
        Write-Output "$($name) - $($dateExpire.ToString('dd.MM.yyyy')) - [T:$($thumbprint)]"
    }
    catch {
        Write-Error -Message "Error processing certificate list: $($_.Exception.Message)"
    }
}

แƒ“แƒ แƒฃแƒ™แƒ•แƒ” แƒจแƒ˜แƒ’แƒœแƒ˜แƒ— แƒ’แƒแƒ แƒ” แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ•แƒ˜แƒงแƒ•แƒแƒœแƒ— แƒ แƒ˜แƒ’แƒ”แƒ‘แƒก ExternalList แƒกแƒ˜แƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒ’แƒแƒ›แƒแƒกแƒแƒ•แƒแƒšแƒ–แƒ” แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒ“แƒฆแƒ”แƒ”แƒ‘แƒ˜แƒก แƒ”แƒ แƒ—แƒกแƒ แƒ“แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ˜แƒ“แƒ”แƒœแƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒแƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒชแƒ”แƒ แƒ แƒแƒœแƒแƒ‘แƒ”แƒญแƒ“แƒ˜. แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› HTTPS.CertificateExpireDate แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ•แƒแƒ แƒกแƒ™แƒ•แƒšแƒแƒ•แƒก (*) แƒแƒ› แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒจแƒ˜. แƒ”แƒก แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒ›แƒแƒœ แƒ›แƒ˜แƒ˜แƒฆแƒแƒก แƒ’แƒแƒ แƒ” แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒ˜, แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฉแƒ•แƒ”แƒœแƒ˜ CertificateId.

แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ NetXMS_CertExpireDate.ps1:

#ะžะฟั€ะตะดะตะปัะตะผ ะฒั…ะพะดัั‰ะธะน ะฟะฐั€ะฐะผะตั‚ั€ $CertificateId
param (
    [Parameter(Mandatory=$false)]
    [String]$CertificateId
)
 
#ะŸั€ะพะฒะตั€ะบะฐ ะฝะฐ ััƒั‰ะตัั‚ะฒะพะฒะฐะฝะธะต
if ($CertificateId -eq $null) {
    Write-Error -Message "CertificateID parameter is required!"
    return
}
 
#ะŸะพ Thumbprint ะธะท ัั‚ั€ะพะบะธ ะฒ $CertificateId ะธั‰ะตะผ ัะตั€ั‚ะธั„ะธะบะฐั‚ ะธ ะพะฟั€ะตะดะตะปัะตะผ ะตะณะพ Expiration Date 
$certId = $CertificateId;
try {
    if ($certId -match '^.*[T:(?<Thumbprint>[A-Z0-9]+)]$') {
        $thumbprint = $Matches['Thumbprint']
        $certificatePath = "Cert:LocalMachineMy$($thumbprint)"
         
        if (Test-Path -PathType Leaf -Path $certificatePath ) {
            $certificate = Get-Item -Path $certificatePath;
            $certificateExpirationDate = $certificate.NotAfter
            $certificateDayToLive = [Math]::Floor( ($certificateExpirationDate - [DateTime]::Now).TotalDays )
            Write-Output "$($certificateDayToLive)";
        }
        else {
            Write-Error -Message "No certificate matching this thumbprint found on this server $($certId)"
        }
    }
    else {
        Write-Error -Message "CertificateID provided in wrong format. Must be FriendlyName [T:<thumbprint>]"
    }
}
catch {
    Write-Error -Message "Error while executing script: $($_.Exception.Message)"
}

แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒจแƒ”แƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒจแƒ˜ แƒฉแƒ•แƒ”แƒœ แƒ•แƒฅแƒ›แƒœแƒ˜แƒ— แƒแƒฎแƒแƒš แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒก. แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒจแƒ˜ แƒ•แƒ˜แƒ แƒฉแƒ”แƒ•แƒ— แƒฉแƒ•แƒ”แƒœแƒก HTTPS.CertificateExpireDate(*) แƒกแƒ˜แƒ˜แƒ“แƒแƒœ แƒ“แƒ (แƒงแƒฃแƒ แƒแƒ“แƒฆแƒ”แƒ‘แƒ!) แƒจแƒ”แƒชแƒ•แƒแƒšแƒ”แƒ— แƒ•แƒแƒ แƒกแƒ™แƒ•แƒšแƒแƒ•แƒ˜ {แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜}. แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ›แƒแƒ’แƒชแƒ”แƒ›แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒชแƒแƒšแƒ™แƒ” แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ˜แƒœแƒกแƒขแƒแƒœแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜). แƒ“แƒแƒœแƒแƒ แƒฉแƒ”แƒœแƒ˜ แƒ˜แƒ•แƒกแƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ˜แƒœแƒ แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒจแƒ˜:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ˜แƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ, Instance Discovery แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ” แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒแƒ˜แƒ แƒฉแƒ˜แƒแƒ— Agent List แƒกแƒ˜แƒ˜แƒ“แƒแƒœ แƒ“แƒ List Name แƒ•แƒ”แƒšแƒจแƒ˜ แƒจแƒ”แƒ˜แƒงแƒ•แƒแƒœแƒ”แƒ— แƒฉแƒ•แƒ”แƒœแƒ˜ ExternalList-แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒ“แƒแƒœ - HTTPS.CertificateNames.

แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒ›แƒ–แƒแƒ“แƒแƒ, แƒ›แƒแƒ˜แƒชแƒแƒ“แƒ” แƒชแƒแƒขแƒ แƒแƒœ แƒแƒ˜แƒซแƒฃแƒšแƒ” แƒ’แƒแƒ›แƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ > แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ > แƒ˜แƒœแƒกแƒขแƒแƒœแƒชแƒ˜แƒ˜แƒก แƒแƒฆแƒ›แƒแƒฉแƒ”แƒœแƒ, แƒ—แƒฃ แƒšแƒแƒ“แƒ˜แƒœแƒ˜ แƒกแƒ แƒฃแƒšแƒ˜แƒแƒ“ แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ. แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒงแƒ•แƒ”แƒšแƒ แƒฉแƒ•แƒ”แƒœแƒก แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒก แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒ—:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แฒ แƒ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ? แƒฐแƒแƒ“แƒ, แƒ›แƒฎแƒแƒšแƒแƒ“ แƒžแƒ”แƒ แƒคแƒ”แƒฅแƒชแƒ˜แƒแƒœแƒ˜แƒ–แƒ›แƒ˜แƒก แƒญแƒ˜แƒ แƒกแƒ”แƒ•แƒ“แƒ˜แƒแƒœแƒ˜ แƒ—แƒ•แƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒฃแƒงแƒฃแƒ แƒ”แƒ‘แƒก แƒ“แƒแƒฎแƒšแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ–แƒ” แƒแƒ› แƒ–แƒ”แƒ“แƒ›แƒ”แƒข แƒชแƒ”แƒ แƒก แƒ“แƒ แƒแƒ  แƒ›แƒแƒซแƒšแƒ”แƒ•แƒก แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒก. แƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒแƒฎแƒแƒ“ แƒ™แƒ•แƒšแƒแƒ• แƒ’แƒแƒฎแƒกแƒ”แƒœแƒ˜แƒ— แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜แƒก แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ“แƒ Instance Discovery แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ” โ€žแƒ˜แƒœแƒกแƒขแƒแƒœแƒชแƒ˜แƒ˜แƒก แƒแƒฆแƒ›แƒแƒฉแƒ”แƒœแƒ˜แƒก แƒคแƒ˜แƒšแƒขแƒ แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒกโ€œ แƒ•แƒ”แƒšแƒจแƒ˜ แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ— NXSL (NetXMS แƒจแƒ˜แƒ“แƒ แƒ”แƒœแƒ) แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜:

instance = $1;
 if (instance ~= "^(.*)s-s[T:[a-zA-Z0-9]+]$")
 {
 return %(true, instance, $1);
 }
 return true;

แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒคแƒ˜แƒšแƒขแƒ แƒแƒ•แƒก แƒ—แƒ˜แƒ—แƒ˜แƒก แƒแƒœแƒแƒ‘แƒ”แƒญแƒ“แƒก:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ“แƒ แƒ’แƒแƒคแƒ˜แƒšแƒขแƒ แƒฃแƒšแƒ˜ แƒกแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒ•แƒ”แƒšแƒจแƒ˜ แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ” แƒจแƒ”แƒชแƒ•แƒแƒšแƒ”แƒ— CertificateExpireDate: {instance} Certificate ExpireDate: {instance-name}:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ”แƒกแƒ” แƒ˜แƒ’แƒ˜, แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ KDPV-แƒ“แƒแƒœ:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒกแƒ˜แƒšแƒแƒ›แƒแƒ–แƒ” แƒแƒ แƒแƒ?

แƒ แƒฉแƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ˜แƒกแƒ”, แƒ แƒแƒ› แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ›แƒ˜แƒ•แƒ˜แƒ“แƒœแƒ”แƒœ แƒ”แƒšแƒ”แƒฅแƒขแƒ แƒแƒœแƒฃแƒšแƒ˜ แƒคแƒแƒกแƒขแƒ˜แƒ—, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜ แƒแƒ›แƒแƒ˜แƒฌแƒฃแƒ แƒ”แƒ‘แƒ.

1. แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜, แƒฉแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒ•แƒฅแƒ›แƒœแƒแƒ— Event Template, แƒ แƒแƒ—แƒ แƒ’แƒแƒ•แƒแƒแƒฅแƒขแƒ˜แƒฃแƒ แƒแƒ— แƒ˜แƒก, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒ›แƒชแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒ˜แƒ”แƒ  แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ–แƒฆแƒ•แƒ แƒแƒ›แƒ“แƒ”. IN แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฅแƒ›แƒœแƒแƒ— แƒแƒ แƒ˜ แƒแƒฎแƒแƒšแƒ˜ แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜ แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒ— CertificateExpireDate_Threshold_Activate แƒ’แƒแƒคแƒ แƒ—แƒฎแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒแƒขแƒฃแƒกแƒ˜แƒ—:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ“แƒ แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ CertificateExpireDate_Threshold_Deactivate แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒขแƒแƒขแƒฃแƒกแƒ˜แƒ—.

2. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒ— แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜แƒก แƒ—แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ”แƒ‘แƒ–แƒ” แƒ“แƒ แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— แƒ‘แƒแƒ แƒ˜แƒ”แƒ แƒ˜ Tresholds แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ”:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒกแƒแƒ“แƒแƒช แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒ แƒฉแƒ”แƒ•แƒ— แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒ˜แƒ”แƒ  แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒš แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ”แƒ‘แƒก CertificateExpireDate_Threshold_Activate แƒ“แƒ CertificateExpireDate_Threshold_Deactivate, แƒ•แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ— แƒœแƒ˜แƒ›แƒฃแƒจแƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒแƒก (แƒœแƒ˜แƒ›แƒฃแƒจแƒ”แƒ‘แƒ˜) 1-แƒ–แƒ” (แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒแƒ“ แƒแƒ› แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒ–แƒ แƒ˜ แƒแƒ  แƒแƒฅแƒ•แƒก แƒ›แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก), แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ แƒ˜แƒก 30 (แƒ“แƒฆแƒ”), แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ“แƒ, แƒ แƒแƒช แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜แƒ, แƒ“แƒแƒแƒงแƒ”แƒœแƒ”แƒ— แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒ”แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ. แƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒแƒจแƒ˜ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒ” แƒ“แƒแƒ•แƒแƒงแƒ”แƒœแƒ” แƒ˜แƒ’แƒ˜ แƒ“แƒฆแƒ”แƒจแƒ˜ แƒ”แƒ แƒ—แƒฎแƒ”แƒš (86400 แƒฌแƒแƒ›แƒ˜), แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ˜แƒฎแƒ แƒฉแƒแƒ— แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ”แƒ‘แƒจแƒ˜ (แƒ แƒแƒช, แƒกแƒฎแƒ•แƒแƒ—แƒ แƒจแƒแƒ แƒ˜แƒก, แƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ›แƒแƒฎแƒ“แƒ, แƒ˜แƒ›แƒ“แƒ”แƒœแƒแƒ“, แƒ แƒแƒ› แƒกแƒแƒคแƒแƒกแƒขแƒ แƒงแƒฃแƒ—แƒ˜ แƒกแƒแƒ•แƒกแƒ” แƒ˜แƒงแƒ แƒจแƒแƒ‘แƒแƒ—-แƒ™แƒ•แƒ˜แƒ แƒแƒก). แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒแƒก, แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก แƒ“แƒแƒงแƒ”แƒœแƒ“แƒ”แƒก แƒฃแƒคแƒ แƒ แƒ“แƒแƒ‘แƒแƒšแƒ˜, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, 60 แƒฌแƒแƒ›แƒ˜.

3. In แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ˜แƒก แƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒก แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒงแƒ•แƒ”แƒšแƒ แƒ”แƒก %m, %S แƒ“แƒ แƒ.แƒจ. - แƒ›แƒแƒ™แƒ แƒแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒจแƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒ•แƒšแƒ”แƒ‘แƒ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜. แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒฃแƒคแƒ แƒ แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ NetXMS.

4. แƒ“แƒ แƒ‘แƒแƒšแƒแƒก, แƒฌแƒ˜แƒœแƒ แƒžแƒฃแƒœแƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ”แƒ‘แƒ, แƒจแƒ”แƒ•แƒ˜แƒ“แƒ แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒฌแƒ”แƒกแƒ˜, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—แƒแƒช แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒกแƒ˜แƒ’แƒœแƒแƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒ แƒ“แƒ แƒ’แƒแƒ˜แƒ’แƒ–แƒแƒ•แƒœแƒ”แƒ‘แƒ แƒฌแƒ”แƒ แƒ˜แƒšแƒ˜:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒฉแƒ•แƒ”แƒœ แƒ•แƒ–แƒแƒ’แƒแƒ•แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก, แƒงแƒ•แƒ”แƒšแƒแƒคแƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ. แƒ›แƒแƒ“แƒ˜แƒ— แƒ“แƒแƒ•แƒแƒงแƒ”แƒœแƒแƒ— แƒ‘แƒแƒ แƒ˜แƒ”แƒ แƒ˜ แƒฃแƒคแƒ แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒจแƒ”แƒกแƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒšแƒแƒ“. แƒฉแƒ”แƒ›แƒก แƒฃแƒแƒฎแƒšแƒแƒ”แƒก แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒก แƒ•แƒแƒ“แƒ แƒ”แƒฌแƒฃแƒ แƒ”แƒ‘แƒ 723 แƒ“แƒฆแƒ”แƒจแƒ˜, แƒจแƒ”แƒ•แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘ 724-แƒ–แƒ”. แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“ แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒกแƒ˜แƒ’แƒœแƒแƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒก:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ“แƒ แƒ”แƒก แƒ”แƒšแƒคแƒแƒกแƒขแƒ˜แƒก แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ:

แƒกแƒ”แƒ แƒขแƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒ’แƒแƒกแƒ•แƒšแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Windows-แƒจแƒ˜ NetXMS-แƒ–แƒ”

แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒแƒฎแƒšแƒ แƒ“แƒแƒ แƒฌแƒ›แƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ. แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒแƒ“แƒ แƒ“แƒแƒคแƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ“แƒ แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ”แƒ‘แƒ˜แƒก แƒแƒ’แƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ”แƒก แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒฌแƒ˜แƒšแƒแƒ“ แƒฃแƒแƒ–แƒ แƒ แƒ“แƒ แƒ›แƒแƒกแƒแƒฌแƒงแƒ”แƒœแƒ˜ แƒกแƒฌแƒแƒ แƒ˜ แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜, แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ˜แƒ— แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒก แƒแƒœ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒกแƒฎแƒ•แƒ แƒ“แƒ แƒแƒก.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ