自动化运维使用Fabric工具实现多台主机批量分发ssh秘钥

版权声明:本文为博主原创文章,未经博主允许不得转载。原创不易,各位勉之。 https://blog.csdn.net/LL845876425/article/details/81148624

自动化运维使用Fabric工具实现多台主机批量分发ssh秘钥

前言

Fabric是一个使用Python编写的自动化运维工具,我们可以通过这个工具实现很多的功能。

在生产环境中,当遇到员工离职或者进行环境部署时,经常会需要更换服务器的秘钥,当服务器数量众多时,手动操作就显得很不现实,但是要是使用Fabric运维工具的话,这个操作就比较简单进行了。

由于现在的线上服务器多采用SSH Key的方式管理,所以对于大多数系统运维人员来说SSH Key分发也是工作内容之一,故而建议大家掌握此脚本。

代码实现

# -*- coding:utf-8 -*-

from fabric.api import *

def host_type():
    run('uname-s')

def hello():
    print('fromfabrichelloworld')

def ls():
    with settings(warn_only=True):
        sudo("ls -l")
        #put("/root/.ssh/id_rsa.pub", "/root/admin-master.pub")
        #sudo("cp /root/admin-master.pub /root/.ssh/authorized_keys")
        #sudo("chmod 600 /root/.ssh/authorized_keys")


env.user = 'root'
env.key_filename = '/root/.ssh/id_rsa'
hosts = ['X.X.X.X']

for host in hosts:
    env.host_string = host
    #put_admin_key()   ##为普通用户分发秘钥对
    ls()

猜你喜欢

转载自blog.csdn.net/LL845876425/article/details/81148624
今日推荐