[python] Fabric으로 SSH 터널링 설정하기

Fabric은 Python으로 작성된 배포 자동화 도구로, 서버와의 SSH 연결을 통해 원격 서버의 명령어 실행과 파일 전송 등을 자동화할 수 있습니다. 이번 포스트에서는 Fabric을 사용하여 SSH 터널링을 설정하는 방법을 소개하겠습니다.

1. Fabric 설치

먼저 Fabric을 설치해야 합니다. 아래의 명령어를 사용하여 Fabric을 설치할 수 있습니다.

pip install fabric

2. SSH 터널링 설정

Fabric을 사용하여 SSH 터널링을 설정하려면, fabric의 Connection 객체를 생성하고 해당 객체의 forward_agent 속성을 True로 설정해야 합니다. forward_agent는 로컬 시스템의 SSH 관련 환경 변수와 설정을 원격 서버에 전달하는 역할을 합니다.

아래는 예시 코드입니다.

from fabric import Connection

# SSH 연결 설정
c = Connection(host='your_host', user='your_username', forward_agent=True)

# SSH 터널링 설정
c.local('ssh-add')

# 서버 접속 후 명령어 실행
result = c.run('ls -al')
print(result.stdout)

위의 코드에서 your_hostyour_username은 자신의 원격 서버의 호스트와 사용자 이름으로 수정해야 합니다.

3. 실행

위의 코드를 실행하면, Fabric을 통해 원격 서버로 SSH 터널을 설정하고, ls -al 명령어를 실행한 결과를 출력할 수 있습니다.

참고 자료