Python修改paramiko模块开发运维审计保垒机
目前市面上,专门做IT审计堡垒机的厂商有很多,他们的产品都有一个特点,那就是基本上每台的售价都在20万以上。像我们做技术的,不可能每次待的公司都是大公司,那么在小公司,是不太可能投资20多万买一台硬件的堡垒机来使用,但是我们如果要规范我们的技术人员的行为规范,那么对技术人员的操作进行审计又是必不可少的,那这个时候我们应该怎么办?
审计
接触过python的人都应该知道,python有个很强大的模块叫做Paramiko,这个模块是可以进行批量服务器的ssh,以及sftp的操作。但是可能有很多人不知道,这个Paramiko下有个叫demo的模型,这个模型已经是做好的了,其实就是一个简单类型的ssh长连接工具。
我们下载Paramiko源码,解压后,在目录下有个demos的目录。
自带demos目录
执行这个目录下的demo.py文件:
实现ssh登录模型
从这里可以看出,这个demo模块就是类似于ssh登录的模型,我们可以发挥自己的想象,我们的堡垒机重要的 一环也不就是ssh登录吗?除了实现统一入口的登录以外,我们还要将从这个入口登录进去的用户进行的操作全部记录下来,再在堡垒机上设置入口唯一性,只要登录堡垒机,就执行这个模型,那么基本的审计堡垒机功能就已经实现了。
上篇文章我们也可以说,我们会结合shellinabox和paramiko来实现web界面的审计堡垒机功能。现在就先来上些效果图,下面文章会把全部的代码上传到github共享出来。
shellinabox登录堡垒机用户界面
shellinabox接入了修改后的paramiko模块,选择主机组
shellinabox接入了修改后的paramiko模块,选择服务器
shellinabox接入了修改后的paramiko模块,选择用户
通过堡垒机登录服务器成功
操作审计记录:
操作审计
目前市面上,专门做IT审计堡垒机的厂商有很多,他们的产品都有一个特点,那就是基本上每台的售价都在20万以上。像我们做技术的,不可能每次待的公司都是大公司,那么在小公司,是不太可能投资20多万买一台硬件的堡垒机来使用,但是我们如果要规范我们的技术人员的行为规范,那么对技术人员的操作进行审计又是必不可少的,那这个时候我们应该怎么办?
审计
接触过python的人都应该知道,python有个很强大的模块叫做Paramiko,这个模块是可以进行批量服务器的ssh,以及sftp的操作。但是可能有很多人不知道,这个Paramiko下有个叫demo的模型,这个模型已经是做好的了,其实就是一个简单类型的ssh长连接工具。
我们下载Paramiko源码,解压后,在目录下有个demos的目录。
自带demos目录
执行这个目录下的demo.py文件:
实现ssh登录模型
从这里可以看出,这个demo模块就是类似于ssh登录的模型,我们可以发挥自己的想象,我们的堡垒机重要的 一环也不就是ssh登录吗?除了实现统一入口的登录以外,我们还要将从这个入口登录进去的用户进行的操作全部记录下来,再在堡垒机上设置入口唯一性,只要登录堡垒机,就执行这个模型,那么基本的审计堡垒机功能就已经实现了。
上篇文章我们也可以说,我们会结合shellinabox和paramiko来实现web界面的审计堡垒机功能。现在就先来上些效果图,下面文章会把全部的代码上传到github共享出来。
shellinabox登录堡垒机用户界面
shellinabox接入了修改后的paramiko模块,选择主机组
shellinabox接入了修改后的paramiko模块,选择服务器
shellinabox接入了修改后的paramiko模块,选择用户
通过堡垒机登录服务器成功
操作审计记录:
操作审计
Python修改paramiko模块开发运维审计保垒机的更多相关文章
- Devops 开发运维高级篇之Jenkins+Docker+SpringCloud微服务持续集成——部署方案优化
Devops 开发运维高级篇之Jenkins+Docker+SpringCloud微服务持续集成--部署方案优化 之前我们做的方案部署都是只能选择一个微服务部署并只有一台生产服务器,每个微服务只有一个 ...
- Python之paramiko模块和SQL连接API
堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: i ...
- Devops 开发运维高级篇之Jenkins+Docker+SpringCloud微服务持续集成(上)
Devops 开发运维高级篇之Jenkins+Docker+SpringCloud微服务持续集成(上) Jenkins+Docker+SpringCloud持续集成流程说明 大致流程说明: 1) 开发 ...
- Devops 开发运维高级篇之容器管理
Devops 开发运维高级篇之容器管理 安装docker Dockerfile镜像脚本入门制作 Harbor镜像仓库安装及使用 不过多解释docker直接秀基操 安装docker:(jenkins服务 ...
- Devops 开发运维高级篇之微服务代码上传和代码检查
Devops 开发运维高级篇之微服务代码上传和代码检查 微服务持续集成(1)-项目代码上传到Gitlab 微服务持续集成(2)-从Gitlab拉取项目源码 微服务持续集成(3)-提交到SonarQub ...
- (视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)
本文是<快速创建网站>系列的第9篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...
- Python之paramiko模块
今天我们来了解一下python的paramiko模块 paramiko是python基于SSH用于远程服务器并执行相应的操作. 我们先在windows下安装paramiko 1.cmd下用pip安装p ...
- 使用python的Paramiko模块登陆SSH
使用python的Paramiko模块登陆SSH paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. python的paramiko模块 ...
- 利用python 下paramiko模块无密码登录
利用python 下paramiko模块无密码登录 上次我个大家介绍了利用paramiko这个模块,可以模拟ssh登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥 ...
随机推荐
- SpringBoot安装与配置
1.环境准备 1.1.Maven安装配置 Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件. 下载Maven可执行文件 cd /usr/local ...
- poj——1182食物链 并查集(提升版)
因为是中文题,题意就不说了,直接说思路: 我们不知道给的说法中的动物属于A B C哪一类,所以我们可以用不同区间的数字表示这几类动物,这并不影响结果,我们可以用并查集把属于一类的动物放在一块,举个例子 ...
- 一夜搞懂 | JVM 类加载机制
前言 本文已经收录到我的Github个人博客,欢迎大佬们光临寒舍: 我的GIthub博客 学习导图 一.为什么要学习类加载机制? 今天想跟大家唠嗑唠嗑Java的类加载机制,这是Java的一个很重要的创 ...
- 从零开始的JSON库
从零开始的JSON库 项目地址 jsoncpp ,此项目受到 leptjson 启发,实现了最基本的功能,仅作学习使用. 提供简单的 parse() 和 generate() 方法将 JSON 文本解 ...
- [POJ2533]Longest Ordered Subsequence<dp>
题目链接:http://poj.org/problem?id=2533 描述: A numeric sequence of ai is ordered if a1 < a2 < ... & ...
- [ASP.NET Core MVC] 如何实现运行时动态定义Controller类型?
昨天有个朋友在微信上问我一个问题:他希望通过动态脚本的形式实现对ASP.NET Core MVC应用的扩展,比如在程序运行过程中上传一段C#脚本将其中定义的Controller类型注册到应用中,问我是 ...
- Hadoop入门之hdfs
大数据技术开篇之Hadoop入门[hdfs] 学习都是从了解到熟悉的过程,而学习一项新的技术的时候都是从这个技术是什么?可以干什么?怎么用?如何优化?这几点开始.今天这篇文章分为两个部分.一. ...
- 1078 Hashing (25分)
The task of this problem is simple: insert a sequence of distinct positive integers into a hash tabl ...
- java电商项目常见异常
1. java.lang.nullpointerexception 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对 ...
- .NET Core项目部署到Linux(Centos7)(五)Centos 7安装.NET Core环境
目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...