我需要實現乙個windows下遠端連線到ssh伺服器執行命令的功能,所以就在網上找資料。我的環境是:windows7 64位,python 2.7 32位。按照網上的說法,需要**pycrypto和paramiko兩個模組進行安裝。最後**的版本是pycrypto2.3和paramiko1.7.6。
安裝過程也比較簡單,先安裝pycrypto後安裝paramiko,解壓後在命令提示符下切換到解壓後的目錄,輸入python setup.py install就可以了。另外安裝pycrypto前需要先安裝mingw,不然會因為缺少編譯器而提示缺少乙個bat檔案。安裝好mingw後,需要在python安裝目錄下的lib\distutils\資料夾裡建立乙個distutils.cfg檔案,檔案內容為:
[build]
compiler=mingw32
mingw的**位址:
pycrypto及paramiko的**與安裝請參考:《windows下安裝python paramiko模組的**》
安裝好以後就可以編寫寫**了。由於我的ssh伺服器只需要使用者名稱和密碼就可以連線,應該說屬於最簡單的一種了。
下面是乙個例子,相信一看就懂了:
stdout.readlines()返回乙個列表,一般來說,linux命令的每行輸出儲存為乙個元素,且已經帶了換行符。
import paramiko
client = paramiko.sshclient()
cliewww.cppcns.comnt.set_missing_host_key_policy(paramiko.autoaddpo程式設計客棧licy())
client.connect('192.168.8.248', 22, username='root', password='password', timeout=4)
st程式設計客棧din, stdout, stderr = client.exec_command('ls -l')
for std in stdout.readlines():
print std,
client.close()
輸出的結果為:
>>>
總計 184804
-rw------- 1 root root 973 05-19 20:27 anaconda-ks.cfg
-rw-r--r-- 1 root root 13895 程式設計客棧05-19 20:27 install.log
-rw-r--r-- 1 root root 3058 05-19 20:25 install.log.syslog
-rw-r--r-lfkuxdvql- 1 root root 189008625 05-28 09:55 tmp
>>>
本文標題: python實現建立ssh連線的方法
本文位址:
Python Python建立SSH連線的方法
安裝過程也比較簡單,先安裝pycrypto後安裝paramiko,解壓後在命令提示符下切換到解壓後的目錄,輸入python setup.py install就可以了。另外安裝pycrypto前需要先安裝mingw,不然會因為缺少編譯器而提示缺少乙個bat檔案。安裝好mingw後,需要在python安...
實現自動SSH連線
usr bin expect set timeout 10 set username lindex ar 0 set password lindex ar 1 set hostname lindex ar 2 set username ftpuser set password ftpuser spa...
Python 自動連線ssh
usr bin python coding utf 8 import sys,time,os try import pexpect except importerror print you must install pexpect module sys.exit 1 addr map try key...