Vad är det bästa SSH-biblioteket för Python?


Bästa svaret

Du kan använda Paramiko för detta. Koden nedan är enkel SFTPConnection-klass med paramikomodulen från min 2-åriga kärna (den ska fungera om inte, då skulle det ge dig en uppfattning om paramikos användning).

import paramiko

import os

import subprocess

class SFTPConnection:

"""

Class for SFTP Connection using Paramiko

"""

def \_\_init\_\_(self):

paramiko.util.log\_to\_file("/tmp/paramiko.log")

self.host1 = "192.168.1.77"

self.port = 22

#self.path = os.path.join(os.environ["HOME"], ".ssh", "id\_dsa")

#self.key = paramiko.DSSKey.from\_private\_key\_file(self.path)

self.privatekeyfile = os.path.expanduser("~/.ssh/id\_rsa")

self.mykey = paramiko.RSAKey.from\_private\_key\_file(self.privatekeyfile)

self.username = "root"

def connection\_to\_77(self):

"""

SFTP connection to 192.168.1.77 server using root user

"""

transport = paramiko.Transport((self.host1, self.port))

transport.connect(username = self.username, pkey = self.mykey)

sftp = paramiko.SFTPClient.from\_transport(transport)

return sftp

Svar

Paramiko – implementerar SSH2-protokollet för säkra anslutningar till fjärrmaskiner.

Pexpect – skapar ett barnprogram och kontrollerar det som om en människa skriver kommandon.

underprocess – är en standardbibliotekmodul, så den kommer att finnas tillgänglig med pythoninstallation. Men det har ett rykte som svårt att använda eftersom det ”s api är icke-intuitivt.

Se länkar:

pythonbibliotek för ssh-hantering

SSH-programmering med Paramiko | Helt annorlunda

Core pexpect-komponenter

Det enda enkla sättet att göra SSH i Python idag är att använda delprocess + OpenSSH .. .

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *