首页 > 编程语言 >Python实现限制主机登录

Python实现限制主机登录

时间:2022-11-01 00:36:06浏览次数:52  
标签:cmd 登录 Python 主机 hostname send client ssh result

import paramiko
import datetime 
import time
f=open('./hostnames.txt','r') #准备主机文件,一台主机占一行
hostnames=f.readlines()

for hostname in hostnames:
    hostname=hostname.strip()
    ssh_client=paramiko.SSHClient()
    ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh_client.connect(hostname=hostname,username='python',password='123456')  #连接登录网络设备
    print('Sucessfully conneted to ',hostname)

    cmd=ssh_client.invoke_shell()
    cmd.send('sys\n')

    cmd.send('acl number 3000\n')
    cmd.send(f'rule 10 permit ip source 192.168.99.0 0.0.0.255 destination {hostname} 0\n')
    cmd.send('rule 20 deny ip\n')                                  #通过ACL规则限制源地址为192.168.99.0网段的主机连接

    cmd.send('user-interface vty 0 4\n')                            
    cmd.send('acl 3000 inbound\n')


    cmd.send('rsa local-key-pair  create\n')
    cmd.send('y\n')
    cmd.send('2048\n')

    result=cmd.recv(66666)
    result=result.decode('ascii')
    print(result)
    
    print('The operation has finished!!!')
    
    time.sleep(2)
    ssh_client.close()

标签:cmd,登录,Python,主机,hostname,send,client,ssh,result
From: https://www.cnblogs.com/tang-learning/p/16846406.html

相关文章

  • Python实现批量更改网络设备名
    importparamikoimportdatetimeimporttimef=open('./hostnames.txt','r')hostnames=f.readlines()#hostnames=['1.1.1.1','2.2.2.2','3.3.3.3','192.168.99.10','......
  • Python实现监控网络设备状况并发送邮件
    importparamikoimportdatetimeimporttimefromemail.mime.textimportMIMETextimportsmtplib#定义发送邮箱函数defsend_email(title):title=titles......
  • Python实现批量网络设备备份
    importparamikoimportdatetimeimporttimef=open('./hostnames.txt','r')#准备主机文件,一台主机占一行hostnames=f.readlines()forhostnameinhostnames:......
  • python函数
    什么是函数?函数相当于具备某一功能的工具函数使用原则:先定义,后调用为什么要使用函数?组织结构不清晰,可读性差代码冗余可维护性,扩展性差函数使用函数定义#......
  • Python 基础
    目录基础语法变量标识符命名规范注释单行注释多行注释import引入模块的方法运算法算术运算符成员运算符条件控制if语句matchcase语句基础语法变量标识符命名规范标......
  • Python实现批量登录网络设备
    importparamikoimportdatetimeimporttimef=open('./hostnames.txt','r')#准备好主机文件,一台主机占一行hostnames=f.readlines()#hostnames=['1.1.1.1','2.2.......
  • npm install报奇怪的python错误
    一、问题描述从git上面拉取项目,准备在本地运行,在使用 npminstall 安装依赖的时候,出现了奇怪的python错误。但是类似的项目能够正常的安装依赖并运行二、解决方法如......
  • Python开发 之 两种爬虫的方式 正则表达式、XPath
    文章目录​​1、简介​​​​2、简单爬取基本信息——效果图​​​​3、先将一下利用正则的方式​​​​3.1简单理解​​​​3.2源码​​​​4、XPath​​​​4.1简单介......
  • 学习python-Day82
    今日学习内容一、vue项目目录介绍myfirstvue 项目名字 -node_modules 文件夹,内部有很多当前依赖的模块,可以删除,但是想恢复就需要敲:npminstall-publice 文......
  • [python] 合并文件 终端命令行 cmd版
    importgetoptimportosimportsysdefshow_help():print("-h查看帮助")print("-s<path>文件路径1例:E:\\folk.bin")......