paramiko简介



paramiko的起源和发展


首先来看谁创造了paramiko,是一个名叫Jeff Forcier创建了paramiko项目

项目主页http://www.paramiko.org/

大家可以去看上面有很多相关的信息。然后这个项目是开源的,源码维护在github上。

源码在github https://github.com/paramiko/paramiko维护

这个paramiko它是非常著名的一个ssh的一个相关的项目。然后很多人在上面贡献源码,当然这个Jeff Forcier它是一个主要的维护者。

 

我们首先看一下paramiko的起源,最开始它是用Python的对这个ssh进行一个封装,封装就是对一些面向对象的方法,就是把变量和方法给它包装起来。提供一些外部的api给大家很方便的使用它,比如说ssh,它很复杂但是通过它的一个包装把它很简单的提供给大家使用,那么问题来了。什么是ssh呢。

 


ssh基本原理


简单来说ssh是用于计算机之间加密登陆的网络协议,协议就是端对端的一种通讯交互,我们可以看一下这个ssh它有什么特点。

 


SSH有什么特点


传统的网络服务程序,如rsh、FTP、POP和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。

 

而SSH是目前较可靠,专为远程登录会话和其它网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。

 

SSH之另一项优点为其传输的数据可以是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP、甚至为PPP提供一个安全的“通道”。

 


如何使用ssh


那么我们如何使用ssh

其实这个是一个基本的常识,ssh是linux,osx上的标配,比如说你的电脑是苹果电脑,它是osx系统,默认的它就有ssh是可以直接用的,那我们如何来看机子是否装有ssh呢,打开命令行输入

命令行 ssh usr@host进行查询。

那么这个ssh的命令行基本上就是ssh+username和ip,默认端口是222。

它的使用是非常简单的,我们一旦知道一台机子的它的ip跟用户名和密码,就能ssh来进行登录这样就可以进行交互式的操作,而且上面看它的特点它是,进过加密的是相对安全的,那我们本次所用的paramiko和ssh这个相互之间有什么特点呢。

 


paramiko VS ssh shell


首先ssh它是自带的使用非常的简单,但是paramiko呢它是一个更高层次的封装,可以实现更复杂的命令,一个实际工作中遇到的问题就是,面对自动化运维面对若干台机器Shell脚本,用ssh指令写Shell脚本是非常麻烦的。而且Shell脚本的话本身它的语法是不太好操作,但paramiko是基于Python的它明显是一个更好的选择,这个Python语言它本身更就是语法非常的简洁,语法非常的好写。paramiko就是基于Python的所以说用paramiko来操作这些指令的话是相对容易的。然后paramiko又跟好的扩展性。我们之后就可以看到其它用paramiko的一些扩展,但是用ssh的直接用它和这个Shell的话,扩展性是很差的。我们可以看出paramiko是有很大的优势的。

 


谁在使用paramiko


首先先就是在自动化运维的,就是DevOps这个领域内它在广泛的使用。而且很多paramiko二次开发工具最著名的就是,这个Jeff Forcier本人它,即是paramiko的一个维护者,也是fabic基于paramiko进行二次开发的一个工具的一个维护者。就是它本人在paramiko的基础上开发了fabic,当然也有其它的开发者,基于paramiko进行了其它的适用于自己项目的二次开发。

 


安装paramiko


建议安装在osx或者linux机器,方便,win下容易出错

为了开发部署方便,利用virtualenv建立虚拟环境

pip install paramiko

 

安装pip


pip是一个以Python计算机程序语言写成的软件包管理系统,它可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”

 

安装Virtualenv


virtualenv通过创建独立Python开发环境的工具, 来解决依赖、版本以及间接权限

virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其它虚拟环境共享库, 能够方便的管理python版本和管理python库

pip install virtualenv

 

激活env source tech/bin/activate

pip install paramiko

安装完之后来激活,paramiko

 

今后准备


pycham编译器[集python编辑器,编译,python shell,system shell 与一身]



【本文由麦子学院独家原创,转载请注明出处并保留原文链接】

logo
© 2012-2016 www.maiziedu.com
蜀ICP备13014270号-4 Version 5.0.0 release20160127

您有一个双11钜惠红包未领取

客服热线 400-862-8862

回到顶部