최상의 답변
이 경우 Paramiko를 사용할 수 있습니다. 아래 코드는 내 2 년 된 요점의 Paramiko 모듈을 사용하는 간단한 SFTPConnection 클래스입니다 (그렇지 않으면 작동해야 paramiko 사용법에 대한 아이디어를 얻을 수 있습니다).
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
Answer
Paramiko – 원격 컴퓨터에 대한 보안 연결을 위해 SSH2 프로토콜을 구현합니다.
Pexpect – 자식 애플리케이션을 생성하고 사람이 명령을 입력하는 것처럼 제어합니다.
p>
subprocess -표준 라이브러리 모듈이므로 “python 설치시 사용할 수 있습니다. 그러나 api는 직관적이지 않기 때문에 사용하기 어렵다는 평판이 있습니다.
링크 참조 :
Paramiko를 사용한 SSH 프로그래밍 | 완전히 다른
현재 Python에서 SSH를 수행하는 유일한 간단한 방법은 하위 프로세스 + OpenSSH를 사용하는 것입니다. .