堡垒机readme

# Eat_bees_shit一个没有写前端页面的堡垒机

Eat_bees_shit==================Eat_bees_shit是基于Python开发的一款简单易用的IT审计堡垒机,通过对原生ssh代码进行了部分修改,从而实现用户在登录堡垒机后,他所有的命令操作都将被实时抓取并写入审计日志,以供后期审计,目前CrazyEye主要实现了以下功能:

- 用户行为审计

   - 底层使用原生ssh,不牺牲ssh使用体验,对用户操作无任何影响   - 支持对主机进行分组管理   - 可为运维人员分配指定服务器、指定账号的操作权限,即一个用户可以登录多少生产服务器,以及登录后有什么权限,都可以自如的控制   - 用户登录堡垒后的所有操作均可被记录下来以供日后审计.

注意:: 目前暂时不支持对Windows系统的操作审计和批量任务

快速安装`(for Ubuntu)`========###环境依赖

    python3.5+

    Django==2.1.7

    sshpass     openssh

####3.安装sshpass*  进入文件目录,执行`tar xvzff Eat_bees_shit.gz`*  `cd sshpass-1.06/`*  `./configure`*  `make && make install`

###3.安装改过源码的openssh * `cd src/openssh-7.3p1/`*  `./configure --prefix=/usr/local/openssh7/ `

    注意有可能会报错误configure: error: OpenSSL version header not found.这是因为openssh需要openssl,此时需要安装一下openssl的开发模块` 

        在ubuntu上安装openssl dev组件        sudo apt-get install zlib1g        sudo apt-get install zlib1g-dev        sudo apt-get install libssl-dev

        再重新执行configure就应该没问题了

*  `make && make install`

###4.配置审计用户 *   创建一个审计用户,`adduser Eat_bees_shit`*   修改audit_user的.bashrc, `vim /home/crazy_audit/.bashrc`,在文件末尾加下以下2行并保存

        python3 /usr/local/Eat_bees_shit/Eat_bees_shit.py run

        logout

* 修改sudo配置文件,使crazy_audit用户可以在sudo时不用输入密码

    $ sudo vim /etc/sudoers

        %Eat_bees_shit    ALL=NOPASSWD:ALL #/usr/bin/strace,/usr/bin/python3

###5.Eat_bees_shit

    sudo python3 manage.py runserver 0.0.0.0:9000    *注意启动此程序的用户不应是crazye_audit用户

###6.登录*   管理用户登录通过浏览器打开`http://your_ip_addr:9000/`

        用户名:django创建时的账户        密码: 密码

*  普通只需要通过命令行登录即可 

[email protected]:~$ su eat_bee_dung      <Settings "Eat_bee_dung.settings">Username:[email protected]Passwrod:Welcome login ...0, web[1]1, Java[1]2, yun[1]3 未分组主机【4】Choose group:00  python  IP:192.168.146.137  POrt:22,IDC:Web主机Choose host:0login host python(192.168.146.137)@python:123456sshpass  -p 123456 /usr/local/openssh7/bin/ssh [email protected] -o "StrictHostKeyChecking no" -Z 2fe9b171f7fb7e50f20c1e6c0efaea15ssh tag: 2fe9b171f7fb7e50f20c1e6c0efaea15Welcome to Ubuntu 18.10 (GNU/Linux 4.18.0-25-generic x86_64)

 * Documentation:  https://help.ubuntu.com * Management:     https://landscape.canonical.com * Support:        https://ubuntu.com/advantage

0 packages can be updated.0 updates are security updates.

Your Ubuntu release is not supported anymore.For upgrade information, please visit:http://www.ubuntu.com/releaseendoflife

New release ‘19.04‘ available.Run ‘do-release-upgrade‘ to upgrade to it.

Last login: Sat Sep 28 22:22:18 2019 from 192.168.146.134[email protected]:~$ pwd/home/python[email protected]:~$ lscmd.log  demo.log  Documents  Eat_bee_dung      examples.desktop  paramiko-master      paramiko-master.zip.0  Public           pycrypto-2.6.1.tar.gz  sshpass-1.06         Templates  venvcmd.txt  Desktop   Downloads  Eat_bee_dung.zip  Music             paramiko-master.zip  Pictures               PycharmProjects  ssh_cmd.py             sshpass-1.06.tar.gz  test.py    Videos[email protected]:~$ ifconfigens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500        inet 192.168.146.137  netmask 255.255.255.0  broadcast 192.168.146.255        inet6 fe80::4b70:fb40:7a4:c087  prefixlen 64  scopeid 0x20<link>        ether 00:0c:29:a9:86:20  txqueuelen 1000  (以太网)        RX packets 477  bytes 338486 (338.4 KB)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 321  bytes 45678 (45.6 KB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536        inet 127.0.0.1  netmask 255.0.0.0        inet6 ::1  prefixlen 128  scopeid 0x10<host>        loop  txqueuelen 1000  (本地环回)        RX packets 177  bytes 14776 (14.7 KB)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 177  bytes 14776 (14.7 KB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[email protected]:~$ 

作者介绍=============

我也不想这么菜 

虽然有诸多不完美但是基本功能还是实现了  感谢很多大佬对我的帮助  大家想看完整课程的话 就到B站搜索老男孩,里面有详细的制作过程

原文地址:https://www.cnblogs.com/langjitanya/p/11607637.html

时间: 2024-10-14 04:28:38

堡垒机readme的相关文章

使用python 的paramiko制作堡垒机

堡垒机-readme: (数据库为mysql) 1.如果数据库不存在,就创建数据库,对数据库的用户授权,创建表结构,和初始化一些数据 2.如果数据库存在,就跳到下一步 3.用户登录堡垒机进行验证 4.如果此堡垒机用户存在,验证成功,就列出该堡垒机用户所有的主机组,和该用户的主机组里可以使用的主机数量. 5.用户选择某个主机组,就可以看到可用主机和用户的列表. 6.用户选择使用某个用户进入某个主机,或者批量执行命令. 7.如果堡垒机用户,选择使用某个用户进入单台主机,就使用paramiko加载本地

Python 13:程序:堡垒机开发

Python 13:程序:堡垒机开发 1.需求 2.表结构 3.readme 4.目录结构 5.代码 6.测试样图 一.需求 功能需求: 1.所有的用户操作日志要保留在数据库中(先存到redis中防止数据断线丢失)2.每个用户登录堡垒机后,只需要选择具体要访问的设置,就连接上了,不需要再输入目标机器的访问密码3.允许用户对不同的目标设备有不同的访问权限,例: 1.对192.168.1.113有mysql 用户的权限 2.对192.168.1.105有root用户的权限 3.对192.168.1.

Python之路【第八篇】:堡垒机实例以及数据库操作

Python之路[第八篇]:堡垒机实例以及数据库操作 堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: + import paramiko transport = paramiko.Transport(('hostname', 22)) transport.connect(username='wupeiqi', password='123') ssh

麒麟堡垒机V1.31d发布

麒麟开源堡垒机 V1.31d 版本发布,本次主要更新: 1.修改了审计管理员的若干BUG 2.修改应用发布的帐号同步服务在某些情况下挂死的BUG 3.修改了LDAP认证支持的不兼容问题 系统简介:麒麟开源堡垒机为可以与商业堡垒机媲美的低成本.高性能 .易用的堡垒机,系统支持所有的运维协议(包括 rdp/x11/vnc),内置动态口令.SSL VPN.网管监控等额外辅助模块.官网地址:http://www.tosec.com.cn 机版本说明:麒麟堡垒机版本共计有四个字段,比如V1.31a,大部分

Python---初识堡垒机

在学习堡垒机之前,我们需要首先了解下Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作. SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.co

主机管理+堡垒机系统开发

本节内容 需求讨论 构架设计 表结构设计 程序开发 1.需求讨论 实现对用户的权限管理,能访问哪些机器,在被访问的机器上有哪些权限 实现可以通过web页面对指定主机列表 进行 批量发布命令.文件 实现对用户操作进行纪录 2.架构设计 3. 表结构设计 参考 http://www.cnblogs.com/alex3714/articles/5286889.html 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,

开源堡垒机对比

teleport 堡垒机 jumpserver 通过添加统一系统账户来操作,支持密码和密钥登陆,堡垒机密钥远程主机的root权限.多个人员使用一个账户来管理感觉不是很好. 通过推送用户+sudo授权的方式,使用密钥+密码登陆授权主机 日志审计:回放录像,命令审计(回放录像做的功能做的比较完善) 日志审计:回放录像,命令审计 使用sftp客户端进行上传下载文件.很方便 lrzsz 上传下载.比较鸡肋 不支持批量操作主机 支持ansible批量执行命令 支持windows服务器 不支持windows

堡垒机--paramiko模块

做堡垒机之前,来了解一下paramiko模块. 实际上底层封装的SSH. SSHclient(1) import paramiko #实例化一个ssh ssh = paramiko.SSHClient() #设置主机不在khost_key中也能连接 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #创建连接 ssh.connect(hostname='192.168.12.100',port=22,username='root'

Python成长笔记 - 基础篇 (十四)--堡垒机

堡垒机架构 堡垒机的主要作用权限控制和用户行为审计,堡垒机就像一个城堡的大门,城堡里的所有建筑就是你不同的业务系统 , 每个想进入城堡的人都必须经过城堡大门并经过大门守卫的授权,每个进入城堡的人必须且只能严格按守卫的分配进入指定的建筑,且每个建筑物还有自己的权限访问控制,不同级别的人可以到建筑物里不同楼层的访问级别也是不一样的.还有就是,每个进入城堡的人的所有行为和足迹都会被严格的监控和纪录下来,一旦发生犯罪事件,城堡管理人员就可以通过这些监控纪录来追踪责任人. 堡垒要想成功完全记到他的作用,只