-
3个Linux Shell安全脚本
1、服务器WEB目录php后门检查Linux Shell脚本 [cc] #!/bin/bash #30 2 * * * /opt/sh/check-eval.sh > /dev/null 2>&1 #检查的WEB目录 check_path="/data/wwwroot" #日志输出目录 check_log="/data/logs" tim…- 46
- 0
-
运维安全-Gitlab管理员权限安全思考
在企业管理的过程中,代码版本管理也是非常重要的一环。 企业申请国高、市高都需要查看源代码。 为了让研发工作标准化、规范化,代码管理是必不可缺的。 良好的代码管理可以确保项目不受研发离职影响 …… 常见的代码管理工具有SVN、Git ,对于系统平台来说,目前Gitlab属于较为主流的版本控制系统。 GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的…- 652
- 0
-
OpenSSL之Blowfish对称加密
今天我们来看看如何用OpenSSL的API来实现Blowfish对称加解密。 什么是对称加密? 对称加密:简单来说,“加密”就是把容易识别的信息变成不易识别的信息;而“对称”则表示加密者和解密者之间拥有相同的密钥。当然,既然有“对称”的加密,那肯定有“非对称”的加密,这个我们后续再详细讨论。 什么是Blowfish? Blowfish是一个对称的块加密算法。它的块大小是64bit(8字节),同时B…- 63
- 0
-
Linux的系统调用、网络连接状态、磁盘I/O;可疑行为监控/日志收集、SHELL命令执行流程
目录 引言 用户编程接口(API)、系统命令、系统调用、和内核函数的关系 Linux的系统调用 Linux Shell命令执行 Linux系统调用日志收集 Linux网络连接状态日志收集 Linux磁盘I/O事件日志收集 后记 0. 引言 对系统调用、网络连接、磁盘文件操作、恶意rootkit的动态监控,是进行主机入侵恶意行为实时检测的一个很好的思考方向,作为纵深防御的一环,当黑客实际入侵了一…- 76
- 0
-
对称加密和分组加密中的四种模式(ECB、CBC、CFB、OFB)
一**. AES对称加密:** AES 加密 分组 二**. 分组密码的填充** 分组密码的填充 e.g.: PKCS#5 填充方式 三**. 流密码:** ** ** ** ** 四**. 分组密码加密中的四种模式:** 3.1 ECB****模式 优点: 简单; 有利于并行计算; 误差不会被传送; 缺点: 不能隐藏明文的…- 79
- 0
-
C# 操作rabbitmq(五)
此篇介绍rabbitmq的RPC 一、 虽然我们可以使用work queue给worker发送消息,但是如果我们希望在远程服务器上运行一个方法并且想要得到结果呢?rabbitmq的RPC功能可以实现。 二、 Callback queue,回调队列,在rabbitmq上构建RPC是很容易的,客户端发送请求消息,服务端响应回复消息,为了接收响应消息,我们需要在发送请求的时候附加一个callback 队…- 28
- 0
-
分布式开放消息系统(RocketMQ)的原理与实践
分布式消息系统作为实现分布式系统可扩展、可伸缩性的关键组件,需要具有高吞吐量、高可用等特点。而谈到消息系统的设计,就回避不了两个问题: 消息的顺序问题 消息的重复问题 RocketMQ作为阿里开源的一款高性能、高吞吐量的消息中间件,它是怎样来解决这两个问题的?RocketMQ 有哪些关键特性?其实现原理是怎样的? 关键特性以及其实现原理 一、顺序消息 消息有序指的是可以按照消息的发送顺序来消费。例…- 0
- 0
-
SpringCloud微服务监控——admin(一):admin服务端搭建并加入安全控制
在SpringCloud微服务中,有多个服务,要监控这些服务是否已经挂掉,这时可以使用admin来实现。代码如下: 基础工程的搭建何其他的微服务一样,不再赘述。 1):在pom文件中加入依赖: 1<!-- eureka client start --> 2<dependency> 3 <groupId>org.springframework.cloud</…- 74
- 0
-
Spring Cloud构建微服务架构:服务网关(过滤器)【Dalston版】
在前两篇文章:服务网关(基础)、服务网关(路由配置)中,我们了解了Spring Cloud Zuul作为网关所具备的最基本功能:路由。本文我们将具体介绍一下Spring Cloud Zuul的另一项核心功能:过滤器。 过滤器的作用 通过上面所述的两篇我们,我们已经能够实现请求的路由功能,所以我们的微服务应用提供的接口就可以通过统一的API网关入口被客户端访问到了。但是,每个客户端用户请求微服务应用…- 0
- 0
-
Netty In Action中文版 – 第十一章:WebSocket
Netty In Action中文版 - 第十一章:WebSocket 本章介绍 WebSocket ChannelHandler,Decoder and Encoder 引导一个Netty基础程序 测试WebSocket “real-time-web”实时web现在随处可见,很多的用户希望能从web站点实时获取信息。Netty支持WebSocket实现,并包含了不同的版本,我们可以非常容易的实现…- 12
- 0
-
Netty系列之Netty线程模型
1. 背景 1.1. Java线程模型的演进 1.1.1. 单线程 时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。 在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。 1.1.2. 多线程 随着硬件性能的提升,CPU的核数越来越越多,很多服务器标配已经达到32…- 0
- 0
-
Kubernetes概述
文章目录 Kubernetes 简介 Kubernetes 是一个平台 Kubernetes 不是什么 核心组件 Kubernetes 基本概念 Container Pod Node Namespace Service Label Annotations Kubernetes 简介 Kubernetes 是谷歌开源的容器集群管理系统,是 Google 多年大规模容器管理技术 Borg 的开源版本,…- 8
- 0
-
解析Linux内核的同步与互斥机制(三)
在决定调用sleep_on系列函数到真正调用schedule系列函数期间,若等待的条件为真,若此时继续schedule,相当于丢失了一次唤醒机会。因此sleep_on系列函数会引入竞态,导致系统的不安全。 另外对于interruptible系列函数,其返回时并不能确定是因为资源可用返回还是遇到了signal,因此在程序中用户需要再次判断资源是否可用。如: static ssize_t at91_m…- 2
- 0
-
Linux(内核剖析):13—系统调用的实现与解析
一、系统调用概述 系统调用在 用户空间进程和硬件设备之间添加了一个中间层 该层主要作用有三个: 第一, 为用户空间提供了一种硬件的抽象接口。举例来说,当需要读写文件的时候,应用程序就可以不去管磁盘类型和介质,甚至不用去管文件所在的文件系统到底是哪种类型 * 第二,系统调用保证了系统的稳定和安全。作为硬件设备和应用程序之间的中间人,内核可以基于权限、用户类型和其他一些规则对需要进行的访问进行裁决。举…- 88
- 0
-
常用加密解密算法【RSA、AES、DES、MD5】介绍和使用
为了防止我们的数据泄露,我们往往会对数据进行加密,特别是敏感数据,我们要求的安全性更高。下面将介绍几种常用的加密算法使用。这些算法的加密对象都是基于二进制数据,如果要加密字符串就使用统一编码(如:utf8)进行编码后加密。 1.摘要算法 常用的摘要算法有MD5,SHA1。摘要算法是一个不可逆过程,就是无论多大数据,经过算法运算后都是生成固定长度的数据,一般结果使用16进制进行显示。 …- 84
- 0
-
Linux服务器安全初始化Shell脚本
下面的这段Linux系统安全Shell脚本用于Linux系统的安全初始化脚本,可以在服务器系统安装完毕之后立即执行以快速建立起服务器的安全防护。最初的脚本由晓辉撰写,在数次修改之后已经大量应用在某大型媒体网站体系中。修改了一些bug,已经在CentOS 5.5 x86_64下通过,目前在一些没有硬件防火墙的服务器上使用。 使用方法:将其复制,保存为一个shell文件,比如 security.sh。…- 23
- 0
-
Kafka实战(五) – Kafka的秘技"坂本"之争
只有顺应版本,才能成就王者不败神话 也是能否用好Kafka的关键。 不论是哪种Kafka,本质上都基于core Apache Kafka 那就来说说Apache Kafka版本号的问题 1 缘何"在乎"你这版本号 直接使用最新版本不就好了吗? 当然了!这的确是一种有效策略,这种策略并非在任何场景下都适用 如果不了解各个版本之间的差异和功能变化,怎么能够准确地评判某Kafka版本…- 14
- 0
-
.Net下RabbitMQ的使用(9) — 在WCF下使用RabbitMQ
RabbitMQ .net客户端通过自定义的Binding和Transport Binding Element扩展了WCF,使之能够在AMQP协议上使用。在WCF中,Binding作为一系列Binding Elements的栈,控制了消息传输的大部分方面如安全,消息格式,事务等等。而Binding中的Transport Binding Element传输绑定元素,则指定了服务端和客户端之间的通信协…- 9
- 0
-
分布式session
一、session是什么?从哪来? 简单来说,session就是浏览器和服务器的一系列交互动作。 为什么会出现session?这是因为HTTP协议的特点-- 无状态性--导致的。 我们通过浏览器上网时,浏览器和服务器间是通过HTTP协议交互。当我们请求页面时, 这一次请求和上一次请求没有任何关系,这就是无状态性。无状态性使得交互更加快速,但也带来一个问题,例如:当我在商品详情页面登陆后,等到了订单…- 6
- 0
-
SpringCloud微服务知识整理九:消息总线:Spring Cloud Bus
什么是Spring Cloud Bus 在微服务架构的系统中, 我们通常会使用轻量级的消息代理来构建一个共用的消息主题让系统中所有微服务实例都连接上来, 由于该主题中产生的消息会被所有实例监听和消费, 所以我们称它为消息总线。 在总线上的各个实例都可以方便地广播一些需要让其他连接在该主题上的实例都知道的消息, 例如配置信息的变更或者其他一些管理操作等。 通过使用 Spring Cloud Bus …- 10
- 0
-
Spring Cloud构建微服务架构:服务网关(基础)【Dalston版】
通过之前几篇Spring Cloud中几个核心组件的介绍,我们已经可以构建一个简略的(不够完善)微服务架构了。比如下图所示: 我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;而服务间通过Ribbon或Feign实现服务的消费以及均衡负载;通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。为了使得服务集群更为健壮…- 1
- 0
-
Netty源码分析第1章(Netty启动流程)—->第4节: 注册多路复用
Netty源码分析第一章:Netty启动流程 ** ** 第四节:注册多路复用 回顾下以上的小节 , 我们知道了 channel 的的创建和初始化过程 , 那么 channel 是如何注册到 selector 中的呢 ? 我们继续分析 回到上一小节的代码 : 1final ChannelFuture initAndRegister() { 2 Channel channel = null;…- 0
- 0
-
Netty系列之Netty高性能之道
1. 背景 \ 1.1. 惊人的性能数据 \ 最近一个圈内朋友通过私信告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨节点远程服务调用。相比于传统基于Java序列化+BIO(同步阻塞IO)的通信框架,性能提升了8倍多。 \ 事实上,我对这个数据并不感到惊讶,根据我5年多的NIO编程经验,通过选择合适的NIO框架,加上高性能的…- 3
- 0
-
Nginx反向代理 实现Web负载均衡
实现负载均衡的方式有很多种,DNS、反向代理、LVS负载均衡器(软件实现)、F5(负载均衡器,硬件,非常昂贵)这里我们只提到基于DNS,以及反向代理的方式来实现负载均衡Web服务 ** DNS服务器实现负载均衡的原理是基于轮询的方式实现的,直接由 DNS 解析系统进行随机分配。除了性能分配不均之外,还有更可怕的就是如果一台服务器 down 了, DNS 服务器因为是基于轮询方式的负载均的…- 664
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!