检查远程服务器端口是否开启

查看 108|回复 9
作者:fengxiaoxiao7   
检查远程服务器端口是否开启
  • 检查远程服务器端口是否开启
  • 轮询检查远程服务器所有端口是否开启

    代码
    import socket
    import sys
    host = sys.argv[1]
    mode = sys.argv[2]
    def check_port(host, port):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.settimeout(5)
        result = sock.connect_ex((host, port))
        if result == 0:
            print(f"{port} is open")
        else:
            print(f"{port} is not open")
        sock.close()
    def check_ports(host, start_port, end_port):
        open_ports = []
        for port in range(start_port, end_port + 1):
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.settimeout(1)
            result = sock.connect_ex((host, port))
            if result == 0:
                open_ports.append(port)
            sock.close()
        return open_ports
    if mode=="all":
        open_ports = check_ports(host, 1, 65535)
        print("Open ports on {}: {}".format(host, open_ports))
    else:
        port = int(mode)
        check_port(host, port)
    使用示例
    python xx.py [host] [port] //指定端口
    python xx.py [host] 'all'//轮询所有端口

    端口, 服务器

  • hqt   

    思路不错
    同类软件推荐:nmap
    photocs   


    njbb888 发表于 2023-1-13 16:12
    nmap 性能太差了。做个一个项目,扫描全球所有ip的端口,用nmap,那速度不说了。

    什么项目呀要扫描全球所有IP的端口?
    bbs119   

    指定多个端口或一段端口怎么弄?
    fengxiaoxiao7
    OP
      


    bbs119 发表于 2023-1-13 14:58
    指定多个端口或一段端口怎么弄?

    open_ports = check_ports(host, 1, 65535)
    njbb888   


    hqt 发表于 2023-1-13 14:55
    思路不错
    同类软件推荐:nmap

    nmap 性能太差了。做个一个项目,扫描全球所有ip的端口,用nmap,那速度不说了。
    抢师太的秃驴   

    不错不错,我来学习学习。
    whoami233   


    njbb888 发表于 2023-1-13 16:12
    nmap 性能太差了。做个一个项目,扫描全球所有ip的端口,用nmap,那速度不说了。

    快速扫描用masscan
    apull   

    学习了,简单扫描一下能用上
    njbb888   


    photocs 发表于 2023-1-15 12:38
    什么项目呀要扫描全球所有IP的端口?

    工信部的一个项目
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部