summaryrefslogtreecommitdiff
path: root/scan/scan.py
blob: 38150b28603fa199fefa1f751261466c7f16bda3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import sys
import socket

def scan(host,*ports):
    for port in ports:
        s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.settimeout(2)  # Set a 2-second timeout
        addr_server=(host,int(port))
        tentative=s.connect_ex(addr_server) #connect_ex renvoie 0 en cas de succès...
        if tentative==0:
            print(f"Le port {port} ouvert")
            try:
                print(s.recv(1024).decode().strip())
            except TimeoutError:
                pass
        else:
            print(f"Le port {port} fermé")
        s.close()

if __name__ == "__main__" :
    try:
        scan(sys.argv[1],*sys.argv[2:])
    except:
        print(f"{sys.argv[0]} demande un hôte et une liste de ports en arguments")