반응형
특정 서버에 SSH로 접속하여, 원격 커맨드를 날릴 일이 있어서 이것저것 찾아보던 중,
Python에서는 paramiko라는 lib를 많이 사용한다는 걸 알았다.
설치방법은 아래와 같이 pip로 원 커맨드로 가능함.
$ pip install paramiko
테스트했던 Python버전은 3.6이었지만, Python 2.x나 그 전 버전에서도 잘 동작하는 것으로 보인다.
아래는 예제소스다.
ssh.connect부분은 각 Case에 맞춰서 하나만 사용하면 된다.
import paramiko def main(): ssh = paramiko.SSHClient() # HostKey 저장 여부를 결정하는 옵션인데, 왠만하면 그냥 넣어주자. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # CASE 1: 인증 시 username과 password를 사용 ssh.connect('서버 IP', username='인증 ID', password='패스워드') # CASE 2: AWS의 EC2같은 경우 password를 key_filename로 바꾸어서 파일 명을 지정할 수 있다. ssh.connect('서버 IP', username='인증 ID', key_filename='Key파일 위치') stdin, stdout, stderr = ssh.exec_command('커맨드 입력') ssh.close() if __name__ == '__main__': main()
반응형
'개발 > Python' 카테고리의 다른 글
[Python] pyYaml을 이용한 yaml parsing (0) | 2017.02.10 |
---|---|
[Python] asyncio (0) | 2017.02.10 |
[Python] requirements.txt (0) | 2017.01.31 |
[SMTPlib] mail loops back to me (MX problem) (0) | 2016.12.27 |
[Python] file read / write (0) | 2016.11.09 |