RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
linux使用Python上秘钥远程登录ssh执行shell

单台登录:

创新互联专注于迪庆州企业网站建设,成都响应式网站建设公司,商城建设。迪庆州网站建设公司,为迪庆州等地区提供建站服务。全流程按需规划网站,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

#! /bin/bash
# -*- coding: utf-8 -*-
import paramiko

ssh = paramiko.SSHClient()
key = paramiko.AutoAddPolicy()
ssh.set_missing_host_key_policy(key)
pkey = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa')

ssh.connect('103.11.30.2', 22, 'root', pkey ,timeout=5)
stdin, stdout, stderr = ssh.exec_command('ls')
print(stdout.read().decode())
print(stderr.read())
# 关闭连接
ssh.close()

逐行读取多个IP多台登陆,如下

#!/usr/bin/python
# -*- coding: utf-8 -*-

import time,shutil,os
import paramiko

appname = "root"
ssh = paramiko.SSHClient()
key = paramiko.AutoAddPolicy()
ssh.set_missing_host_key_policy(key)
pkey = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa')

uptime = time.strftime("%Y%m%d")
warpath="/var/tmp/cslc/aw/update/"+uptime

def update_all_aw():
    for line in open("awip.conf"):
        print line
        ssh.connect(line, 22, appname, pkey ,timeout=5)
        stdin, stdout, stderr = ssh.exec_command('python /var/tmp/awpy/createcopy.py')
        print(stdout.read().decode())
        print(stderr.read())
        ssh.close()
        print("+++++++下一个++++++")
    return

awip.conf文件防止多台IP地址即可。

参考:
python密钥登录主机
pythonparamiko通过密钥文件登陆ssh和听过sftp上传文件
Python使用paramiko库远程安全连接SSH


网页题目:linux使用Python上秘钥远程登录ssh执行shell
文章位置:http://scyingshan.cn/article/jpeohh.html