使用Paramiko库ssh远程主机

安装

pip install paramiko

基于用户名密码的连接

import paramiko


ssh = paramiko.SSHClient()

# 允许连接不在 know_hosts 文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(<host>, 22, <username>, <password>)

stdin, stdout, stderr = ssh.exec_command('hostname')
for line in stdout:
    print(line.replace('\n', ''))
for line in stderr:
    print(line.replace('\n', ''))

stdin, stdout, stderr = ssh.exec_command('id')
for line in stdout:
    print(line.replace('\n', ''))
for line in stderr:
    print(line.replace('\n', ''))

ssh.close()

基于公钥密钥的连接

import paramiko


private_key = paramiko.RSAKey.from_private_key_file('/home/kongxx/.ssh/id_rsa')

ssh = paramiko.SSHClient()

# 允许连接不在 know_hosts 文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(hostname=<host>, port=22, username=<username>, pkey=private_key)

stdin, stdout, stderr = ssh.exec_command('hostname')
for line in stdout:
    print(line.replace('\n', ''))
for line in stderr:
    print(line.replace('\n', ''))

stdin, stdout, stderr = ssh.exec_command('id')
for line in stdout:
    print(line.replace('\n', ''))
for line in stderr:
    print(line.replace('\n', ''))

ssh.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值