快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

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://6mz.cn/article/jpeohh.html

其他资讯