当前位置: 首页 > 工具软件 > python-nmap > 使用案例 >

Python-nmap的基本使用

程鸿波
2023-12-01

Python-nmap是一个Python的第三方模块,它可以用来调用nmap工具进行端口扫描和服务识别等操作。下面是Python-nmap的使用方法:

1. 安装Python-nmap模块:

```python

pip install python-nmap

```

2. 导入Python-nmap模块:

```python

import nmap

```

3. 创建nmap.PortScanner对象:

```python

nm = nmap.PortScanner()

```

4. 执行端口扫描和服务识别操作:

```python

nm.scan(hosts='127.0.0.1', arguments='-sS -p 22,80,443')

```

其中,`hosts`参数指定要扫描的主机,可以是单个IP地址或IP地址段,也可以是主机名;`arguments`参数指定nmap命令行参数,可以用来设置扫描的方式和范围等。

5. 获取扫描结果:

```python

for host in nm.all_hosts():

    print('Host : %!s(MISSING) (%!s(MISSING))' %!((MISSING)host, nm[host].hostname()))

    print('State : %!s(MISSING)' %!n(MISSING)m[host].state())

    for proto in nm[host].all_protocols():

        print('Protocol : %!s(MISSING)' %!p(MISSING)roto)

        lport = nm[host][proto].keys()

        for port in sorted(lport):

            print('port : %!s(MISSING)\tstate : %!s(MISSING)\tname : %!s(MISSING)' %!((MISSING)port, nm[host][proto][port]['state'], nm[host][proto][port]['name']))

```

以上代码会输出扫描结果,包括主机名、主机状态、协议、端口号、端口状态和服务名称等信息。

以上就是Python-nmap的基本使用方法,你可以根据自己的需求进行参数设置和结果处理。

 

 类似资料: