Skip to content

Instantly share code, notes, and snippets.

@gs-projekt
Forked from htoukour/portscanner.py
Created September 16, 2021 00:48
Show Gist options
  • Select an option

  • Save gs-projekt/679d6d8d67fc577147212b41d9d98182 to your computer and use it in GitHub Desktop.

Select an option

Save gs-projekt/679d6d8d67fc577147212b41d9d98182 to your computer and use it in GitHub Desktop.

Revisions

  1. @Afrinapse Afrinapse created this gist Oct 10, 2017.
    50 changes: 50 additions & 0 deletions portscanner.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,50 @@
    import socket
    import subprocess
    import sys
    from datetime import datetime

    subprocess.call('cls', shell=True)

    # Ask for input
    remoteServer = input("Enter a remote host to scan: ")
    remoteServerIP = socket.gethostbyname(remoteServer)

    # Print a nice banner with information on which host we are about to scan
    print ("-" * 60)
    print ("Please wait, scanning remote host", remoteServerIP)
    print ("-" * 60)

    # Check what time the scan started
    t1 = datetime.now()

    # Using the range function to specify ports (here it will scans all ports
    # between 1 and 1024)

    # We also put in some error handling for catching errors
    try:
    for port in range(1,1025):
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    result = sock.connect_ex((remoteServerIP, port))
    if result == 0:
    print ("Port {}: Open".format(port))
    sock.close()
    except KeyboardInterrupt:
    print ("You pressed Ctrl+C")
    sys.exit()

    except socket.gaierror:
    print ('Hostname could not be resolved. Exiting')
    sys.exit()

    except socket.error:
    print ("Couldn't connect to server")
    sys.exit()

    # Checking the time again
    t2 = datetime.now()

    # Calculates the difference of time, to see how long it took to run the script
    total = t2 - t1

    # Printing the information to screen
    print ('Scanning Completed in: ', total)