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登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥 ...
随机推荐
- Vue history路由模式 apache配置上线
1. 首先在vue项下的router.js 文件配置 mode为history模式,并且设置好对应的base选项 说明:base配置为你当前项目实际上线时所在的目录文件夹, 我这就是放在站点的根目录下 ...
- [vijos1304]回文数<模拟>
题目链接:https://vijos.org/p/1304 好久没写博客了,最近一直打不出题,感觉自己是废了,今天做了一道模拟水题,但还是半天没过,后来才发现是忘记考虐10以上的进制是带有字母的,然后 ...
- CodeForces 506B/505D Mr. Kitayuta's Technology
Portal:http://codeforces.com/problemset/problem/506/B http://codeforces.com/problemset/problem/505/D ...
- python中装饰器的使用
看个例子: # 定义装饰器函数 def log(func): """ 接受一个函数作为参数,并返回一个函数 :param func: :return: "&qu ...
- 新建基于STM32F103ZET6的工程-HAL库版本
1.STM32F103ZET6简介 STM32F103ZET6的FLASH容量为512K,64K的SRAM.按照STM32芯片的容量产品划分,STM32F103ZET6属于大容量的芯片. 2.下载HA ...
- (CSS):last-child与:last-of-type区别
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>la ...
- C# 快速开发框架搭建—环境搭建
一.新建MVC项目 打开vs2013新建空的解决方案,在解决方案中增加一个MVC项目,如图: 删除不需要的文件,剩下如图所示的文件夹: 首先创建一个MVC5控制器(Login,登入使用),该控制器无需 ...
- Java Interger小知识
Integer装箱与拆箱 装箱: Integer i = 10; 相当于:Integer i = Integer.valueOf(10); 拆箱: Integer i = 10; //装箱 int t ...
- 3D城市
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- window部署ftp服务器
...