반응형
paramiko는 Python에서 SSH 프로토콜을 사용하여 원격 서버와 안전하게 통신할 수 있도록 도와주는 모듈입니다. paramiko를 사용하면 원격 서버에 SSH를 통해 접속하여 명령을 실행하거나, 파일을 업로드 및 다운로드하는 등의 작업을 쉽게 할 수 있습니다. 주로 서버 관리, 자동화 스크립트 또는 배포 작업에서 많이 사용됩니다.
주요 기능
- SSH 연결: SSH 프로토콜을 사용하여 원격 서버에 연결할 수 있습니다.
- SFTP: 파일 전송 프로토콜을 통해 서버에서 파일을 업로드 및 다운로드할 수 있습니다.
- 명령 실행: 원격 서버에서 명령을 실행하고 그 결과를 받아올 수 있습니다.
간단한 사용 예시
import paramiko
# SSH 클라이언트 생성
client = paramiko.SSHClient()
# 호스트 키 자동 추가
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 서버에 연결 (호스트, 사용자 이름, 비밀번호 또는 키파일)
client.connect(hostname='your_server_ip', username='your_username', password='your_password')
# 명령 실행
stdin, stdout, stderr = client.exec_command('ls -la')
print(stdout.read().decode())
# 연결 종료
client.close()
이 코드는 SSH를 통해 원격 서버에 접속한 후, ls -la 명령을 실행하고 그 결과를 출력합니다.
paramiko는 특히 비밀번호 기반의 SSH 연결 외에도 공개 키 인증, 키 파일을 통한 인증 등을 지원하므로, 보안이 중요한 환경에서 많이 사용됩니다.
반응형