2017-02-09 84 views
-2

我使用的paramiko在Python中SFTP發佈文件到遠程機器,代碼休息對我來說很有意義,但是這個具體的線路我不理解它做什麼這是什麼行Python代碼意味着

transport = paramiko.Transport((hostname, 22)) 

是什麼運輸?

這是整個代碼:

transport = paramiko.Transport((hostname, 22)) 
transport.connect(username=username, password=password) 
sftp = paramiko.SFTPClient.from_transport(transport) 
sftp.put(localPath, remotePath) 

sftp.close() 
transport.close() 

我明白了什麼是它使得插座,我可能是錯的,請有人在最簡單的術語闡明這個給我。

+2

http://docs.paramiko.org/en/2.1/api/transport.html ... –

+4

這是paramiko.Transport類的一個對象。你看過Paramiko的文檔嗎? – TigerhawkT3

回答

0

SSH的完整RFC標題爲"SSH Transport Layer Protocol",它通常是TCP/IP上方的另一個層。

非常簡化的傳輸函數解釋。實際上,從您的機器到遠程機器創建一個安全的連接,就像從一個建築物到另一個建築物運行鋼管一樣。路人看不到管道里有什麼東西。

SFTP是SSH的一個子協議,其行爲就像沿着SSH鋼管運行的電纜。可以同時在相同的SSH連接上運行多個SFTP連接,這些連接不僅連接到遠程服務器,還連接到遠程服務器可以訪問的其他計算機。

把上述放在一起。要與遠程服務器建立SFTP連接,首先必須建立SSH傳輸連接。