自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 问答 (1)
  • 收藏
  • 关注

翻译 【Zookeeper】Zookeeper 管理文档

Zookeeper 管理文档一、部署1.1 系统要求1.1.1 支持系统平台ZooKeeper由多个组件组成。一些组件得到了广泛的支持,而其他组件仅在一组较小的平台上得到支持。Client是Java客户机库,应用程序使用它连接到ZooKeeper集群。Server是在ZooKeeper集群节点上运行的Java服务器。Native Client是用C实现的客户机,类似于Java客户机,由应用程序用来连接到ZooKeeper集群。Contrib指的是多个可选的附加组件。1.1.2 支持情况

2021-03-26 12:50:02 1072

原创 【Django】Django如何实现WSGI协议

Django如何实现WSGI协议什么是WSGI?WSGI全称Web Server Gateway Interface,中文名Web服务器网关接口,关于WSGI是什么,【WSGI简介】这篇博文非常清晰的进行了解释。WSGI由Server+Middleware+Applacation三个组件构成,Server定义了environ和start_response,其中environ存放了所有和客户端相关的信息,已经一些WSGI协议必须的参数,start_response在Applacation中调用

2020-08-17 13:27:06 1375

原创 【Django】源码解析django启动和访问过程(四)

Django访问过程(二)Django访问过程(一)中我们了解到请求内容进入了django.core.handlers.wsgi.WSGIHandler.__call__进行处理,下面我们接着个方法继续解读源码。django.core.handlers.wsgi.WSGIHandler.callclass WSGIHandler(base.BaseHandler): request_class = WSGIRequest def __init__(self, *args, **k

2020-08-16 17:54:19 453

原创 【Django】源码解析django启动和访问过程(三)

Django访问过程(一)前言【Django】源码解析django启动和访问过程(二)中我们了解到Django实际就是以WSGIRequestHandler作为self.RequestHandlerClass,并设置self.application为一个WSGIHandler类,然后启动的socketserver.TCPServer服务。这篇我们以socketserver.BaseServer.serve_forever为入口,接着剖析Django的访问过程。socketserver.BaseSe

2020-08-15 15:19:20 401

原创 【Django】源码解析django启动和访问过程(二)

Django启动过程(二)django.core.management.commands.runserver.Command.handle def handle(self, *args, **options): # 非DEBUG模式,必须在settings中设置ALLOWED_HOSTS if not settings.DEBUG and not settings.ALLOWED_HOSTS: raise CommandError('You mus

2020-08-14 18:07:00 513

原创 【Django】源码解析django启动和访问过程(一)

Django启动过程前言开发环境中我们通过‘python manage.py runserver ip:port’启动一个django服务,下面我们通过manage.py这个入口脚本,逐步解析django的启动过程。manage.py# 创建日志目录os.makedirs('../logs')# 设置环境变量os.environ.setdefault("DJANGO_SETTINGS_MODULE", "jumpserver.settings")# 解析传递给manage.py的参数,执行

2020-08-14 16:41:03 1252

原创 【运维】ELK安装

ELK安装文章目录ELK安装测试环境文档链接ELK基本架构JDK安装ElasticSearch简介源码安装服务脚本启动验证Kibana安装简介源码安装启动验证Logstash安装简介源码安装Logstash插件配置启动验证测试环境系统版本JDK版本Nodejs版本ElasticSearch版本Logstash版本Kibana版本CentOS 6.8OpenJDK...

2019-06-26 11:07:16 1300 2

翻译 【Guacamole中文文档】二、用户指南 —— 6.数据库身份验证

Guacamole支持由MySQL、PostgreSQL或SQL Server数据库通过项目网站提供的可用扩展进行身份验证。使用数据库进行身份验证提供了附加的功能,如能够使用负载均衡连接组和基于Web的管理界面。与默认的XML驱动的身份验证模块不同,所有关于用户和连接的改变都会立即生效,用户不需要注销或重新登录即可看到新的连接。虽然大多数身份验证扩展是独立运行的,但数据库身份验证可以充当从属角色,从而允许来自其他身份验证扩展的用户和用户组与数据库内的连接相关联。

2023-02-14 15:01:06 1714

翻译 【Guacamole中文文档】二、用户指南 —— 5.配置Guacamole

配置GuacamoleGuacamole安装后,需要配置用户和连接,才能正常工作。本章介绍Guacamole的一般配置及其默认身份验证方法的使用。Guacamole的默认身份验证方法从一个名为user-mapping.xml的单一文件读取用户和连接。此身份验证方法旨在:极小化部署Guacamole。以一种相对简单的方法来验证Guacamole是否被正确装配。其他更复杂的身份验证方法(如使用后端数据库、LDAP等)将在单独的专门地章节中讨论。无论使用何种身份验证方法,Guacamole的配置始

2022-02-21 12:53:38 13019 6

翻译 【Guacamole中文文档】二、用户指南 —— 4.代理Guacamole

代理Guacamole像大多数web应用程序一样,Guacamole可以放在反向代理后面。对于Guacamole的生产部署,强烈建议这样做。它提供了灵活性,且如果代理针对SSL进行了正确配置,还可以提供加密。代理隔离了本机应用程序中的特权操作,这些操作可以在不再需要时安全地丢弃这些特权,仅将Java用于非特权任务。在Linux和UNIX系统上,进程必须以root权限运行,才能侦听1024以下的任何端口,包括标准HTTP和HTTPS端口(分别为80和443)。如果servlet容器改为侦听更高的端口,例如

2022-02-21 12:51:11 1680

翻译 【Guacamole中文文档】二、用户指南 —— 3.用Docker安装Guacamole

用Docker安装Guacamole可以使用Docker部署Guacamole,无需从源代码构建guacamole-server或手动配置web应用程序。Guacamole项目为Guacamole和guacd提供了官方支持的Docker图像,并在每次发布时保持最新。Guacamole典型的Docker部署方式将涉及三个单独的容器,在创建时连接在一起:guacamole/guacd提供guacd守护进程,从guacamole-server源码构建,支持VNC、RDP、SSH、telnet以及Kub

2022-02-21 12:47:20 3707 2

翻译 【Guacamole中文文档】二、用户指南—— 2.Guacamole源码安装

Guacamole源码安装Guacamole分为两部分:guacamole-server,提供Guacamole代理和相关库;以及guacamole-client,提供通过servlet容器(通常是Apache Tomcat)运行服务的客户端。guacamole-client可以是二进制形式,但guacamole-server必须从源代码构建。不要怕:源代码方式构建Guacamole的组件并不像听起来那么难,而且构建过程是自动化的。你只需要确保提前安装了必要的工具。有了必要的依赖关系,制作Guacamo

2022-02-21 12:39:59 4244 5

翻译 【Guacamole中文文档】二、用户指南 —— 1.实现和架构

实现和架构Guacamole不是一个独立的web应用程序,它由许多部分组成。Web应用程序实际上意在简单和最小化,大部分繁重的工作都由底层组件执行。用户通过web浏览器连接到Guacamole服务端。JavaScript编写的Guacamole客户端通过Guacamole服务端的Web服务向用户提供服务。加载后,该客户端通过HTTP方式使用Guacamole协议连接回服务端。部署在Guacamole服务上的Web应用程序读取Guacamole协议,并将其转发给guacd和本地的Guacamole代理

2022-02-21 12:34:58 1615

翻译 【Guacamole中文文档】一、概述 —— 序言

本文翻译自Apache Guacamole官方文档,主要用于研究JumpServer的源码以期开发自有的堡垒机平台。

2022-02-21 12:29:49 2645

原创 【MySQL】MySQL 8.0 源码安装详解

MySQL 8.0 安装一、版本安装1.1 安装依赖库安装GCCyum install -y gcc gcc-c++ gcc-g77# 如果提示GCC版本过低,需要升级GCC# 升级到GCC 9yum -y install centos-release-sclyum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutilsscl enable devtoolset-9 bash# 需要注意的是scl命

2021-03-19 14:11:30 2284 1

原创 【MySQL】mysqldump参数详解

参数缩写是否默认说明--print-defaults--用于打印默认参数--no-defaults--禁止从默认配置文件中读取默认参数,mysqldump默认会从/etc/my.cnf、/etc/mysql/my.cnf和~/.my.cnf默认配置文件中读取mysqldump、 mariadb-dump、 client、 client-server 和client-mariadb等客户端配置。--defaults-file--指定mysqldump默认配...

2021-03-02 15:23:54 3023

原创 【安全】Redis漏洞木马攻击的查杀过程

Redis漏洞攻击记录一次Redis漏洞攻击,该攻击通过扫描Redis端口,利用Redis的CONFIG命令和持久化漏洞篡改系统任务计划或公钥文件等方式进行攻击 攻击步骤扫描服务器端口尝试Redis连接,弱口令撞库连接Redis利用CONFIG漏洞篡改系统文件方式一:攻击程序将任务计划写入Redis数据库的key中,篡改/etc/crontab文件# 每分钟检测木马进程,远程执行木马程序,多种方式确保下载成功# key1.txt*/1 * * * * root wget

2021-02-23 18:20:52 596

原创 【Go语言基础学习】什么是编码?

什么是编码?位、字节、字、字符、字符集位二进制编码,0或者1代表1位,bit字节一个字节占8位,即1byte(字节)=8bit(位);1KB = 1024 B(字节) = 1024 *8 bit(位)。字、双字、四字两个字节表示一个字即16位,双字则是两个字即32位,四字64位字符a、A、中、国、+、-、*、/、の等都表示为一个字符;一般 UTF-8 编码下,一个汉字 字符 占用 3 个 字节;一般 GBK 编码下,一个汉字 字符 占用 2 个 字节;

2020-12-26 16:25:50 239

原创 【Go语言基础学习】Go语言真值、原码、反码、补码

Go语言取反运算符,^真值、原码、反码、补码计算机用补码参与运算,获得的结果需要转换成原码。真值: 有符号数二进制位左边第一个符号位置0后得到的值。原码: 符号位加真值的绝对值。反码: 无符号数和正数的反码是其本身,负数的反码是将原码除符号位外的其他位按位取反,即0变1,1变0。补码: 无符号数和正数的补码是其本身,负数的补码是反码二进制加1。已知原码求补码正数的补码是其本身,负数的补码是反码二进制加1。如:var n int8 = 1n的原码、补码、反码都为 0000 00

2020-12-23 10:36:13 1172 1

原创 【编辑器】VSCode远程开发配置

VSCode远程开发配置安装VS Code下载地址:https://code.visualstudio.com/安装Git下载地址:https://git-scm.com/download/win/添加环境变量Path:D:\Program Files\Git\bin;D:\Program Files\Git\cmd;D:\Program Files\Git\usr\bin;远程开发扩展安装Remote-SSH扩展,linux远程安装Remote-WSL扩展,windo

2020-12-09 09:55:19 459

原创 【Zabbix】Docker方式安装Zabbix 5.2

Docker方式安装Zabbix 5.2镜像拉取# 拉取mysql镜像docker pull mariadb# 拉取zabbix-server-mysql镜像,这里拉取的是zabbix 5.2版本镜像docker pull zabbix/zabbix-server-mysql:latest# 拉取zabbix-web-nginx-mysql镜像,这里拉取的是zabbix 5.2版本镜像docker pull zabbix/zabbix-web-nginx-mysql:latestDocke

2020-11-04 18:17:44 2969

原创 【文件系统】NFS网络文件服务搭建

NFS网络文件系统简介NFS依赖RPC协议在不同操作系统和网络中进行文件共享。NFS服务安装yum install -y rpcbind nfs-utilsrpcbindNFS服务动态端口分配守护进程,固定端口111,NFS服务启动前必须先启动rpcbind。nfs-utilsrpc.nfsd主要服务进程,管理客户机登录权限判别,客户机ID判别,可搭配/etc/host.allow,/etc/host.deny使用。rpc.mountd通过/etc/exp

2020-11-02 15:55:23 714

原创 【网络】IP地址分类、子网划分及子网掩码等相关计算

IP地址分类分类范围私有地址子网掩码说明A0.0.0.0 ~ 127.255.255.25510.0.0.0 ~ 10.255.255.255255.0.0.0网络号占8位,主机号占24位,IP地址以0开头,一般用于大型网络B128.0.0.0 ~ 191.255.255.255172.16.0.0 ~ 172.31.255.255255.255.0.0网络号占16位,主机号占16位,IP地址以10开头,一般用于中型网络C192.0.0.0 ~ 22

2020-10-13 14:39:03 2800

原创 【网络】Linux网络问题汇总(一)

网卡设置了静态获取,仍然获取动态IP的解决方法问题展示网卡配置静态方式获取,仍然通过dhcp获取到了ip,且每次分配的ip都一样。 [root@senlian ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static # 配置静态获取 DEFROUTE=yes IPV4_FAILU

2020-09-02 15:45:07 658

原创 【Django】Django生产环境重置数据库迁移文件的方法

前言开发环境中由于不断的添加和修改,多次执行了数据库迁移操作,在生产环境部署的时候我们需要进行重置。重置方法不保留数据库删除数据库删除数据迁移文件 python manage.py showmigrations [appname] #查看迁移文件 cd apps #切换到应用目录 find (*|app_name)/migrations/* -not -name __init__.py -delete #删除__init__.py以外的所有迁移文件 python manage.py

2020-08-14 10:21:50 1037

原创 【运维】K8S集群部署系列之普通Node节点搭建(八)

系统环境NodeIPCentOSkernelcpumemorynode1192.168.159.4CentOS Linux release 7.4.1708 (Core)3.10.0-693.el7.x86_64Intel® Core™ i5-7500 CPU @ 3.40GHz * 12Gnode2192.168.159.5CentOS Linu...

2019-09-10 10:34:15 10021

翻译 【运维】K8S集群部署系列之Kubelet参数说明

Kubelet 参数说明参数名类型默认值参数说明–addressstrings0.0.0.0Kubelet要使用的IP地址, \ 对于所有IPv4接口设置为0.0.0.0,对于所有IPv6接口设置为::,默认值0.0.0.0。\ 不推荐:该参数应该通过Kubelet的--config标志指定的配置文件设置。 见https://kubernetes.io/docs/t...

2019-08-28 18:30:58 1697

原创 【运维】K8S集群部署系列之普通Node节点搭建(七)

K8S 普通Node节点搭建系统环境NodeIPCentOSkernelcpumemorynode1192.168.159.4CentOS Linux release 7.4.1708 (Core)3.10.0-693.el7.x86_64Intel® Core™ i5-7500 CPU @ 3.40GHz * 12Gnode2192.168.15...

2019-08-23 16:03:28 1426

原创 【运维】K8S集群部署系列之ETCD集群搭建(五)

ETCD命令行工具简介etcdctl是etcd的命令行客户端;GitHub地址:https://github.com/etcd-io/etcd/tree/master/etcdctl帮助文档[root@node1 pki]# etcdctl -endpoints="https://192.168.159.3:2379," -ca-file=ca.pem -cert-file=etcdc...

2019-08-13 17:40:16 241

原创 【运维】K8S集群部署系列之ETCD集群搭建(四)

ETCD集群扩容和缩容本文将介绍生产环境下如何对ETCD集群进行扩容和缩容。新节点环境准备(node3)下载安装包并初始化环境mkdir /home/k8scd /home/k8swget https://github.com/etcd-io/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gztar -zx...

2019-08-13 17:12:42 1418

原创 【运维】K8S集群部署系列之ETCD集群搭建(三)

ETCD集群安全升级【运维】K8S集群部署系列之ETCD集群搭建(一) 中已部署了由master、node1、node2三个节点组成的普通集群。创建TLS加密方式的ETCD安全集群可以采取删除旧集群重建和逐步升级的方式,相对于删除后重建的方式,逐步升级为安全集群可避免旧数据丢失,本文将采取逐步升级的方式。证书准备在【运维】K8S集群部署系列之ETCD集群搭建(二) 中我们已经制作了本文...

2019-08-13 15:17:48 1270

原创 【运维】K8S集群部署系列之ETCD集群搭建(二)

TLS证书生成简介安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。可以用Linux开源OpenSSL工具链或者CFSSL工具生成,本文采用后者。工具下载参考链接GitHub地址: https://github.com/cloudflare/cfssl下载地址:https://pkg.cfssl.org/下载安装wget https://pkg...

2019-08-13 12:15:59 1864

原创 【运维】K8S集群部署系列之ETCD集群搭建(一)

ETCD 非安全模式集群搭建文章目录ETCD 非安全模式集群搭建系统环境软件环境etcd安装下载安装包集群节点配置文件master节点配置node1节点配置node2节点配置ETCD服务启动文件网络准备启动集群集群健康检查系统环境NodeIPCentOSkernelcpumemorymaster192.168.159.3CentOS Linux release...

2019-08-13 10:24:23 552

原创 【Django部署】IIS+wfastcgi部署Django网站

测试环境系统IIS版本Python版本Django版本Windows Server 2008 R2 Enterprise6.03.7.32.2环境准备IIS安装服务器管理器 > Web服务器(IIS)Web服务器(IIS) > 添加角色服务 > CGIPython环境安装导出开发环境安装的模块pip freez...

2019-06-06 17:52:55 1691 3

原创 【Python】单例模式

单例模式单例模式是一种创建型设计模式。单例模式的类只能初始化一次,并只提供一个实例对象,多次调用类所得对象id相同多应用于日志,配置等python 实现单例模式的方法装饰器 def single(cls): def singleton(*args, **kwargs): if not hasattr(cls, '_instance'): ...

2019-06-04 14:00:59 310

翻译 【前端知识】Cropper图片裁剪插件中文文档

Cropper 插件教程cropper官网cropperjs下载地址cropper视频教程插件导入 <link rel="stylesheet" href="{% static 'bootstrap/css/bootstrap.min.css' %}"> <link href="{% static 'cropper/css/cropper.min.css'...

2019-05-26 11:11:51 2103

原创 【python】自动化生成项目文档

自动生成项目文档可以利用Sphinx根据代码块注释自动生成项目的文档操作方法Sphinx安装pip install sphinx生成Sphinx工作目录 mkdir doc cd doc初始化文档项目运行 sphinx-quickstart 获得下边目录结构 ├─build └─source ├ ├─_static ├ └─_template...

2019-04-24 16:02:52 756

原创 【Django 】Django 安装及基本配置

Django 安装及基本设置文章目录Django 安装及基本设置Django简介Django安装Django任务命令行工具Django项目创建创建应用settings.py模块##命令回顾Django简介官网:https://www.djangoproject.com官方文档:https://docs.djangoproject.comDjango安装安装环境:python3....

2019-03-25 10:25:44 823

原创 【python】队列

FIFO队列first in first out,先进先出from queue import QueueLIFO队列last in first out, 后进先出,类似栈from queue import LifoQueue优先队列队首出列,高优先级元素排在队首from queue import PriorityQueue双端队列实现队列和栈功能from...

2019-01-16 14:49:21 144

原创 【python】栈

栈一端操作,先进后出,后进先出用列表实现栈:代码示例:#!/usr/bin/env python# encoding: utf-8# TODO: 栈, 一端操作,后进先出,先进后出class Stack(object): def __init__(self): self.stack = [] def __repr__(self): ...

2019-01-12 11:24:56 140

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除