首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用python和ssh遍历交换机的所有端口并逐个禁用它们?

使用Python和SSH遍历交换机的所有端口并逐个禁用它们的步骤如下:

  1. 导入必要的Python库,如paramiko和re。
  2. 创建SSH客户端对象,并使用SSH连接到交换机。
  3. 使用SSH客户端对象发送登录凭据(用户名和密码)进行身份验证。
  4. 使用SSH客户端对象发送命令来获取交换机的端口列表。
  5. 使用正则表达式解析命令输出,提取端口号。
  6. 遍历端口列表,对每个端口执行禁用操作。
  7. 使用SSH客户端对象发送命令来禁用特定端口。
  8. 检查命令执行结果,确保端口已成功禁用。
  9. 关闭SSH连接。

下面是一个示例代码,演示如何使用Python和SSH遍历交换机的所有端口并逐个禁用它们:

代码语言:txt
复制
import paramiko
import re

# SSH连接信息
hostname = '交换机IP地址'
port = 22
username = '用户名'
password = '密码'

# 创建SSH客户端对象
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

try:
    # 连接到交换机
    client.connect(hostname, port, username, password)

    # 发送命令获取端口列表
    stdin, stdout, stderr = client.exec_command('show interfaces status')

    # 解析命令输出,提取端口号
    output = stdout.read().decode('utf-8')
    port_list = re.findall(r'(\w{2}\d{1,2}/\d{1,2})', output)

    # 遍历端口列表,逐个禁用端口
    for port in port_list:
        # 发送禁用端口的命令
        disable_command = f'interface {port}\nshutdown\n'
        stdin, stdout, stderr = client.exec_command(disable_command)

        # 检查命令执行结果
        output = stdout.read().decode('utf-8')
        if 'Invalid input' in output:
            print(f'禁用端口 {port} 失败')
        else:
            print(f'禁用端口 {port} 成功')

finally:
    # 关闭SSH连接
    client.close()

请注意,此示例代码仅供参考,实际操作中需要根据交换机的具体型号和操作系统进行相应的命令调整。另外,为了确保安全性,请确保在使用SSH连接时使用安全的认证方式,如密钥认证。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

网络设备全知道:路由器、交换机与防火墙的奥秘(910)

路由器、交换机和防火墙等网络设备在现代网络中的重要性不言而喻。它们确保了数据的快速、准确传输,提高了网络的效率和性能,同时也为网络安全提供了有力保障。...启用或禁用端口:找到 “端口管理” 选项,选择要启用或禁用的端口,进行相应的操作,保存更改。 3. 选择考虑因素 在选择交换机时,需要考虑端口数量、速率、管理功能等,以满足不同网络规模和需求。...利用 Python 的 paramiko 库(用于 SSH 连接远程设备),可编写脚本实现自动化配置。...{e}") 这段代码循环遍历路由器列表,逐个建立 SSH 连接,发送预先设定的端口配置命令,如设置特定以太网端口的速率和双工模式,并打印执行结果,方便运维人员检查配置是否成功。...案例二:通过 Python 实现交换机端口状态检查(适用于思科交换机) 网络管理员日常需时刻监控交换机端口状态,及时发现故障端口或异常连接。

24610

了解vSphere中的BPDU筛选器功能

当物理交换机端口上的链路上升时,STP协议开始计算和BPDU交换以确定端口是否应处于转发或阻塞状态。桥接协议数据单元(BPDU)帧跨物理交换机端×××换以识别根网桥并形成树形拓扑。...由于BPDU防护配置,物理交换机依次禁用端口。要从此上行链路流量路径故障中恢复,vSphere主机会将该虚拟机流量移至另一个上行链路,从而禁用另一个交换机端口。...如果要在环境中的所有主机上启用此功能,则必须单独在所有主机上更改该设置。 启用BPDU过滤后,它将应用于已配置主机上的所有出站流量。因此,将过滤与此主机关联的所有标准和分布式交换机端口。...三、如何启用bpdu 要从vSphere Client启用BPDU筛选器: 使用vSphere Client,切换到“ 主机和群集”视图。 从左窗格的清单树视图中单击所需的主机。...要从命令行启用BPDU筛选: 使用SSH或直接控制台用户界面(DCUI)连接到所需的主机。有关更多信息,请参见在ESXi 5.0和5.1中使用ESXi Shell(2004746)。

2.3K10
  • 如何使用 Python 脚本自动备份华为路由器和交换机的配置?

    在本文中,我们将学习如何使用 Python 脚本自动备份华为路由器和交换机的配置。我们将了解如何通过 SSH 连接设备、执行备份命令,并将备份保存到本地计算机中。...导入所需的库 在脚本的开头,导入所需的 Python 库: import paramiko import time 创建 SSH 连接 使用 Paramiko 库,创建一个 SSH 连接对象并建立连接...完整示例代码 以下是一个完整的示例代码,展示了如何使用 Python 脚本自动备份华为路由器和交换机的配置: import paramiko import time # 创建 SSH 连接 ssh =...结论 使用 Python 脚本自动备份华为路由器和交换机的配置可以节省时间和精力,确保重要的网络设备配置得到及时备份。...核心交换机的四种关键技术:链路聚合、冗余、堆叠和热备份,真简单! 交换机的4种网络结构方式:级联方式、堆叠方式、端口聚合方式、分层方式

    89720

    SDN世界里,网工需要哪些技能?

    首先要关注于修改网络参数,启用或禁用服务器进程(DHCP客户端和服务器模式),通过SSH连接Linux命令行接口(CLI),以及执行正确的Linux关机操作。...如Java、python或C/C++等。一种语言的概念和技能通常可以触类旁通地应用到其他语言上。Python是一种很容易学习的脚本语言。...要学习如何使用管道命令将多个小工具和脚本整合在一起来完成更大的任务。一个好例子就是重命名大量的文件,例如删除“.txt”后缀并添加“.cfg”后缀。...最后,大多数开源项目都使用Git来维护它们的代码,因此一定要学习如何它来存储、获取和存档软件项目。...可以从实现自动的设备配置检查开始,使用网络变更与配置管理(NCCM)系统自动地检查所有网络设备上正确配置的功能。首先,保证所有设备的简单网络管理协议(SNMP)和AAA配置与模板相匹配。

    1.1K80

    网络运维必会:批量登录地址不连续的交换机

    01 实验目的 通过Python脚本批量登录所有交换机,并在每个交换机上都开启EIGRP。...(2)在CentOS上创建一个名为ip_list的TXT文件,把所有交换机的管理IP地址都放进去,注意该文件和等下要创建的脚本位于同一个文件夹下,如下图所示。...(3)在运行代码前,检查5台交换机的配置,确认它们都没有开启EIGRP。 运行代码前,SW1的配置如下图所示。 运行代码前,SW2的配置如下图所示。 运行代码前,SW3的配置如下图所示。...5个交换机的管理IP地址的文档(ip_list.txt),通过for循环来依次遍历readlines()方法返回的列表中的每个元素(即每个交换机的管理IP地址),即可达到批量依次登录SW1~SW5的目的...f.close()ssh_client.close 05 验证 (1)因打印出的回显内容过长,这里只截取自动登录SW1、SW2做配置的部分代码,可以看见代码中自动登录了每个交换机开启EIGRP并保存配置

    38420

    日拱一卒,量大管饱,MIT手把手教你配环境

    我们将会一起来看看怎样同时运行多个命令,并且追踪它们,以及如何暂停、启动和停止进程,还有如何让一个进程在后台执行。...我们同样会研究如何使用ssh命令来远程控制机器。 任务控制 在一些情况下,你需要终端一个持续运行的程序。比如一个命令需要很长时间才能结束(比如在一个巨大的文件夹当中使用find搜索)。...但当你在服务器上运行时你该如何操作呢?服务器上的端口通常不会通过网络暴露给你。 此时就需要使用端口转发,端口转发有两种,一种是本地端口转发,一种是远程端口转发。...bg 接着使用pgrep和pkill a和f选项的含义: a表示匹配进程的祖先进程,f表示匹配所有参数列表,默认只匹配进程名称 如果你想要在一个进程结束之后启动另外一个进程,应该怎么操作呢?...使用python -m http.server 8888 在您的虚拟机中启动一个 Web 服务器并通过本机的http://localhost:9999访问虚拟机上的 Web 服务器 使用sudo vim

    1.4K20

    网工Python之路之paramiko 模块实验(一)初来乍到

    本次实验只需要用到 Linux ,透明交换机SW(启动即可,无需配置)、LSW1(Python 第三方库 paramiko 要操控的设备。),其它 LSW未启动,后续实验再使用。...实验目的: 用Python Paramiko 模块实现 SSH 登陆单个交换机LSW1(192.168.242.11),为其 LoopBack0 端口配置IP地址 1.1.1.1 /32。...实验目的: 用Python Paramiko 模块实现 SSH 登陆单个交换机LSW1(192.168.242.11),为其 LoopBack0 端口配置IP地址 1.1.1.1 /32。...ssh Python 代码 代码讲解,大神在书里和专栏中已逐条做了解释,我做的主要目标是把大神的 linux+思科设备,转成 windows + 华为设备。...3、虽然 telnet 是明文传输,安全性不够,但其实大量的非公网业务设备依然使用 telnet 进行管理,如何调动 telnetlib 模块来使用?

    1.6K10

    交换机安全功能介绍

    交换机的访问安全为了防止交换机被攻击者探测或控制,必须在交换机上配置基本的安全:1、使用合格的密码2、使用 ACL,限制管理访问3、配置系统警告用语4、禁用不需要的服务5、关闭 CDP6、启用系统日志7...、使用 SSH 替代 Telnet8、关闭 SNMP 或使用 SNMP V3   交换机的端口安全    交换机依赖 MAC 地址表转发数据帧,如果 MAC 地址不存在,则交换机将帧转发到交换机上的每一个端口...要防止MAC 泛洪攻击,可以配置端口安全特性,限制端口上所允许的有效 MAC 地址的数量,并定义攻击发生时端口的动作:关闭、保护、限制。   ...ARP Inspection)可以用来检查所有非信任端口的 ARP 请求和应答(主动式 ARP 和非主动式 ARP) ,确保应答来自真正的 MAC 所有者。...交换机通过检查端口纪录的 DHCP 绑定信息和 ARP 应答的 IP 地址决定其是否是真正的 MAC 所有者,不合法的 ARP 包将被拒绝转发。

    71340

    网工Python之路之netmiko模块实验(三)连接多机

    网工Python之路之基础笔记(一) 网工Python之路之基础笔记(二) 网工Python之路之paramiko 模块实验(一)初来乍到 网工Python之路之paramiko 模块实验(二)循环遍历...Python之路之paramiko 模块实验(六)FTP推送备份文件 网工Python之路之paramiko 模块实验(七)回显保存成文件,Win中处理空行 实验拓扑: 【SSH 客户端】Win10...【透明交换机】SW1(启动即可,无需配置,给云彩扩展端口使用)。 【SSH 操作对象】Layer3Switch-x,IP为 192.168.242.1x/24。...前面的实验,我们都是通过netmiko登录1台设备,这次我们来用netmiko模块操作多台设备,顺便串一下以前paramiko模块实验中用到的“循环遍历、读取文件、异常处理”等,当做温故而知新吧。...实验小结: (1)这次我们借netmiko模块操作多台设备的机会,顺便串一下以前paramiko模块实验中用到的“循环遍历、读取文件、异常处理”等,当做温故而知新吧。

    1.5K20

    Cisco PT 案例二:为路由器配置并连接SSH

    案例目标 通过本案例,你可以掌握如下技能: 配置 SSH 使用 SSH 访问路由器 2. 背景知识 过去对路由器的远程管理访问一般使用 TCP 端口 23 上的 Telnet。...SSH 使用 TCP 端口 22。它提供类似出站 Telnet 连接的功能,但连接是加密的。通过认证和加密,SSH 允许在不安全的网络中进行安全的通信。...打开路由器的 Config配置页面,按拓扑图上的标注分别配置两个路由 器的显示名、主机名和接口 Fa0/0 的 IP 地址,并注意激活该接口。 步骤 3:配置 PC 的 IP 地址和网关。...)# 6) 在 VTY 线路上禁用 Telnet,并激活 SSH。...R1(config)#line vty 0 4 R1(config-line)#no transport input all //禁用所有流量 R1(config-line)#transport input

    2.1K20

    靶场实战(6):OSCP备考之VulnHub SolidState

    使用命令 python2 45233.py 172.16.33.35 --username 用户名枚举用户名,发现存在SSH用户root和james。...口令漏洞 前面EXP使用账号root和密码root登录4555端口的James-Admin服务,看来这里使用了默认的账号密码。...一不做二不休,把所有用户的密码都改了,后续逐一登录POP3服务,查看邮件里的敏感信息,看看能不能找到SSH服务的账号密码。...然后测试SQLi漏洞,分别输入单引号和双引号的闭合,并使用时间盲注payloadand sleep(5)#,并未发现异常报错或延迟响应,说明可能不存在SQLi漏洞。...02、目录扫描 使用命令dirb http://172.16.33.35/对网站目录和文件进行遍历,没有发现有价值的目录或文件。

    11310

    带你认识 flask linux 部署

    如果你对完全禁用密码感到紧张,可以跳过此更改,但对于生产服务器来说,这是一个非常好的主意,因为攻击者经常在所有服务器上尝试随机帐户名和密码并希望能中奖。...任何其他端口将不被允许 06 安装基础依赖 如果你遵循了我的建议并配置了Ubuntu 16.04发行版的服务器,那么你的系统完全支持Python 3.5,因此这是我将用于部署的Python版本 基础的Python...现在我需要创建一个虚拟环境并使用所有的包依赖项来填充它,在第十五章中,我已将依赖包的列表保存到requirements.txt文件中: $ python3 -m venv venv $ source venv...我将使用上面安装的supervisor包来执行此操作。 Supervisor使用配置文件定义它要监视什么程序以及如何在必要时重新启动它们。...我希望这是一个安全的部署,所以我要配置端口80将所有流量转发到将要加密的端口443。我将首先创建一个SSL证书。

    1.3K20

    网工Python之路之paramiko 模块实验(五)异常处理

    思科实验: 平台工具: 实验平台:WIN10 使用工具:Evn-ng、python 3.6.8 实验拓扑: 注意: 书中使用了 192.168.2.0/24 ,我这里才有eve桥接的虚拟网段192.168.242.0...(抄书的哈) 2、用上面的方法登录所有交换机,把华为交换机默认的 MSTP 修改成 STP。 实验准备: LSW2 的 E0/0 进行 shutdown,模拟上联链路故障(拓扑端口也变红。)...华为实验: 平台工具: 实验平台:WIN10 使用工具:eNSP v1.3.00.100、python 3.7.3 实验拓扑: 注意: 书中使用了 192.168.2.0/24 ,我这里才有eve桥接的虚拟网段...(抄书的哈) 2、用上面的方法登录所有交换机,把华为交换机默认的 MSTP 修改成 STP。...实验准备: LSW2 的 GE0/0/1 进行 shutdown,模拟上联链路故障(拓扑端口也变红。) LSW3 的用户 python 密码由 123 改为 456。

    85120

    网工Python之路之netmiko模块实验(一)初来乍到

    网工Python之路之基础笔记(一) 网工Python之路之基础笔记(二) 网工Python之路之paramiko 模块实验(一)初来乍到 网工Python之路之paramiko 模块实验(二)循环遍历...它做了很多改进,如精简了 show (华为就是 display )命令的执行和回显内容的读取,简化了设备配置命令,支持了多厂商的设备和平台。...实验拓扑: 【SSH 客户端】Win10 虚拟网卡,IP 为 192.168.242.2/24,桥接到云彩,Python所在。 【透明交换机】SW1(启动即可,无需配置,给云彩扩展端口使用)。...实验目的: 使用 netmiko 模块登录交换机 Layer3Switch-2 ,给它的 LoopBack0 口配置 IP 2.2.2.2/32, 之后保存退出,打印回显。...大家已经发现用 netmiko 的话,代码会清晰很多,如果配合我们在 paramiko 实现中的 ip_file、cmd_file 等操作,把“待操作的设备”和“待执行的命令”都独立梳理出来,那代码会更加清晰明了

    1.9K10

    运维工程师们请记住:封掉这 50 个高危端口,让你的系统稳如泰山!

    建议:禁用Telnet服务,并改用SSH进行远程登录。...建议:禁用FTP服务,或改用更安全的SFTP(SSH File Transfer Protocol)进行文件传输。若必须使用FTP,请确保使用强密码,并限制访问权限。...建议:对于不使用的应用程序和服务,建议关闭其对应的端口。对于必须使用的应用程序和服务,请确保它们使用强密码和最新的安全补丁,并限制访问权限。...建议:对于不使用的应用程序和服务,建议关闭其对应的端口。对于必须使用的应用程序和服务,请确保它们使用强密码和最新的安全补丁,并限制访问权限。 9090端口 用途:常用于Web应用程序的通信。...限制访问权限:通过防火墙规则或服务配置文件,限制对高危端口的访问权限,仅允许信任的IP地址或子网进行访问。 使用强密码:确保所有服务都使用强密码进行保护,并定期更换密码。

    63210

    【干货】关于STP生成树,最易犯的九大错误!

    另一种选择就是使用可堆叠交换机,并配置每个上行链路端口,连接至堆叠交换机中的不同交换机。由于堆叠交换机可以配置成它就是一只交换机,那样可以使用端口信道。...因此,灾难恢复站点的交换机了解所有的VLAN,使用生成树来确定城域以太网链路是VLAN 10、20和30通向根的路径。 然而,灾难恢复站点的交换机认为,它是该干线上未使用的其他VLAN的STP根。...使用VTP的企业应该慎重使用,知道哪些交换机是VTP服务器或客户机,使用VTP密码,删除不再提供服务的交换机上的配置和VTP信息,并且在不需要VTP的场合下考虑禁用VTP。...许多企业使用思科的PortFast接口设置,帮助为连接到我们知道不运行STP的计算机的端口迅速调出交换机端口。激活端口之前,让端口连接至等待侦听和学习状态的计算机毫无意义。...因此,配置方面做到一致很重要,力求让你的所有网络设备都使用32位长路径成本这一较新的度量指标。 9、禁用生成树 我们偶尔会碰到这种网络:生成树协议故意被禁用。

    3.2K10

    什么是端口镜像?如何配置端口镜像?为啥说它是网络安全的第一道防线?

    缺点 在频繁使用的全双工链路上丢弃数据包。 过滤掉物理层错误。 复制数据可能会加重交换机 CPU 的负担。 可能会改变帧时序、改变响应时间并降低网络性能。...下面瑞哥将从华为、思科、junifer三家厂商交换机为例,给大家简单的介绍如何在交换机设备上配置端口镜像,具体操作可能会因设备型号和操作系统版本而有所不同,因此请参考您的设备型号和文档以获取详细的配置指南...华为 使用CLI配置端口镜像: 登录设备: 使用SSH、Telnet或控制台连接到您的华为交换机。...: save 退出系统视图: 输入以下命令退出系统视图: quit Cisco 使用CLI配置本地端口镜像(在Cisco交换机上): 登录设备: 使用SSH、Telnet或控制台连接到您的Cisco...配置: 配置端口镜像时,需要选择一个源端口和一个目标端口,源端口上的所有流量将被复制到目标端口供监控设备使用。 适用性: 适用于需要监控特定端口的所有流量的情况,例如,监视网络连接或排查故障。 2.

    8.6K31

    虚拟机连网(多台虚拟机互联、虚拟机与真机互联、虚拟机上网)

    同时,在主机上对应的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,它们分别作用于仅主机模式与NAT模式下。...在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。...四)如何设置各种模式: 设置桥接模式: 先确认一下真机的ip地址、网关、DNS等信息,要记住SSID名称后续有用。...其中主机端口即宿主物理网卡的端口,可以任意填写端口号,因为我们这里要实现ssh远程登录功能,这里填写“22”。...虚拟机IP地址按照虚拟机实际情况填写,虚拟机端口是22(因为外部设备最终是要通过22端口来访问虚拟机的ssh服务的)。

    6.9K20

    网工必备的快速解决方案

    • 交换机资源消耗:交换机必须处理和转发所有循环的包,导致CPU资源过载。 • 网络延迟和丢包:由于环路,数据包永远无法正常到达目的地,造成延迟和丢包。 二、如何发现网络环路? 1....三、如何快速解决网络环路? 1. 检查物理连接 环路的根本原因通常是冗余的物理连接。检查交换机之间的物理链路,看看是否存在不必要的回路。 • 拔掉不必要的连接:检查并拔掉交换机之间的冗余连接。...启用生成树协议(STP) 生成树协议(Spanning Tree Protocol,STP)是防止网络环路的常用机制。STP通过选择最优路径 ,并禁用其他冗余路径 ,从而避免数据包在网络中循环。...使用STP虽然可以避免环路,但对于不适当的 冗余链路,最好进行人工调整: • 检查冗余链路,确保它们仅在必要时启用,并通过合理配置STP来管理。...使用合适的交换机和网络设备:选择支持STP、环路保护等高级功能的交换机,以确保网络的健壮性。

    7100
    领券