使用PARAMIKO进行SSH的开发
http://www.cnblogs.com/gannan/archive/2012/02/06/2339883.html
PARAMIKO使用Python2.6
1. Install Pycrypto : http://www.voidspace.org.uk/python/modules.shtml#pycrypto
2. Install https://github.com/nischu7/paramiko
Download, unzip,
C:\python\python.exe setup.py build C:\python\python.exe setup.py install
然后就可以进行开发了。
import paramiko import os import datetime import base64 import sys import traceback hosts=[{'hostname':'10.249.75.37','username':'username','password':'password'}] port=22 local_dir='C:/Jojo/Work/Python/SSHConnect/grid/' remote_dir='/Users/maui/grid' command='deploy' def uploadFileToMachine(client,t,local_dir,remote_dir): try: print('connected,create folder--'+remote_dir) stdin,stdout,stderr = client.exec_command('mkdir '+remote_dir) for line in stdout: print('...'+line.strip('\n')) if(t==None ): t = client.get_transport() sftp=paramiko.SFTPClient.from_transport(t) files=os.listdir(local_dir) print(local_dir); dir = local_dir for f in files: path=dir+f print(path) if(os.path.isfile(path)): print ('') print('##################################################################') print('Beginning to upload file %s ' % datetime.datetime.now()) print('Uploading file:',os.path.join(local_dir,f),' to ',remote_dir+"/"+f) # sftp.get(os.path.join(dir_path,f),os.path.join(local_path,f)) #sftp.put(os.path.join(local_dir,f),os.path.join(remote_dir,f)) sftp.put(os.path.join(local_dir,f),remote_dir+"/"+f) print('Upload file success %s ' % datetime.datetime.now() ) print ('' ) t.close() except Exception, e: print '*** Caught exception: ' + str(e.__class__) + ': ' + str(e) traceback.print_exc() try: t.close() except: pass def connectHost(host): hostname = host['hostname'] username = host['username'] password = host['password'] print('connecting ...'+hostname) client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(hostname, username=username, password=password) return client if command=="deploy": paramiko.util.log_to_file('deploy.log') for host in hosts: try: client = connectHost(host) uploadFileToMachine(client,None ,local_dir,remote_dir) client.close() except Exception, e: print '*** Caught exception: ' + str(e.__class__) + ': ' + str(e) traceback.print_exc() try: client.close() except: pass
相关推荐
python基于python开发的ssh登录网络设备自动执行命令的工具.zip基于python开发的ssh登录网络设备自动执行命令的工具.zip基于python开发的ssh登录网络设备自动执行命令的工具.zip基于python开发的ssh登录网络设备自动...
在Python开发过程中,尤其是在网络编程领域,`parallel-ssh`库是处理远程服务器操作的一个理想选择。 首先,我们来理解一下“非阻塞异步”这一概念。传统的同步SSH操作在执行时会等待每个命令的完成,这在处理多个...
1. **基于Python**: Python-WebSSH使用Python编程语言进行开发,这使得它具有跨平台的特性,可以在多种操作系统上运行。 2. **Tornado框架**: Tornado是一个高性能、异步网络库,用于构建高并发的Web应用。在Python...
sshtunnel 是 Python 开发的一个服务,用来与远程服务器建立 SSH 通讯隧道
Python中的Paramiko库是一个强大的SSH2协议库,它支持加密和认证等功能,使得开发者能够方便地在Python程序中实现远程服务器的自动化管理。本篇文章将详细介绍如何使用Paramiko实现SSH的功能,包括基于用户名和密码...
标签"python 开发语言 Python库"强调了这个资源与Python编程语言及其库开发相关的事实。Python作为一种高级的、面向对象的编程语言,以其简洁的语法和丰富的库生态系统而受到广大开发者的欢迎。Python库如ssh2_...
本文将深入探讨如何在Mac OS和Linux操作系统上,利用Python开发命令行工具来高效管理SSH连接。 标题"Python-MacOS和Linux上的命令行ssh管理工具"暗示了我们将使用Python编程语言创建一个命令行工具,该工具可以在...
标题 "python sftp&ftp&ssh2" 指涉的是使用Python编程语言进行SFTP(Secure File Transfer Protocol)、FTP(File Transfer Protocol)以及SSH2(Secure Shell version 2)的相关操作。SFTP是基于SSH协议的安全文件...
在Python编程环境中,paramiko模块是一个非常重要的工具,它提供了SSHv2协议的客户端和服务器端实现,使得我们可以轻松地进行...总的来说,paramiko模块是Python中处理SSH连接的强大工具,值得在日常开发中掌握和应用。
在后端开发领域,Python提供了多种库来处理不同的任务,其中`ssh2_python`是一个重要的库,专用于实现Secure Shell (SSH) 协议,用于安全地远程登录和执行命令。本文将深入探讨`ssh2_python`库的功能、安装与使用...
Python开发语言的强大之处在于拥有丰富的第三方库支持,ssh2-python就是其中之一。它使得Python开发者无需深入理解SSH协议的底层细节,就能轻松实现安全的远程操作。在运维、自动化测试、云服务管理等领域,ssh2-...
总之,Python企业SSH登陆双因素认证系统旨在提升企业网络安全,通过结合Python编程和双因素认证技术,创建一个更加安全的远程访问环境。理解并实施这样的系统对于IT管理员来说是至关重要的,可以帮助他们更好地保护...
资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:ssh_mitm-0.3.7-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
从ssh窃取密码的脚本
这个项目基于Python语言开发,利用了Paramiko库来实现SSH协议的支持。在本文中,我们将深入探讨Python-PyRexecd的相关知识点,包括其原理、安装、配置以及使用方法。 首先,让我们了解一下SSH(Secure Shell)协议...
`parallel_ssh`是Python开发的一个高效工具,它通过SSH协议提供了对远程主机的并行操作能力,简化了运维人员的工作,提高了效率。通过正确安装和使用,开发者可以轻松地在多台服务器上执行各种自动化任务。对于需要...
本话题聚焦于移植SSH(Secure Shell)和Python源码包,这是一项对于跨平台开发和运维工作至关重要的任务。SSH是一种网络协议,用于安全地远程登录到服务器,而Python是一种强大的、广泛使用的编程语言,尤其在科学...
配置树莓派3远程Python开发环境,可以让你在本地计算机上编写代码,然后在树莓派上运行,这对于远程控制和自动化项目非常实用。下面我们将详细探讨如何一步步实现这个目标。 首先,你需要确保你的树莓派已经安装了...