เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบฐเป€เบŠเบตเบ™เบซเบ™เป‰เบฒเบเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบšเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡ Windows. เปเบฅเป‰เบง, เบงเบดเบ—เบตเบ—เบตเปˆเบ‚เป‰เบญเบเบฅเบธเบเบ‚เบถเป‰เบ™เบซเบผเบฑเบ‡เบˆเบฒเบเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เป„เบ”เป‰เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบœเบฑเบเบซเบผเบฒเบเบ„เบฑเป‰เบ‡, เปƒเบ™เป€เบงเบฅเบฒเบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ—เบตเปˆเบกเบตเบซเบ™เบงเบ”เบ—เบตเปˆเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบ•เปเปˆเบเบฒเบ™เบ•เปเปˆเบญเบฒเบเบธเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบงเบฑเบ™เบžเบฑเบ. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบฅเบฒเบงเปเบฅเบฐเบ‚เป‰เบญเบเบชเบปเบ‡เปƒเบชเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปเบฅเบฐเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เบŠเป‰เบฒเป†เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก NetXMS, เบกเบฑเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เบ•เบปเป‰เบ™เบ•เปเปเบฅเบฐ, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบœเบนเป‰เบชเบฐเบซเบกเบฑเบเบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ™เบตเป‰.

เปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบฎเบนเบšเปเบšเบšเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ.

เป„เบ›. เบšเปเปˆเบกเบตเบ•เบปเบงเบ™เบฑเบšเปƒเบ™เบ•เบปเบงเบชเปเบฒเบฅเบฑเบšเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบซเบกเบปเบ”เบญเบฒเบเบธเปƒเบ™ NetXMS, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เบ•เบปเบงเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡เปเบฅเบฐเปƒเบŠเป‰เบชเบฐเบ„เบดเบšเป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบญเบ‡เบ‚เปเป‰เบกเบนเบ™. เปเบ™เปˆเบ™เบญเบ™, เปƒเบ™ Powershell, เบ™เบตเป‰เปเบกเปˆเบ™ Windows. script เบ„เบงเบ™เบญเปˆเบฒเบ™เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, เป€เบญเบปเบฒเบงเบฑเบ™เบซเบกเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปƒเบ™เบกเบทเป‰เบˆเบฒเบเบ™เบฑเป‰เบ™เปเบฅเบฐเบชเบปเปˆเบ‡เบ•เบปเบงเป€เบฅเบเบ™เบตเป‰เป„เบ›เบซเบฒ NetXMS. เบœเปˆเบฒเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบฅเบฒเบง. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบ™เบถเปˆเบ‡, เบ‡เปˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹. เบžเบฝเบ‡เปเบ•เปˆเป„เบ”เป‰เบฎเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบกเบทเป‰เบˆเบปเบ™เบเปˆเบงเบฒเบงเบฑเบ™เบซเบกเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบตเปˆเบกเบตเบงเบฑเบ™เบ—เบตเบ—เบตเปˆเปƒเบเป‰เบ—เบตเปˆเบชเบธเบ”.

เป€เบžเบทเปˆเบญเปƒเบซเป‰เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ NetXMS เบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบกเบตเบขเบนเปˆเบ‚เบญเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบกเบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบกเบฑเบ™เบˆเบฒเบเบ•เบปเบงเปเบ—เบ™. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ™เบตเป‰เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบžเบตเปˆเบกเป„เบ”เป‰เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบกเบฑเบ™เบšเปเปˆเบกเบต. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™ nxagentd.conf เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบตเปˆเบกเบชเบฒเบเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบžเบฒเบเบ™เบญเบเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ HTTPS.CertificateExpireDateSimple, เปƒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡ script เป„เบ”เป‰:

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

เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบงเปˆเบฒเบชเบฐเบ„เบดเบšเบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเบœเปˆเบฒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบทเปˆเบˆเปเบฒเบเปˆเบฝเบงเบเบฑเบš เบ™เบฐเป‚เบเบšเบฒเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”, เปเบฅเบฐเบขเปˆเบฒเบฅเบทเบก "-NoLogo -NoProfile -NonInteractive", เบญเบทเปˆเบ™ เป† , เบ—เบตเปˆเบ‚เป‰เบญเบเบฅเบฐเป€เบงเบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเปˆเบฒเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบปเบงเปเบ—เบ™ config เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ„เป‰เบฒเบเบ„เบทเบ™เบตเป‰:

#
# 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"

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบšเบฑเบ™เบ—เบถเบ config เปเบฅเบฐ restart เบ•เบปเบงเปเบ—เบ™. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เบˆเบฒเบ NetXMS console: เป€เบ›เบตเบ” config (เปเบเป‰เป„เบ‚เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™), เปเบเป‰เป„เบ‚เบกเบฑเบ™, เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ Save & Apply, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบชเบดเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™. เบˆเบฒเบเบ™เบฑเป‰เบ™เบญเปˆเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบทเบ™เปƒเปเปˆ (เปเบšเบšเบชเบณเบซเบผเบงเบ” > เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ), เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบšเปเปˆเบกเบตเปเบฎเบ‡เบฅเปเบ–เป‰เบฒเป€เบฅเบตเบ. เบซเบผเบฑเบ‡เบˆเบฒเบเบ‚เบฑเป‰เบ™เบ•เบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบˆเบฐเบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เปƒเบ™ NetXMS console เป„เบ› เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป€เบเบฑเบšเบเบณเบ‚เปเป‰เบกเบนเบ™ เป€เบŠเบตเบšเป€เบงเบตเบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เปเบฅเบฐเบชเป‰เบฒเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปƒเบซเบกเปˆเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™ (เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”, เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ, เบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบซเบกเบฒเบเบ—เบตเปˆเบˆเบฐเป‚เบญเบ™เบกเบฑเบ™เป„เบ›เบซเบฒเปเบกเปˆเปเบšเบš). เป€เบฅเบทเบญเบ HTTPS.CertificateExpireDateSimple เบˆเบฒเบเบฅเบฒเบเบเบฒเบ™, เปƒเบชเปˆเบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ—เบตเปˆเบกเบตเบŠเบทเปˆเบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™, เบเปเบฒเบ™เบปเบ”เบ›เบฐเป€เบžเบ”เป€เบ›เบฑเบ™ Integer เปเบฅเบฐเบเปเบฒเบ™เบปเบ”เป„เบฅเบเบฐเบเบฒเบ™เบฅเบปเบ‡เบ„เบฐเปเบ™เบ™เบชเบฝเบ‡. เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบˆเบธเบ”โ€‹เบ›เบฐโ€‹เบชเบปเบ‡ debuggingโ€‹, เบกเบฑเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบฎเบนเป‰โ€‹เบชเบถเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบชเบฑเป‰เบ™โ€‹, 30 เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบตโ€‹, เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡โ€‹. เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบเบฝเบกเบžเป‰เบญเบก, เบžเบฝเบ‡เบžเปเบชเปเบฒเบฅเบฑเบšเบ•เบญเบ™เบ™เบตเป‰.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบงเบ”เบชเบญเบšเป„เบ”เป‰ ... เบšเปเปˆ, เบกเบฑเบ™เป„เบงเป€เบเบตเบ™เป„เบ›. เบ”เบฝเบงเบ™เบตเป‰, เปเบ™เปˆเบ™เบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบซเบเบฑเบ‡เป€เบฅเบตเบ. เบžเบฝเบ‡เปเบ•เปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ script เบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™. เปƒเบซเป‰เป€เบฎเบปเบฒเปเบเป‰เป„เบ‚เบเบฒเบ™เบฅเบฐเป€เบงเบฑเป‰เบ™เบ™เบตเป‰. เบชเบฐเบ„เบฃเบดเบšเบžเบฝเบ‡เปเบ•เปˆเบˆเบฐเบชเบฐเปเบ”เบ‡เบ•เบปเบงเป€เบฅเบ, เบˆเปเบฒเบ™เบงเบ™เบกเบทเป‰เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเบˆเบปเบ™เบเปˆเบงเบฒเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบซเบกเบปเบ”เบญเบฒเบเบธ. เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆ. เบ•เบปเบงเบขเปˆเบฒเบ‡ script:

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)"
    }
}

เปเบฅเบฐเปเบฅเป‰เบง ExternalParameter เบžเบงเบเป€เบฎเบปเบฒเปƒเบชเปˆเปเบ–เบงเบˆเบฒเบเบฅเบฒเบเบเบฒเบ™ ExternalList, เปเบฅเบฐเบขเบนเปˆเบ—เบตเปˆเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบกเบทเป‰เบ”เบฝเบงเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™. เบ•เบปเบงเบฅเบฐเบšเบธเปเบกเปˆเบ™ Thumbprint เบ‚เบญเบ‡เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™. เบเบฐเบฅเบธเบ™เบฒเบฎเบฑเบšเบŠเบฒเบšเบงเปˆเบฒ 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)"
}

เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เบžเบงเบเป€เบฎเบปเบฒเบชเป‰เบฒเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปƒเบซเบกเปˆ. เปƒเบ™ Parameter เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบทเบญเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ HTTPS.CertificateExpireDate(*) เบˆเบฒเบโ€‹เบšเบฑเบ™โ€‹เบŠเบตโ€‹เบฅเบฒเบโ€‹เบเบฒเบ™โ€‹, เปเบฅเบฐ (เป€เบญเบปเบฒโ€‹เปƒเบˆโ€‹เปƒเบชเปˆโ€‹!โ€‹) เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบ”เบฒเบงโ€‹เป€เบ›เบฑเบ™โ€‹ {เบ•เบปเบงเบขเปˆเบฒเบ‡}. เบˆเบธเบ”เบชเปเบฒเบ„เบฑเบ™เบ™เบตเป‰เบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบปเบงเบ™เบฑเบšเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ•เบปเบงเบขเปˆเบฒเบ‡ (เปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™). เบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเปเบกเปˆเบ™เบ•เบทเปˆเบกเปƒเบชเปˆเปƒเบ™เบชเบฐเบšเบฑเบšเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบตเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบ•เบปเบงเบ™เบฑเบšเบˆเบฒเบ, เปƒเบ™เปเบ–เบš Instance Discovery, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฅเบทเบญเบเบฅเบฒเบเบŠเบทเปˆเบ•เบปเบงเปเบ—เบ™เบˆเบฒเบเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเปเบฅเบฐเปƒเบ™เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก List Name เปƒเบชเปˆเบŠเบทเปˆเบ‚เบญเบ‡ ExternalList เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฒเบเบชเบฐเบ„เบดเบš - HTTPS.CertificateNames .

เป€เบเบทเบญเบšเบžเป‰เบญเบกเปเบฅเป‰เบง, เบฅเปเบ–เป‰เบฒเปœเป‰เบญเบเปœเบถเปˆเบ‡ เบซเบผเบทเบšเบฑเบ‡เบ„เบฑเบšเปเบšเบšเบชเบณเบซเบผเบงเบ” > เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ เปเบฅเบฐเปเบšเบšเบชเบณเบซเบผเบงเบ” > Instance Discovery เบ–เป‰เบฒเบกเบฑเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบฅเปเบ–เป‰เบฒเป„เบ”เป‰. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบฑเบ‡เปเบปเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบกเบตเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เป€เบˆเบปเป‰เบฒโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบซเบเบฑเบ‡? เปเบฅเป‰เบง, เปเบกเปˆเบ™เปเบฅเป‰เบง, เบžเบฝเบ‡เปเบ•เปˆเปเบกเปˆเบ—เป‰เบญเบ‡เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบปเบกเบšเบนเบ™เปเบšเบšเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเป€เบšเบดเปˆเบ‡เบฎเบนเบšเป‚เบ›เป‰เบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ™เบตเป‰เปƒเบ™เบŠเบทเปˆเบ‚เบญเบ‡ counter เบ”เป‰เบงเบเบ•เบฒเป‚เบชเบเป€เบชเบปเป‰เบฒเปเบฅเบฐเบšเปเปˆเปƒเบซเป‰เบ‚เป‰เบญเบเบˆเบปเบšเบšเบปเบ”เบ„เบงเบฒเบก. เป€เบžเบทเปˆเบญเบ›เป‰เบญเบ™เบกเบฑเบ™, เป€เบ›เบตเบ”เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ•เบปเบงเบ™เบฑเบšเบญเบตเบเบ„เบฑเป‰เบ‡ เปเบฅเบฐเบขเบนเปˆเปƒเบ™เปเบ–เบš Instance Discovery, เปƒเบ™เบŠเปˆเบญเบ‡ "เบชเบฐเบ„เบฃเบดเบšเบ•เบปเบงเบเบฑเปˆเบ™เบ•เบญเบ‡เบเบฒเบ™เบ„เบปเป‰เบ™เบžเบปเบšเบ•เบปเบงเบขเปˆเบฒเบ‡", เป€เบžเบตเปˆเบกเบญเบฑเบ™เบ—เบตเปˆเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™ NXSL (เบžเบฒเบชเบฒเบžเบฒเบเปƒเบ™ NetXMS) script:

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

เป€เบŠเบดเปˆเบ‡เบˆเบฐเบเบฑเปˆเบ™เบ•เบญเบ‡ Thumbprint:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เปเบฅเบฐเป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เบกเบฑเบ™เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡, เปƒเบ™เปเบ–เบšเบ—เบปเปˆเบงเป„เบ›เปƒเบ™เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบ, เบ›เปˆเบฝเบ™ CertificateExpireDate: {instance} เป€เบ›เบฑเบ™ CertificateExpireDate: {instance-name}:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบชเบธเบ”เบ—เป‰เบฒเบเป€เบชเบฑเป‰เบ™เบชเปเบฒเป€เบฅเบฑเบ”เบฎเบนเบšเบˆเบฒเบ KDPV:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเบ‡เบฒเบกเบšเป?

เบชเบดเปˆเบ‡เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเปเบกเปˆเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เป€เบžเบทเปˆเบญเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบกเบฒเบฎเบญเบ”เบ—เบฒเบ‡เบญเบตเป€เบกเบงเป€เบกเบทเปˆเบญเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบซเบกเบปเบ”เบญเบฒเบเบธ.

1. เบเปˆเบญเบ™เบญเบทเปˆเบ™เป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡ Event Template เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เบกเบฑเบ™เป€เบกเบทเปˆเบญเบ„เปˆเบฒ counter เบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ–เบดเบ‡เบšเบฒเบ‡เป€เบเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบเบณเบ™เบปเบ”เป„เบงเป‰. IN เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบซเบ”เบเบฒเบ™ เปƒเบซเป‰เบชเป‰เบฒเบ‡เบชเบญเบ‡เปเบกเปˆเปเบšเบšเปƒเบซเบกเปˆเบ—เบตเปˆเบกเบตเบŠเบทเปˆเป€เบŠเบฑเปˆเบ™ CertificateExpireDate_Threshold_Activate เบเบฑเบšโ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบเบฒเบ™โ€‹เป€เบ•เบทเบญเบ™โ€‹เป„เบžโ€‹:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เปเบฅเบฐเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™ CertificateExpireDate_Threshold_Deactivate เบเบฑเบšโ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบžเบฒเบšโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹.

2. เบ•เปเปˆเป„เบ›, เปƒเบซเป‰เป„เบ›เบ—เบตเปˆเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ•เบปเบงเบ™เบฑเบš เปเบฅเบฐเบ•เบฑเป‰เบ‡เป€เบเบ™เบขเบนเปˆเปƒเบ™เปเบ–เบš Tresholds:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบทเบญเบเบเบดเบ”เบˆเบฐเบเปเบฒเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ CertificateExpireDate_Threshold_Activate เปเบฅเบฐ CertificateExpireDate_Threshold_Deactivate, เบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡ (Samples) เป€เบ›เบฑเบ™ 1 (เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบš counter เบ™เบตเป‰เบšเปเปˆเบกเบตเบˆเบธเบ”เปƒเบ”เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก), เบกเบนเบ™เบ„เปˆเบฒเปเบกเปˆเบ™ 30 (เบกเบทเป‰), เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เปเบฅเบฐ, เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เบเปเบฒเบ™เบปเบ”. เป€เบงเบฅเบฒเบ„เป‰เบฒเบ‡เบ„เบทเบ™เป€เบซเบ”เบเบฒเบ™. เบชเปเบฒเบฅเบฑเบšเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบเปเบฒเบ™เบปเบ”เบกเบฑเบ™เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบ•เปเปˆเบกเบทเป‰ (86400 เบงเบดเบ™เบฒเบ—เบต), เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบปเบกเบ™เป‰เปเบฒเปƒเบ™เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™ (เป€เบŠเบดเปˆเบ‡, เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบ„เบฑเป‰เบ‡เบ”เบฝเบง, เบซเบผเบฒเบเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเปˆเบญเบ‡เบˆเบปเบ”เบซเบกเบฒเบเป€เบ•เบฑเบกเป„เบ›เปƒเบ™เบ—เป‰เบฒเบเบญเบฒเบ—เบดเบ”). เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เบ—เบตเปˆโ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒโ€‹, เบกเบฑเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบฎเบนเป‰โ€‹เบชเบถเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ•เบฑเป‰เบ‡โ€‹เบกเบฑเบ™โ€‹เบ•โ€‹เปˆโ€‹เปโ€‹เบฒโ€‹, 60 เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบตโ€‹, เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡โ€‹.

3. เปƒเบ™ เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” เบชเป‰เบฒเบ‡โ€‹เปเบกเปˆโ€‹เปเบšเบšโ€‹เบˆเบปเบ”โ€‹เบซเบกเบฒเบโ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เปเบˆเป‰เบ‡โ€‹เบเบฒเบ™โ€‹, เป€เบŠเบฑเปˆเบ™โ€‹เบ™เบตเป‰โ€‹:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบ—เบฑเบ‡เปเบปเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ %m, %S, เปเบฅเบฐเบญเบทเปˆเบ™เป†. โ€” เบกเบฐเบซเบฒเบžเบฒเบเบ—เบตเปˆเบ„เปˆเบฒเบˆเบฒเบเบžเบฒเบฃเบฒเบกเบดเป€เบ•เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ–เบทเบเบ›เปˆเบฝเบ™เปเบ—เบ™. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเปƒเบ™เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ™ เบ„เบนเปˆเบกเบท NetXMS.

4. เปเบฅเบฐเบชเบธเบ”เบ—เป‰เบฒเบ, เบชเบปเบกเบ—เบปเบšเบˆเบธเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ เบ™เบฐเป‚เบเบšเบฒเบเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบซเบ”เบเบฒเบ™ เบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ•เบฒเบกเบเบฒเบ™เบ›เบธเบเบˆเบฐเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เปเบฅเบฐเบˆเบปเบ”เบซเบกเบฒเบเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบซเบเบฑเบ”เบ™เบฐเป‚เบเบšเบฒเบ, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบชเบฒเบกเบฒเบ”เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰. เบ‚เปเปƒเบซเป‰เบ•เบฑเป‰เบ‡เป€เบเบ™เปƒเบซเป‰เบชเบนเบ‡เบ‚เบถเป‰เบ™เป€เบžเบทเปˆเบญเบเบงเบ”เบชเบญเบš. เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เบ—เบตเปˆเปƒเบเป‰เบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบปเบ”เบญเบฒเบเบธเปƒเบ™ 723 เบกเบทเป‰, เบ‚เป‰เบญเบเบ•เบฑเป‰เบ‡เบกเบฑเบ™เป€เบ›เบฑเบ™ 724 เป€เบžเบทเปˆเบญเบเบงเบ”เบชเบญเบš. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบชเบฑเบ™เบเบฒเบ™เป€เบ•เบทเบญเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เปเบฅเบฐเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบญเบตเป€เบกเบงเบ™เบตเป‰:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบงเบฑเบ™เปเบปเบ”เบญเบฒเบเบธเบ‚เบญเบ‡เปƒเบšเบฎเบฑเบšเบฎเบญเบ‡เปƒเบ™ Windows เปƒเบ™ NetXMS

เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบ™เปˆเบ™เบญเบ™เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เปเบ™เปˆเบ™เบญเบ™, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ dashboard เปเบฅเบฐเบชเป‰เบฒเบ‡เบเบฒเบŸ, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบˆเบฐเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบซเบกเบฒเบเปเบฅเบฐเบซเบ™เป‰เบฒเป€เบšเบทเปˆเบญ, เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบšเบเบฒเบŸเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบซเบผเบทเบเบฒเบ™เป‚เบซเบผเบ”เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡. เปเบ•เปˆ, เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เบšเบฒเบ‡เบ„เบฑเป‰เบ‡.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™