* TCP and UDP (Generic)

Threaded Python multiple ports scanner

Description:

Threaded Python multiple ports scanner

Just check lot of ports for server.

Free to use.

Current Version

0.1

Last Release Date

2013-04-09

Compatible With

  • Nagios 3.x
  • Nagios XI

Project Files
Project Notes
Reviews (1) Add a Review
I added new modification to the plugin. I needed it.
by jdcontrib, November 30, 2016

Better timeout control (default was 127 sec), and added performance data output for future analysis. #!/usr/bin/python """ Threaded Python multiple port scanner """ import threading import socket import time import getopt import sys def usage(): print "Usage: %s -H [-w ] [-c ] -p """ % (sys.argv[0]) try: optlist, args = getopt.getopt(sys.argv[1:], 'H:w:c:p:h') except getopt.GetoptError: usage() sys.exit(2) server = None warning = 5 # defaul value critical = 10 # default value ports = None perfmon = " | " msg = "" exit_code = 0; for opt, arg in optlist: if opt == '-h': usage() sys.exit(2) if opt == '-H': server = arg if opt == '-p': ports = arg if opt == '-w': warning = int(arg) if opt == '-c': critical = int(arg) timeout = critical if ports == None or server == None: print "Server or ports not entered." usage() sys.exit(2) def check_port(server,port): global perfmon global msg global exit_code s = socket.socket() s.settimeout(timeout) start_time = time.time() if s.connect_ex((server,port)) == 0: time_value = time.time() - start_time perfmon += "port%s=%.6fs;;;0.000000;0.000000 " % (port,time_value) ports_opened.append(port) # check opening time and decide - warning or critical if time_value > critical: msg += " Time is CRITICAL %ss for port %s " % (time_value,port) exit_code = 2 if time_value > warning and time_value



Add a Review

You must be logged in to submit a review.

Thank you for your review!

Your review has been submitted and is pending approval.

Recommend

To:


From:


Thank you for your recommendation!

Your recommendation has been sent.

Project Stats
Rating
5 (1)
Favorites
1
Views
42,730