python脚本基于主机端口扫描信息搜集

简介: python脚本基于主机端口扫描信息搜集

本文转载:https://xiaochuhe.blog.csdn.net/article/details/122301068
1.源代码如下:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
 
import nmap
import optparse
 
def NmapScan(targetIP, targetPort):
    # 实例化PortScanner对象
    nm = nmap.PortScanner()
    try:
        # hosts为目标IP地址,argusments为Nmap的扫描参数
        # -p:对指定端口进行扫描
        result = nm.scan(hosts=targetIP, arguments='-p'+str(targetPort))
        # 对结果进行切片,提取端口信息
        # 这里需要注意的是,提取信息时需要把端口转化为int型
        port_infor = result['scan'][targetIP]['tcp'][int(targetPort)]
        # 分别显示  端口号:端口状态 
        print("[{}] : [{}]".format(targetPort, port_infor['state'] ))
    except Exception as e:
        print(e)
 
 
if __name__ == '__main__':
    parser = optparse.OptionParser('usage: python %prog -i ip -p port\n\n'
                                    'Example: python %prog -i 192.168.1.1 -p 80,3306\n')
    # 添加目标IP参数-i
    parser.add_option('-i','--ip',dest='targetIP',default='192.168.1.1',type='string',help='target ip address')
    # 添加扫描端口参数-p
    parser.add_option('-p','--port',dest='targetPort',default='80',type='string',help='target port')
    options,args = parser.parse_args()
    for i in range(0,len(options.targetPort.split(','))):
        NmapScan(options.targetIP, options.targetPort.split(',')[i])

2.用法:

python 此脚本 -i IP范围 -p 端口号

相关文章
|
3天前
|
Python Perl
LabVIEW调用Perl和Python脚本
LabVIEW调用Perl和Python脚本
|
5天前
|
缓存 人工智能 算法
编写高效的Python脚本:性能优化的策略与技巧
编写高效的Python脚本需要综合考虑多个方面,包括代码结构、数据结构和算法选择等。本文将探讨在Python编程中提高脚本性能的方法,包括优化数据结构、选择合适的算法、使用Python内置函数以及通过并行和异步编程提升效率。这些技巧旨在帮助开发者在不同应用场景中编写出高性能的Python代码。
|
15天前
|
存储 网络安全 数据安全/隐私保护
【专栏】Python 网络设备管理中,`ConnectHandler`(Paramiko库)和`telnetlib`模块常用于设备交互。
【4月更文挑战第28天】Python 网络设备管理中,`ConnectHandler`(Paramiko库)和`telnetlib`模块常用于设备交互。`ConnectHandler`简化SSH连接,便于与网络设备交互,而`telnetlib`是Python内置模块,支持Telnet协议的远程登录操作。两者都提供命令执行和响应接收功能。示例代码展示了如何使用它们获取防火墙设备的版本信息,降低了代码复杂度,提高了可读性和维护性。
|
15天前
|
网络安全 数据安全/隐私保护 Python
【专栏】如何使用 Python 编写脚本批量备份交换机配置
【4月更文挑战第28天】本文介绍如何使用 Python 编写脚本批量备份交换机配置。主要步骤包括了解交换机命令和接口,安装 `paramiko` 库,获取交换机登录信息。脚本实现分为建立 SSH 连接,执行备份命令并保存结果。示例脚本中,定义了 `backup_switch_config` 函数遍历交换机列表进行备份,每次备份后等待一段时间。此方法能有效提高网络管理效率。
|
5月前
|
Ubuntu 关系型数据库 MySQL
百度搜索:蓝易云【ubuntu20.4服务器安装mysql社区版并开放3306端口】
现在,你已经在Ubuntu 20.04服务器上成功安装了MySQL社区版,并且已经开放了3306端口,可以通过该端口访问MySQL服务器了。请确保在生产环境中设置安全措施,例如设置强密码、限制访问等,以保护数据库的安全性。
98 2
|
4月前
|
Java Nacos Docker
在集成nacos时,端口9848报错但服务器的这个端口是开放的
在集成nacos时,端口9848报错但服务器的这个端口是开放的【1月更文挑战第14天】【1月更文挑战第67篇】
336 1
|
2月前
|
安全 Windows
服务器中如何检查端口是否开放
服务器中如何检查端口是否开放
|
14天前
|
Ubuntu 网络安全 数据安全/隐私保护
使用SSH隧道将Ubuntu云服务器Jupyter Notebook端口映射到本地
这样,你就成功地将Ubuntu云服务器上的Jupyter Notebook端口映射到本地,使你能够通过本地浏览器访问并使用Jupyter Notebook。
39 1
|
16天前
|
监控 安全 BI
如果服务器端口被扫会发生哪些故障?
在数字化时代,服务器作为支撑各种业务运行的核心基础设施,其安全性至关重要。然而,当服务器的端口被恶意扫描时,可能会引发一系列故障,给企业和个人带来不可估量的损失。那么,服务器端口被扫会发生哪些故障呢?
25 3
|
24天前
|
安全 网络协议 网络安全
云服务器常见端口有哪些?(常见云服务器端口含义)
云服务器常用端口在网络通信中起着至关重要的作用。打个比方,我们将云服务器想象为一座拥有众多建筑物和场所的繁华城市。每个建筑物代表在云服务器上运行的特定应用程序或服务,例如网站、电子邮件服务器或数据库。现在,将端口视为这些建筑物的入口。为了确保城市的顺利运转和安全,您需要有一个规范的系统来管理这些入口。
30 13