2017-02-09 1 views
-2

ich paramiko in Python bin mit Dateien auf Remote-Rechner SFTP, Rest-Code macht Sinn für mich, aber diese spezifische Linie zu verstehen mich nicht, was sie tutWas diese Zeile von Python-Code tut bedeutet

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

Was ist Transport?

Dies ist der gesamte Code:

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() 

Was ich verstehe, ist, dass es die Buchse macht, ich könnte falsch sein, bitte jemand dies in den meisten einfachen Worten zu mir klären.

+2

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

+4

Es ist ein Objekt der Klasse 'paramiko.Transport'. Haben Sie sich die Dokumentation für Paramiko angesehen? – TigerhawkT3

Antwort

0

Der vollständige RFC-Titel von SSH lautet "SSH Transport Layer Protocol" und es ist normalerweise eine andere Schicht über TCP/IP.

Sehr vereinfachte Erklärung für die Transportfunktion. Es ist in der Tat eine sichere Verbindung von Ihrer Maschine zur Fernbedienung wie das Führen eines Stahlrohrs von einem Gebäude zum nächsten. Ein Passant kann nicht sehen, was in der Leitung ist.

SFTP ist ein Unterprotokoll von SSH und verhält sich wie ein Kabel, das durch den SSH-Stahlkanal geführt wird. Es ist möglich, mehrere SFTP-Verbindungen gleichzeitig über dieselbe SSH-Verbindung laufen zu lassen, die nicht nur mit dem Remote-Server, sondern auch mit anderen Computern verbunden sind, auf die der Remote-Server Zugriff hat.

Das obige zusammensetzen. Um eine SFTP-Verbindung zu einem Remote-Server herzustellen, müssen Sie zunächst eine SSH-Transportverbindung herstellen.