django开发框架之jumpserver
发现一个不错的开源堡垒机 jumpserver: https://github.com/ibuler/jumpserver
最开始看的是jumpserver2.0.0 版本,具体的实现方式是:
1. django + uwgsi 实现web前端的用户管理界面
关于django可以参考:http://xianglong.me/article/django-request-work-flow/
django的 MVC, 以jumpserver下为例子:
- urls.py 文件,控制用户请求由哪个方法处理,其具体内容就是url的正则表达式,并对应views中具体方法名
- views.py文件,处理用户请求,其具体内容就是urls对应的各个方法。
- models.py文件,定义数据模型,处理数据库请求, 其具体内容就是对应的数据库表字段名。
最终,views把处理结果返回给template目录下对应的前端文件, 完成一次完整请求。
通过pip,这是一个python的egg包管理器,我们可以方便安装django包。用django提供的工具,我们可以轻松建立一个django框架下的web工程:
django-admin startproject mywebproject
2. ldap + paramiko 实现服务器权限管理
ldap是一个轻量级的目录访问协议,一个比较知名的ldap协议实现是 openldap / openldap-server。
它是CS架构,包含客户端和服务端两个组件。客户端可以通过ldapsearch / ldapadd / ldapdel等命令去查询修改数据,服务器端其实是以Berkeley database 为数据库进行数据管理,以相同命令进行数据库操作, 它没有sql解析步骤,按照百度说法是介于关系型数据库 比如mysql 跟内存型数据库 比如redis之间的 文件数据库。
下面简单介绍下,在linux中如何开启ldap验证:
在linux中,我们大部分软件都是通过调用pam组件进行身份认证,
- 具体验证内容,可以查看/etc/pam.d/system-auth, 这个配置文件可以通过调用命令 authconfig 或是 authconfig-tui 自动生成。
- 另外,authconfig也会更新配置文件 /etc/sysconfig/authconfig, 在这个文件可以控制具体使用哪种方式验证 (开启ldap认证我们需要,更新到这个文件,设置USELDAPAUTH = yes
最后我们还需要更新nsswitch.conf,该文件控制验证机制的先后顺序,比如 files, ldap 代表先本地passwd文件验证没有后,再去寻找ldap服务器。
注: 当决定使用ldap验证,不要忘记安装 nss-pam-ldap组件
3. express + socket.io 实现在线用户监测
express是js的web开源框架,在这之前需安装 NodeJS 这个js 解析器,NodeJs之于js语言,类似于 php-fpm解析器之于php语言。
说到php,我们知道fastcgi协议,用于定义php跟其他web服务器的通信接口,而php-fpm是该协议的实现。
那前面提到的uwgsi协议,也是类似于fastcgi一样的接口,但是它是定义python的跟其他web服务器的通信,而uWGSI 是该协议的实现。
最后,socket.io也是一个实现,它是websocket这个协议的实现,好多实现。。
django开发框架之jumpserver的更多相关文章
- django开发框架-view & template
django框架的主要模型是MVT,Model模型,View视图,Template模板,基于基本的HttpRequest方式. django支持的数据库有四种:PostgreSQL,MySQL, Or ...
- Django开发框架知识点
一.什么是web服务器(了解) 当我们在浏览器输入URL后,浏览器会先请求DNS服务器,获得请求站点的 IP 地址.然后发送一个HTTP Request(请求)给拥有该 IP 的主机,接着就会接收到服 ...
- 【二次开发jumpserver】——整合jumpserver与zabbix推送主机功能
jasset/forms.py "ip", "other_ip", "hostname", "port", " ...
- 1.1 Django起步
1.1 Django起步 1.1.1. Django简介 Django开发框架(简称Django)诞生的时间是2003年的金秋时节,美国有两位程序员Adrian Holovaty和Simon ...
- Centos7.4下安装Jumpserver 1.0.0(支持windows组件)
0)系统环境CentOS 7.4 IP: 192.168.100.10 [root@jumpserver-server ~]# cat /etc/redhat-release CentOS Linux ...
- Centos7.3下安装Jumpserver 1.0.0(支持windows组件)
Jumpserver最新版本支持windows组件,废话不多介绍了,下面直接介绍下部署过程: 0)系统环境 CentOS 7.3 IP: 192.168.10.210 [root@jumpserver ...
- Pyhton开源框架(加强版)
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- python环境
官网:https://www.python.org windows环境:http://www.cnblogs.com/windinsky/archive/2012/09/20/2695520.html ...
随机推荐
- 高远介绍的好东东--django-celery
终于可以到异步消息机制的高档产品啦~~~ 不知能不能代替AJAX.. 参照官方文档试下: 中文文档: http://docs.jinkan.org/docs/celery/getting-starte ...
- SPRING IN ACTION 第4版笔记-第二章-003-以Java形式注入Bean、@Bean的用法
1. package soundsystem; import org.springframework.context.annotation.Bean; import org.springframewo ...
- 方便的Chrome取色插件ColorPick Eyedropper [设计, FE必备]
最近在和Design合作开发, 她发过来的原型图有各种各样色配色, 不想让她一个一个地标记颜色, 嫌效率低. 于是自己找到一款方便的Chrome取色插件, 叫做ColorPick Eyedropper ...
- 【SSSP】A forward-backward single-source paths algorithm
0. 引子基础的算法和数据结构已经学习的差不多了,上学期期末就打算重点研究研究STOC和FOCS上面的论文.做这件事情的初衷是了解别人是如何改进原有算法的,搞清楚目前比较热的算法问题有哪些,更重要的是 ...
- 通过Microsoft Azure服务设计网络架构的经验分享
作者 王枫 发布于 2014年4月8日 本文从产品设计和架构角度分享了Microsoft Azure网络服务方面的使用经验,希望你在阅读本文之后能够了解这些服务之间,从而更好地设计你的架构. Mic ...
- ORACLE解决登陆em状态暂挂方法
1.找到oracle安装目录中db_1/计算机名_orcl/sysman/config/emd.properties , 用记事本打开emd.properties,在emd.properties文件 ...
- windows下 破解 Sublime Text3 和汉化
这货已经出到3了. windows下载,破解,使用方法: 一:破解 1: 去官网下载最新版本 http://www.sublimetext.com/3 2:下载破解器(SublimeTextKeyge ...
- Light OJ 1060 - nth Permutation(组合数)
题目大意: 给你一个字符串,问这个字符串按照特定顺序排列之后,第n个字符串是哪个? 题目分析: 首先我们要会求解总个数.也就是共有len个字符,每个字符有ki个,那么总组合方式是多少种? 总组合方式就 ...
- asp.net 服务器端缓存与客户端缓存 [转]
介绍: 在我解释cache管理机制时,首先让我阐明下一个观念:IE下面的数据管理.每个人都会用不同的方法去解决如何在IE在管理数据.有的会提到用状态管 理,有的提到的cache管理,这里我比较喜欢ca ...
- 让你的Ubuntu也能像Windows那样显示网速和CPU温度
致力于Linux桌面操作系统的平民化,一直强迫自己完全在Ubuntu系统下进行日常的电脑使用,但是用长了时间的Windows,还是有些习惯改不过来,比如只要在下载或者看在线视频的时候就会不自觉关注网速 ...