一:簡介
由paramiko是用python語言寫的一個模塊,遵循SSH2協議,支持以加密和認證的方式,進行遠程服務器的連接。
由于使用的是python這樣的能夠跨平臺運行的語言,所以所有python支持的平臺,如Linux, Solaris, BSD, MacOS X, Windows等,paramiko都可以支持,因此,如果需要使用SSH從一個平臺連接到另外一個平臺,進行一系列的操作時,paramiko是最佳工具之一。
舉個常見的例子,現有這樣的需求:需要使用windows客戶端,遠程連接到Linux服務器,查看上面的日志狀態,大家通常使用的方法會是:
1:用telnet
2:用PUTTY
3:用WinSCP
4:用XManager等…
那現在如果需求又增加一條,要從服務器上下載文件,該怎么辦?那常用的辦法可能會是:
1:Linux上安裝FTP并配置
2:Linux上安裝Sambe并配置…
大家會發現,常見的解決方法都會需要對遠程服務器必要的配置,如果遠程服務器只有一兩臺還好說,如果有N臺,還需要逐臺進行配置,或者需要使用代碼進行以上操作時,上面的辦法就不太方便了。
使用paramiko可以很好的解決以上問題,比起前面的方法,它僅需要在本地上安裝相應的軟件(python以及PyCrypto),對遠程服務器沒有配置要求,對于連接多臺服務器,進行復雜的連接操作特別有幫助。
二:安裝
安裝paramiko有兩個先決條件,python和另外一個名為PyCrypto的模塊。
通常安裝標準的python模塊,只需要在模塊的根目錄下運行:
復制代碼 代碼如下:
python setup.py build
python setup.py install
以上兩條命令即可,paramiko和PyCrypto也不例外,唯一麻煩的就是安裝PyCrypto時,需要GCC庫編譯,如果沒有GCC庫會報錯,會導致PyCrypto以及paramiko無法安裝。
以下以32 位的windows XP為例,說明paramiko的安裝過程
1:安裝python,2.2以上版本都可以,我使用的是2.5,安裝過程略,并假設安裝目錄是c:/python。
2:判斷本地是否安裝了GCC,并在PATH變量可以找到,如果沒有,可使用windows 版的GCC,即MinGW,下載地址:http://sourceforge.net/projects/mingw/,然后運行下載后的exe文件進行網絡安裝,假設目錄為C:/mingw,在PATH中加入 C:/mingw/bin,并在c:/python/lib/distutils下新建一個名稱是distutils.cfg的文件,填入:
復制代碼 代碼如下:
[build]
compiler=mingw32
3:下載PyCrypto ,地址是
https://www.dlitz.net/software/pycrypto/
安裝PyCrypto:
解壓縮
在dos下進入解壓縮的目錄,運行
復制代碼 代碼如下:
C:/python/python.exe setup.py build
C:/python/python.exe setup.py install
安裝測試
運行python.exe,在提示符下輸入:
復制代碼 代碼如下:
Import Crypto
如果沒有出現錯誤提示,說明Crypto安裝成功
4:下載paramiko,地址是http://www.lag.net/paramiko/
解壓縮
在dos下進 入解壓縮的目錄,運行
復制代碼 代碼如下:
C:/python/python.exe setup.py build
C:/python/python.exe setup.py install
測試paramiko
運行python.exe,在提示符下輸入:
復制代碼 代碼如下:
Import paramiko
如果沒有出現錯誤提示,說明paramiko安裝成功
三: 使用paramiko
如果大家感覺安裝paramiko還是略有麻煩的話,當使用到paramiko提供的方便時便會覺得這是十分值得的。
下面是兩種使用paramiko連接到linux服務器的代碼
方式一:
復制代碼 代碼如下:
ssh = paramiko.SSHClient()
新聞熱點
疑難解答