首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

服务器被入侵了怎么办

遇到服务器被黑,很多人会采用拔网线、封iptables或者关掉所有服务的方式应急,但如果是线上服务器就不能立即采用任何影响业务的手段了,需要根据服务器业务情况分类处理。...1.所有用户History日志检测 关键字:wget/curl, gcc, 或者隐藏文件, 敏感文件后缀(.c,.py,conf, .pl, .sh) 检查是否存在异常用户 检查最近添加的用户,是否有不知名用户或不规范提权...4.其他入侵 其他服务器跳板到本机 5.后续行为分析 History日志:提权、增加后门,以及是否被清理。...3.运维为安全人员临时开通机器权限,安全人员通过history和ps找到的入侵记录和异常进程锁定了对外大量发包的应用程序,清理了恶意进程并删除恶意程序。...kill后仍重启了,于是安装杀毒软件clamav和rootkit hunter进行全盘扫描,从而确认了被感染的所有文件,将那些可以删除的文件删除后再次kill异常进程,则再没有重启的问题。

2.8K30

高性能服务器架构思路(二)——缓冲清理策略

这种数据往往在程序的运行时是不会变化的,比如 Web 服务器内存中缓存的 HTML 文件数据,就是这种。事实所有的不是由外部用户上传的数据,都属于这种“运行时静态数据”。...比如在门户网站上发布了一条新闻,我们会希望立刻让所有访问的用户都看到。按最简单的做法,我们一般只要重启一下服务器进程,内存中的缓存就会消失了。...对于静态缓存的变化频率非常低的业务,这样是可以的,但是如果是新闻网站,就不能每隔几分钟就重启一下WEB服务器进程,这样会影响大量在线用户的访问。...简单来说,就是在服务器进程,开通一个实时的命令端口,我们可以通过网络数据包(如 UDP 包),或者Linux系统信号(如 kill SIGUSR2 进程号)之类的手段,发送一个命令消息给服务器进程,让进程开始清理缓存...这种做法对于服务器性能是有一定消耗的,所以如果往往我们还会搭配其他的缓存清理机制来用,比如我们会在设置一个“超时检查”的机制:就是对于所有的缓存清理检查,我们都简单的看看缓存存在的时间是否“超时”了,如果超过了

75830
您找到你想要的搜索结果了吗?
是的
没有找到

php开发工程师面试题知识点总结(四)--高级篇

并发处理 进程(Process) 是计算机中程序关于数据集合上的一次运行活动,是系统进行资源分配和调度的基本单元,是操作系统结构的基础。...协程 协程是一种用户态的轻量级线程,协程的调度完全由用户控制。协程拥有自己的寄存器上下文和栈。...收到数据后服务器程序进行处理然后使用send向客户端发送响应 当客户端连接关闭时,子进程/线程退出并销毁所有资源。...FLUSH QUERY CACHE∥清理查询缓存内存碎片 RESET QUERY CACHE∥从查询缓存中移出所有查询 FLUSH TABLES;//关闭所有打开的表,同时该操作将会清空查询 缓存中的内容...、通用hash、一致性hash 加权轮询策略 首先将请求都分给高权重的机器,直到该机器的权值降到了比其他机器低,才开始将请求分给下一个高权重的机器 当所有后端机器都down时,Ngnx会立即将所有机器的标志位清成初始状态

44210

php开发工程师面试题知识点总结(四)–高级篇「建议收藏」

并发处理 进程(Process) 是计算机中程序关于数据集合上的一次运行活动,是系统进行资源分配和调度的基本单元,是操作系统结构的基础。...协程 协程是一种用户态的轻量级线程,协程的调度完全由用户控制。协程拥有自己的寄存器上下文和栈。...fork刨建子进程 收到数据后服务器程序进行处理然后使用send向客户端发送响应 当客户端连接关闭时,子进程/线程退出并销毁所有资源。...FLUSH QUERY CACHE∥清理查询缓存内存碎片 RESET QUERY CACHE∥从查询缓存中移出所有查询 FLUSH TABLES;//关闭所有打开的表,同时该操作将会清空查询 缓存中的内容...down时,Ngnx会立即将所有机器的标志位清成初始状态,以避免造成所有的机器都处在 timeout的状态 IP Hash策略 Nginx内置的另一个负载均衡的策略,流程和轮询很类似,只是其中的算法和具体的策略有些变化

42910

高性能服务器架构思路(二)——缓冲清理策略

我们所说的缓存,都是保存一些数据,但是这些数据往往是会变化的,我们要针对这些变化,清理保存的“脏”数据,却可能不是那么容易。...这种数据往往在程序的运行时是不会变化的,比如 Web 服务器内存中缓存的 HTML 文件数据,就是这种。事实所有的不是由外部用户上传的数据,都属于这种“运行时静态数据”。...比如在门户网站上发布了一条新闻,我们会希望立刻让所有访问的用户都看到。按最简单的做法,我们一般只要重启一下服务器进程,内存中的缓存就会消失了。...对于静态缓存的变化频率非常低的业务,这样是可以的,但是如果是新闻网站,就不能每隔几分钟就重启一下WEB服务器进程,这样会影响大量在线用户的访问。...简单来说,就是在服务器进程,开通一个实时的命令端口,我们可以通过网络数据包(如 UDP 包),或者Linux系统信号(如 kill SIGUSR2 进程号)之类的手段,发送一个命令消息给服务器进程,让进程开始清理缓存

80000

高性能服务器架构思路:缓冲清理策略(二)

这种数据往往在程序的运行时是不会变化的,比如Web服务器内存中缓存的HTML文件数据,就是这种。事实所有的不是由外部用户上传的数据,都属于这种“运行时静态数据”。...比如在门户网站上发布了一条新闻,我们会希望立刻让所有访问的用户都看到。按最简单的做法,我们一般只要重启一下服务器进程,内存中的缓存就会消失了。...对于静态缓存的变化频率非常低的业务,这样是可以的,但是如果是新闻网站,就不能每隔几分钟就重启一下WEB服务器进程,这样会影响大量在线用户的访问。...简单来说,就是在服务器进程,开通一个实时的命令端口,我们可以通过网络数据包(如UDP包),或者Linux系统信号(如kill SIGUSR2进程号)之类的手段,发送一个命令消息给服务器进程,让进程开始清理缓存...这种做法对于服务器性能是有一定消耗的,所以如果往往我们还会搭配其他的缓存清理机制来用,比如我们会在设置一个“超时检查”的机制:就是对于所有的缓存清理检查,我们都简单的看看缓存存在的时间是否“超时”了,如果超过了

10.5K10

Linux 实用命令

实用命令: 1、查看端口占用情况 # 查看该端口是否被占用 netstat -lnp|grep 5000 # 查看端口是否被占用 lsof -i:'5000' # 杀死端口占用进程,根据进程号杀死...df -h # 查看当前目录下空间使用情况 du -lh --max-depth=1 3、按时间批量删除文件 需要根据时间删除这个目录下的文件,/home/lifeccp/dicom/studies,清理...如果有一个进程在打开一个大文件的时候,这个大文件直接被 rm 或者mv ,则 du 会更新统计数值,df 不会更新统计数值,还是认为空间没有释放。直到这个打开大文件的进程被Kill。...2、df详解 2.2 df 详解 Linux df 命令显示磁盘分区可以使用的磁盘空间。 df 可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。...使用如下表的方法 比如我们要对一个文件权限为“-rwxr-xr–”修改为“-rwxrwxr-x”,则需要对用户组身份的权限追加w权限,对其他用户追加x 权限,所以这样执行: chmod g+w, o

79810

PostgreSQL KILL -9 用户连接进程 , OMG 胆真肥

在数据库的服务器通过linux 命令来将postgresql 杀死 例如 kill -9 xxxx,这样做到底会对postgresql 产生什么影响,不少人都曾经这样干过,为什么说这样做,糟糕透了。...那马上看到这里有人就会产生一个问题,那我怎么kill 那个 白占着资源,不干活的用户。...(问题答案将在文末给出) 那么我们翻过来的看一下,在kill -9 一个用户连接的process后会发生什么 1 用户的连接process 被kill -9 干掉2 2 终止任何其他活跃的服务器进程...3 警告因为你的这项操作会导致服务器postgresql其他的进程crash 4 所有服务器的postgresql processes 重新初始化 也就是日志的这几句话 database system...那到底正确的做法是什么 pg_terminate_backend 命令在数据库里面去KILL 这个用户的连接。 ? 而且不会对数据库产生任何的危害。

1.1K20

从挖矿木马看后渗透维权

No.2 前言 在通过漏洞打入对方服务器后,如果痕迹没有清除干净或者在实施侵入的同时会有防火墙、waf(云盾)等安全产品发出警报,比如服务器会直接发送邮件告知管理员,服务器被一个陌生IP登录,这时管理员可能会警觉...阶段2 ps获取运行的进程,grep屏蔽自己,然后grep其它挖矿程序,awk获取进程编号,kill -9 强制杀掉。 ? 阶段3 定义一个函数,调用curl,wget远程下载挖矿脚本。 ?...阶段7 清理入侵痕迹。 ? 阶段8 劫持系统进程以及命令(比如ls,cd等常用命令,后期还会劫持sshd)。...通过busybox尝试恢复被劫持的系统命令和进程后,重启服务器,重新登录服务器后依然有病毒进程被拉起,怀疑登录时加载的服务存在问题,最后终于发现/etc/bashrc 存在挖矿木马下载命令。 ?...网上资料的搜集(关于该类型挖矿木马的感染过程): 主进程操作 1.添加至开机启动,以及/etc/bashrc 2.生成了sshd文件 劫持sshd服务 3.将netdns文件设置为开机启动 4.编译libcryptod.c

2.2K30

服务器重启项目引发的nginx 502 Bad Gateway解决

我有一篇博客专门讲清理磁盘)清理过程中,发现nohup.out很占内存,是可以清理的,亲测有效,命令: 第一种:cp /dev/null nohup.out 第二种:cat /dev/null > nohup.out...于是查看linux的java进程:ps -ef | grep java 从头至尾各个参数的意思是: (1):UID :程序被该 UID 所拥有 (2):PID :就是这个程序的...想想我倒是重启过多少次项目吧)然后果断kill:kill pid 然后再次重启项目。...再次重启的时候tomcat执行sh shutdown.sh,发现报错,更验证了之前的猜想,因为关于tomcat的实例我都kill掉了啊,所以再执行:sh startup.sh 打印tomcat日志命令:...待tomcat启动完成后,访问项目,完美打开… 四、总结 1.查看linux的java进程:ps -ef | grep java 2.杀掉重复的进程:kill pid (注意别误kill其他进程)

1.7K30

高可用Redis服务架构分析与搭建

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 其实以上任意一种异常都是小概率事件...实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

32450

手Q Android缓存监控与优化实践

2.内存清理 在监控的基础,开发实现自动清理机制。一方面统一调度手Q各业务主动清理内存,另一方面,通过深入的技术研究,实现系统内存清理技术。...后台分析:分析终端上报的用户数据,对各业务缓存进行归类统计,统计出平均内存占用,最大内存占用,内存占用中位数,缓存命中率,缓存浪费率等指标。 内存清理:监控系统在监控的基础,也增加了清理接口。...2、缓存内存占用大 典型案例1:手Q新闻类图片缓存,私自缓存Bitmap,最大占用内存15M,占所有图片缓存的35%。...3.2、系统预加载图片清理 系统预加载图片缓存是zygote进程初始化时,通过preloadResources()预加载的通用图片资源,后续android应用进程都是从Zygote fork出来的,所以就继承了这部分预加载的图片资源...因此这里存在内存优化的空间,当内存占用高时,可以主动清理这部分内存,以便释放可观的堆内存空间,减少内存耗尽的风险。

2.7K132

服务被干爆了!竟然是日志的锅!!

首先采取的手段就是手动清理日志文件,运维同学登录到服务器上面之后,手动的清理了一些不太重要的日志文件。...经过排查,这个进程是一个SLS进程,在不断的从机器读取日志内容。...如果一个文件正在被某个进程调用,用户使用rm命令把文件"删除"了,这时候通过ls等文件管理命令就无法找到这个文件了,但是并不意味着这个文件真正的从磁盘上删除了。...对于第一个问题,那就是大促期间引入日志降级的策略,一旦发生磁盘爆满,就是将日志降级关于日志降级,我开发了一个通用的工具,就是通过配置的方式,动态推送日志级别,动态修改线上的日志输出级别。...关于日志降级工具的开发思路和相关代码,下一篇文章中给大家分享。 思考 每次大促之后我们复盘,都会发现其实大多数问题都是由几个不起眼的小问题堆积到一起而引发的。

47420

如何搭建高可用Redis服务

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 其实以上任意一种异常都是小概率事件...实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

1.1K70

高可用Redis服务架构分析与搭建

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了); 【异常2】台节点服务器down,...相当于这个节点所有进程都停了(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障); 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了)...实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

30420

Linux 阻碍国产操作系统进程

本文节选自达人课《攻克 Linux 系统编程》 你写了一个多进程模型的服务器,但总感觉新进程启动地不干净,有时会有些父进程的东西掺和到子进程里来。...实际,每个进程只存活在自己的虚拟世界里,却感觉自己独占了所有的系统资源(内存)。 当一个进程要使用块内存时,它会将自己世界里的一个内存地址告诉操作系统,剩下的事情就由操作系统接管了。...一些使用多进程模型的服务器程序(比如 sshd),就是通过 fork() 系统调用来实现的,每当新用户接入时,系统就会专门创建一个新进程,来服务该用户。...进程退出时会清理进程占用的所有系统资源,包括关闭打开的文件描述符、释放持有的文件锁和内存锁、取消内存映射等,还会给一些子进程发送信号(后面课程再详细展开)。该系统调用一定会成功,永远不会返回。...06 作者简介 宇文拓,近十年 Linux C/C++ 开发经验,现就职于创业公司,负责服务器架构与系统设计。曾就职于通信业知名美企,负责核心网和防火墙产品研发。

1.9K30

高可用Redis服务架构分析与搭建

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 其实以上任意一种异常都是小概率事件...实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

36640

高可用 Redis 服务架构分析与搭建

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 说到这里,也给大家推荐一个架构交流学习群...如下图所示: 实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

48300

精讲Redis服务架构分析与搭建

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 其实以上任意一种异常都是小概率事件...实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

31730

高可用Redis服务架构搭建详细解析

所谓异常,应该至少包含了以下几种可能性: 【异常1】某个节点服务器的某个进程突然down(例如开发手残,把一台服务器的redis-server进程kill了) 【异常2】台节点服务器down,相当于这个节点所有进程都停了...(例如运维手残,把一个服务器的电源拔了;例如一些老旧机器出现硬件故障) 【异常3】任意两个节点服务器之间的通信中断了(例如临时工手残,把用于两个机房通信的光缆挖断了) 其实以上任意一种异常都是小概率事件...如下图所示: 实际对于服务器2来说,服务器1直接down服务器1网络连不通是一样的效果,反正都是突然就无法进行任何通信了。...实际这就是我们最终搭建的架构。我们引入了服务器3,并且在3上面又搭建起一个Redis Sentinel进程,现在由三个Sentinel进程来管理两个Redis Server实例。...对于客户端来说,在这么一瞬间会有2个master提供服务,并且一旦网络恢复了,那么所有在中断期间落在服务器1的新数据都会丢失。

14630
领券