最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Windows系統(tǒng)下安裝Python的SSH模塊教程

 更新時(shí)間:2015年02月05日 11:03:07   投稿:junjie  
這篇文章主要介紹了Windows系統(tǒng)下安裝Python的SSH模塊教程,本文涵蓋了pycrypto、ecdsa、paramiko、OpenSSH、SSH等模塊的安裝,需要的朋友可以參考下

Python中使用SSH需要用到OpenSSH,而OpenSSH依賴(lài)于paramiko模塊,而paramiko模塊又依賴(lài)于pycrypto模塊,因此要在Python中使用SSH,則需要先安裝模塊順序是:pycrypto -> ecdsa -> paramiko

1、安裝pyCrypto

安裝這個(gè)比較麻煩,需要本地編譯,要裝vs或gcc還有一堆配置,還不一定能編譯成功。(網(wǎng)上能搜到安裝步驟)
建議直接下載已編譯版: http://www.voidspace.org.uk/python/modules.shtml#pycrypto
直接下載并安裝既可。
(注:crypto有java和C++版)

2、安裝ecdsa

看很多博客沒(méi)有提到這個(gè)庫(kù),但我執(zhí)行paramiko時(shí),提示找不到ecdsa模塊。
下載:https://pypi.python.org/pypi/ecdsa/0.9 ,解壓到一個(gè)目錄,目錄中有一個(gè)setup.py。
安裝比較簡(jiǎn)單,windows下直接在剛才解壓后的目錄執(zhí)行:python setup.py install

3.安裝paramiko

與安裝ecdsa類(lèi)型,只是打開(kāi)下載頁(yè)面很慢。。。

下載: https://github.com/paramiko/paramiko#,

安裝步驟同ecdsa

注:1、所有另外安裝的第三方庫(kù),如果不特指定安裝后庫(kù)目錄的話(huà),將默認(rèn)保存到 %PYTHON_HOME%\Lib\site-packages下。

2、python大小寫(xiě)敏感,對(duì)模塊名也是。

3、Crypto可以提供常見(jiàn)的加解密算法,如:RSA、RC4、DSA、DES

測(cè)試代碼:

復(fù)制代碼 代碼如下:

#!/usr/bin/python
# -*- coding:utf-8 -*-
# cp@chenpeng.info

import paramiko

def MAIN():

    host = “10.1.1.1″
    port = 22
    user = “root”
    pswd = “111222333″

    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(host, port, user, pswd)
    stdin, stdout, stderr = ssh.exec_command(‘ifconfig')
    print stdout.read()
    ssh.close()
#

if __name__=='__main__':
    try:
        MAIN()
    except Exception,e:
        print e


 
輸出如下:

目前主要用于批量執(zhí)行多個(gè)服務(wù)器的ssh命令,批量維護(hù)比較方便。

下面是兩種使用paramiko連接到linux服務(wù)器的代碼

方式一:

復(fù)制代碼 代碼如下:

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用戶(hù)名", "口令")

上面的第二行代碼的作用是允許連接不在know_hosts文件中的主機(jī)

方式二:

復(fù)制代碼 代碼如下:

t = paramiko.Transport(("主機(jī)","端口"))
t.connect(username = "用戶(hù)名", password = "口令")

如果連接遠(yuǎn)程主機(jī)需要提供密鑰,上面第二行代碼可改成:
復(fù)制代碼 代碼如下:

t.connect(username = "用戶(hù)名", password = "口令", hostkey="密鑰")

例子:
復(fù)制代碼 代碼如下:

#!/usr/bin/python  
import paramiko
 
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用戶(hù)名", "口令")
stdin, stdout, stderr = ssh.exec_command("你的命令")print stdout.readlines()
ssh.close()

下載linux服務(wù)器上的文件
復(fù)制代碼 代碼如下:

#!/usr/bin/python  
import paramiko
 
t = paramiko.Transport(("主機(jī)","端口"))
t.connect(username = "用戶(hù)名", password = "口令")
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.get(remotepath, localpath)
t.close()

上傳文件到linux服務(wù)器
復(fù)制代碼 代碼如下:

#!/usr/bin/python  
import paramiko
 
t = paramiko.Transport(("主機(jī)","端口"))
t.connect(username = "用戶(hù)名", password = "口令")
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.put(localpath,remotepath)
t.close()

您可能感興趣的文章:

相關(guān)文章

最新評(píng)論

楚雄市| 新宁县| 合肥市| 洛川县| 文水县| 方正县| 怀来县| 万荣县| 磐石市| 精河县| 克什克腾旗| 馆陶县| 永州市| 喀喇沁旗| 任丘市| 射洪县| 怀远县| 湟中县| 济阳县| 永靖县| 北安市| 文昌市| 余江县| 勃利县| 恩平市| 陕西省| 平谷区| 应城市| 呼图壁县| 莱西市| 安福县| 茌平县| 宝兴县| 射洪县| 昌平区| 巴马| 晋城| 阿瓦提县| 寿光市| 德州市| 娄底市|