티스토리 뷰
paramiko feature
- paramiko는 platform에 독립적이다.
- ansible에서 사용되고 있다.
Linux 별 설치
ubuntu 설치는 apt-get 를 통해 설치할 수 있다.
- sudo apt-get install python-paramiko
CentOS 설치는 아래와 같다.
- sudo yum install python-paramiko
기본적인 코드는 다음과 같다.
import paramiko def main(): ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('127.0.0.1', port=22, username='test', password='test123') ## ssh.connect('192.168.100.100', port=22, username='heat-admin', key_filename='/home/stack/.ssh/id_rsa') ## 위 sample은 ssh key를 사용한 접속시 사용될 수 있는 sample code 이다.(openstack의 tripleo를 사용하는 경우) paramiko.util.log_to_file("/tmp/log_ssh_file") ## paramiko를 통한 ssh 접속에 대한 로그를 생성한다. ## scp와 같은 file 전송이 필요한 경우가 있다. sftp = ssh.open_sftp() try: sftp.stat('/home/stack/dest_file.py') except IOError: sftp.put('src_file', 'dest_file') print stdout.read() stderr, stdout, stdin = ssh.exec_command("make directory1") ## 다수의 명령을 입력하는 또 다른 방법 ssh.close() if __name__ == '__main__': main()
다양한 명령어를 사용하기 위해서는 thread생성을 통한 ssh의 channel session을 유지시켜줘야 한다.
다수의 command를 입력하도록 하기 위해서는
channel
참고로 eclipse에서 추가할 경우 library path를 지정해 주어야 한다.
Windows
아래 사이트에서 PyCrypto 를 다운로드 받아 설치한다.
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
아래 사이트에서 paramiko 를 다운로드 받아 설치한다.
https://github.com/paramiko/paramiko/
설치는
python setup.py install
명령을 사용하면된다.
참고사이트
- http://www.lag.net/paramiko/
- http://www.lag.net/paramiko/docs/ (라이브러리 모음)
- http://jessenoller.com/blog/2009/02/05/ssh-programming-with-paramiko-completely-different (상세설명)
- http://segfault.in/2010/03/paramiko-ssh-and-sftp-with-python/
- http://jessenoller.com/2009/02/05/ssh-programming-with-paramiko-completely-different/
'programming > Scripts' 카테고리의 다른 글
Bash shell variables looks like an array (0) | 2022.12.19 |
---|---|
powershell (0) | 2019.08.14 |
wsgi with apache (0) | 2016.07.20 |
parsing xml (0) | 2013.07.12 |
- Total
- Today
- Yesterday
- Helm Chart
- wsl2
- OpenStack
- kata container
- kubernetes
- nginx-ingress
- ceph
- minio
- kubernetes install
- socket
- boundary ssh
- hashicorp boundary
- metallb
- K3S
- macvlan
- jenkins
- aquasecurity
- Jenkinsfile
- ansible
- GateKeeper
- DevSecOps
- open policy agent
- openstacksdk
- vmware openstack
- crashloopbackoff
- Terraform
- mattermost
- minikube
- openstack backup
- azure policy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |