Python扫描服务器端口

主要功能:

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

轮询检查远程服务器所有端口是否开启

Python代码

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

26

27

28

29

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)

使用示例:

1

2

python xx.py [host] [port] //指定端口

python xx.py [host] 'all'//轮询所有端口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执刀人的工具库

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值