码迷,mamicode.com
首页 > 其他好文 > 详细

运维堡垒机---基于paramiko模块

时间:2015-09-15 20:19:18      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:运维堡垒机---基于paramiko模块


话不多说,有图为证,主要是表达能力问题,呵呵。。。。

技术分享

简单描述:

堡垒机一般都独立出来,单独部署,通俗点说就是跳板机,中控机。

须通过堡垒机才能连接到远程目的ip。

堡垒机将某用户的所有操作都记录在案----堡垒机的意义


一,流程图描述的功能已经非常清楚了

    用户须先登陆堡垒机,然后能完成下面3个功能

    1,单台机器登陆--->所有操作入库

    2,批量机器执行命令--->所有操作入库

    3,查看操作记录

二,堡垒机的意义(自己理解):

    1,操作简单化,运维人员再也不用记服务器的username/password,直接选择某ip即可登陆操作;

    2,操作规范化,所有运维人员统一入口,分用户记录所有操作。

    3,责任清晰化,将某登陆用户的所有操作都记录在数据库,出问题有据可查;

三,准备工作:

    1,须安装paramiko源码,要用到里面的两个文件,在那两个文件的基础上进行二次开发;

        参考http://yunweipy.blog.51cto.com/10683003/1695014

    2,两个文件为:paramiko-1.7.7.1/demo.py;paramiko-1.7.7.1/interactive.py;

      3,自己写程序入口,登陆,验证。调用demo模块。完成所有功能;

      4,建库,mysql  or oracle,都可以;

四,源码分析

    运行python paramiko-1.7.7.1/demo.py,会弹出‘*** Here we go!‘,搜索这个字符串,然后后往下看,找到interactive.interactive_shell(chan),跳到interactive模块的interactive_shell方法中,分析nteractive_shell。

找到

def interactive_shell(chan, loginuser, username, ip):

    if has_termios:

        posix_shell(chan, loginuser, username, ip)

    else:

        windows_shell(chan)

然后分析posix_shell代码,可能也就20行代码,这是完成linux堡垒机的核心代码,在此基础上进行二次开发。

待续。。。






运维堡垒机---基于paramiko模块

标签:运维堡垒机---基于paramiko模块

原文地址:http://yunweipy.blog.51cto.com/10683003/1695012

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!