Home Directory Plugins License Management Check cPanel License

Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Check cPanel License

Rating
3 votes
Favoured:
0
Network Monitoring Software - Download Nagios XI
Log Management Software - Nagios Log Server - Download
Netflow Analysis Software - Nagios Network Analyzer - Download
Checks the status of a cPanel license
Uses the cPanel website to check the status of a license for a given host or IP. The address of the license validation page can be set in the script if it were to ever change as can the regex expression used to extract the status of the license from the returned page.
Reviews (2)
#!/usr/bin/env python
# This script is a Nagios plugin used to check the status
# of a CPanel license
#
# Author: Christopher Thunes
# Date: 15 June 2007
# License: BSD License
#
# Updater: Andrey Kishkin aka Graff
# Date: 27 November 2017

# %s should be put in place of the ip address
LICENSE_CHECK_URL = "http://verify.cpanel.net/index.cgi?ip=%s"

# Regex string to search for the 'active' keyword
#regexExtractURL = r"[^a-zA-Z0-9]*active[^a-zA-Z0-9" )
argsparser.add_option("-H", "--hostname", dest="host", help="Host to run test on" )
(options, args) = argsparser.parse_args()

# Check for the required hostname
if options.host == None:
print "-H or --hostname is required"
sys.exit(3)


numeric = None

try:
address = socket.gethostbyname(options.host)
except socket.gaierror:
printOutput( 2 )


html = urllib.urlopen( LICENSE_CHECK_URL % (address) )
regex = re.compile(regexExtractURL)

if html == None:
printOutput( 3 )

found = False;
for line in html.readlines():
if regex.search(line):
found = True

if found is False:
printOutput( 1 )

html = urllib.urlopen( LICENSE_CHECK_URL % (address) )

for line in html.readlines():
match = re.search(regexAcivatedDate ,line)
if match:
printOutput ( 0, match.group('date'))


def printOutput ( numeric, date = '' ):
returnValues = ( 0, 2, 2, 2 )

if numeric == 0:
print "CPANEL OK: license active, Activated: ", date
elif numeric == 1:
print "CPANEL CRITICAL: license inactive"
elif numeric == 2:
print "CPANEL CRITICAL: could not resolve hostname"
elif numeric == 3:
print "CPANEL CRITICAL: could not load license page"

sys.exit(returnValues[numeric])


if __name__ == "__main__":
main( )
bynishith, September 20, 2017
My cPanel is under 3 year license but this script is showing "License Inactive" message...!! :(

The URL mentioned inside this script seems proper as below,
http://verify.cpanel.net/index.cgi?ip=%s

Nishith N.Vyas