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登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥 ...
随机推荐
- GAN的五大有趣应用
引言 你能看出这张照片中面部的共同点吗? 这些人都不是真实存在的!这些面部图像都是由GAN技术生成的. "GAN"这个词是由Ian Goodfellow在2014年提出的,但相关概 ...
- HDU - 1962 二分图最大匹配模板(扑克牌得分最大)
题意: 直接说数据,第一行给定几组数据,每一组数据的第一行是两个人扑克牌分别的数量,第一行是亚当的扑克牌,第二行是夏娃的扑克牌,每一个扑克牌的大小用两个字符来表示,第一个表示是几号扑克牌,第二个表示扑 ...
- 前端学习(3)-CSS
一 CSS CSS是Cascading Style Sheets的缩写,层叠样式表,用来控制网页数据的显示,可以使网页的显示与数据内容分离. 二 引入方式 (1)行内式:在标记的style属性中设置C ...
- setAttribute 方法
IE8及以下不支持 setAttribute用来修改dom标签上的属性比如(onclick); getAttribute用来获取dom标签上的属性
- iOS mmap
一.常规文件操作 常规文件操作(read/write)有那几个重要步骤: 进程发起读文件请求 内核通过查找进程文件符表,定位到内核已打开文件集上的文件信息,从而找到此文件的 inode inode 在 ...
- CSS躬行记(2)——伪类和伪元素
一.伪类选择器 伪选择器弥补了常规选择器的不足,能够实现一些特殊情况下的样式,例如在鼠标悬停时或只给字符串中的第一个字符指定样式.与类选择器类似,可以从HTML元素的class属性中查看到,但伪选择器 ...
- 「MoreThanJava」计算机发展史—从织布机到IBM
「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...
- Java Web项目bug经验202002112049
运行程序后,如果配置有问题,可能不会进代码,而直接报错.
- Django之环境安装
什么是Django Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由 ...
- Spring Taco Cloud——design视图的创建(含thymeleaf模板遇到的一些小问题)
先来看下综合前两篇内容加上本次视图的成果 可能不是很美观,因为并没有加css样式,我想等整个项目有个差不多的功能实现后再进行页面优化,请谅解 下面我贴上自己定义修改过的Taco的design视图代 ...