场景:
周一上班centos服务器ssh不可用,web和数据库等应用不响应。好在vnc可以登录
使用last命令查询,2号之前的登录信息已被清空,并且sshd文件在周六晚上被修改,周日晚上2点服务器被人远程重启
root     pts/1        :1.0             Mon Jul  3 11:09   still logged in   
root     pts/1        :1.0             Mon Jul  3 11:08 - 11:09  (00:01)    
root     pts/0        :0.0             Mon Jul  3 10:54   still logged in   
root     tty1         :0               Mon Jul  3 10:53   still logged in   
reboot   system boot  2.6.32-696.3.2.e Mon Jul  3 10:46 - 11:11  (00:25)    
root     pts/0        :0.0             Mon Jul  3 10:42 - down   (00:01)    
root     tty1         :0               Mon Jul  3 10:40 - down   (00:03)    
reboot   system boot  2.6.32-696.3.2.e Sun Jul  2 02:31 - 10:44 (1+08:12)   
reboot   system boot  2.6.32-431.el6.x Sun Jul  2 02:27 - 02:27  (00:00) 
Jul  2 03:11:20 oracledb rsyslogd: [origin software="rsyslogd" swVersion="5.8.10
" x-pid="1960" x-info="
http://www.rsyslog.com"] rsyslogd was HUPed
Jul  2 03:35:11 oracledb sshd[13864]: Did not receive identification string from
 
使用less /var/log/messages命令2点结合last命令,判断2点重启后IPATABLES生效,有大量的ssh暴力破解的扫描信息,由于机器是测试环境,上面安装了ORACLE和squid,临时管理了iptables,重启后iptables启动,应该没有再次被再次登录,但是系统中部分文件以及被修改
 
message文件中部分信息如下:
103.207.37.86
Jul  2 03:35:12 oracledb sshd[13865]: error: Bad prime description in line 186
Jul  2 03:35:12 oracledb sshd[13865]: error: Bad prime description in line 187
Jul  2 03:35:12 oracledb sshd[13865]: error: Bad prime description in line 188
Jul  2 03:35:13 oracledb sshd[13865]: Failed password for illegal user support f
103.207.37.86 port 58311 ssh2
Jul  2 03:45:05 oracledb sshd[13887]: Illegal user support from 
103.79.143.234
 
113.108.21.16
Jul  2 05:10:37 oracledb sshd[14126]: Illegal user support from 
103.79.143.234
Jul  2 05:10:37 oracledb sshd[14126]: Failed password for illegal user support f
rom 
103.79.143.234 port 57019 ssh2
Jul  2 05:10:43 oracledb sshd[14128]: Did not receive identification string from
 
解决方法
1.修改root用户密码
2.由于sshd文件被修改,重新安装ssh,并设置只有指定内网IP可以访问
3.配置iptables,使iptables
 
重装SSHD
1.rpm -qa | grep ssh查询已安装包
系统已安装包:

openssh-clients,openssh-server,openssh,openssh-askpass

删除这四个包,删除时centos提示包之间有依赖关系,按照提示从依赖关系的最里层开始删除,

按照openssh-askpass openssh openssh-server openssh-clients这个顺序删除就可以了。
 
2.安装
使用yum逐一安装,yum install openssh-askpass **
安装openssh-server时提示:

unpacking of archive failed on file /user/sbin/sshd cpio:rename
删除文件提示Operation not permitted错误
查询文件的隐藏属性
lsattr /usr/sbin/sshd
-u---ia--e /usr/sbin/sshd
i:设定文件不能被删除、改名、设定链接关系,同时不能写入或新增内容。i参数对于文件 系统的安全设置有很大帮助。
a 即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全,只有root才能设定这个属性
使用 chattr -ia /usr/sbin/sshd修改文件的隐藏属性,取消对应设置之后删除成功
+ :在原有参数设定基础上,追加参数。
- :在原有参数设定基础上,移除参数
再次yum install openssh-server 成功
 
3.配置ssh登录控制,设置管理IP,黑白名单
vi /etc/ssh/sshd_config
#修改端口号
Port 52111
#只允许SSH2方式的连接
Protocol 2
#容许root用户登录,因为后面会设置可登录IP,所以这里就容许了
PermitRootLogin yes
#不容许空密码
PermitEmptyPasswords no
 
#屏蔽来自所有的SSH连接请求
vi /etc/hosts.deny
sshd: ALL
 
#允许来自内网指定ip的SSH连接请求
vi /etc/hosts.allow
sshd: 192.168.0
sshd: 192.168.253.**
 
配置对应iptables设置
1.iptables配置规则
iptables [-t表名] [-A|I|D|R 链名 ] [-i网卡名] [-p协议] [-s源IP] [-d目标ip] [--dport目标端口号] [-j动作]
这里需要配置的是filter表,filter表中有input,output,forward三条规则链,如果本机服务比较多,规则比较繁琐,比较便捷的方法是写shell脚本之后重启ssh服务
#限制SSH的连接IP
iptables -A INPUT -s 192.168.101.32 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.101.35 -p tcp --dport 22 -j ACCEPT

#SSH支持52111是修改后SSH端口
iptables -A OUTPUT -p tcp --sport 52111 -j ACCEPT
 
这里只是针对SSH做了简单配置,具体iptables的配置,详见iptables配置一文
配置后/etc/rc.d/init.d/iptables save保存,使用service iptables restart重启服务后配置生效。
 
 

一次linux服务器黑客入侵后处理的更多相关文章

  1. linux系统被入侵后处理经历【转】

    背景 操作系统:Ubuntu12.04_x64 运行业务:公司业务系统,爬虫程序,数据队列. 服务器托管在外地机房. 突然,频繁收到一组服务器ping监控不可达邮件,赶紧登陆zabbix监控系统查看流 ...

  2. Linux服务器被入侵后的处理过程(转发阿良)

    Linux服务器被入侵后的处理过程   突然,频繁收到一组服务器 ping 监控不可达邮件,赶紧登陆 zabbix 监控系统查看流量状况. 可见流量已经达到了 800M 左右,这肯定不正常了,马上尝试 ...

  3. Linux系统被入侵后处理经历

    服务器托管在外地机房. 突然,频繁收到一组服务器ping监控不可达邮件,赶紧登陆zabbix监控系统查看流量状况. 可见流量已经达到了800M左右,肯定不正常,马上尝试SSH登陆系统,不幸的事,这种情 ...

  4. Linux服务器被入侵后的处理过程

    突然,频繁收到一组服务器 ping 监控不可达邮件,赶紧登陆 zabbix 监控系统查看流量状况. 可见流量已经达到了 800M 左右,这肯定不正常了,马上尝试 SSH 登陆系统,不幸的事,由于网络堵 ...

  5. 一次Linux服务器被入侵和删除木马程序的经历

    转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wzlinux.blog.51cto.com/8021085/1740113 一.背景 晚上看到有台服 ...

  6. linux 服务器下入侵之后的日志清理

    1.web日志的清理:access.log 和auth.log 位置在/var/log/下面. 2.系统日志存放在:/root/.bash_history

  7. 快速自检电脑是否被黑客入侵过(Linux版)

    之前写了一篇快速自检电脑是否被黑客入侵过(Windows版), 这次就来写写Linux版本的. 前言 严谨地说, Linux只是一个内核, GNU Linux才算完整的操作系统, 但在本文里还是用通俗 ...

  8. 如何判断Linux服务器是否被入侵?

    被入侵服务器的症状 当服务器被没有经验攻击者或者自动攻击程序入侵了的话,他们往往会消耗 100% 的资源.他们可能消耗 CPU 资源来进行数字货币的采矿或者发送垃圾邮件,也可能消耗带宽来发动 DoS ...

  9. 如何检查linux服务器是否被入侵

    被入侵服务器的症状 当服务器被没有经验攻击者或者自动攻击程序入侵了的话,他们往往会消耗 100% 的资源.他们可能消耗 CPU 资源来进行数字货币的采矿或者发送垃圾邮件,也可能消耗带宽来发动 DoS ...

随机推荐

  1. Python MySQL事务、引擎、索引及第三方库sqlalchemy

    本节内容 1.数据库介绍2.事务3.引擎4.索引5.ORM sqlalchemy 1.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一 ...

  2. turnserver 配置说明记录

    coTurn工程提供了较完整的STUN和TURN服务,记录其主要的命令行参数配置说明 针对TURN/STUN服务进程turnserver.exe的使用参数做简单说明 -L 监听的IP地址 -p 监听端 ...

  3. kali2016.2(debian)快速安装mysql5.7.17

    糊里糊涂的删除了kali原本的mysql5.6.27版本,原本的mysql与很多软件关联在一起,每次安装都失败,后来把相关的都卸载了(悲催的浪费了一天) 下载地址  debian mysql下载地址 ...

  4. shell编程-文件包含(十)

    shell文件包含指的是脚本中包含外部脚本,然后将其封装起来重新作为一个独立的文件而存在 文件包含格式 使用"."+空格+文件名:. filename 或者source+空格+文件 ...

  5. MySQL open_tables和opened_tables

    官网解释参见:https://dev.mysql.com/doc/refman/5.7/en/table-cache.html 其他可供参考的文章有: 关于表限制参数的使用:https://dba.s ...

  6. window.onunload中使用HTTP请求

    在页面关闭时触发window.onunload 在onunload中要使用http请求,需要使用同步请求: 如: $.ajax({ url: url, async: false }); iframe页 ...

  7. mysql建表基本语法

    mysql添加约束的两种条件: ------表的内部添加(约束) 列名1 数据类型 (int) primary key auto_increment,---主键默认不能为空的 列名2 数据类型 not ...

  8. oracle USING 用法

    提问 using(xx)中可以接多个列吗? using(xx)中的列可以接表名或别名吗? 在使用using的语句中,select * 可以使用吗? 如果表有别名t,select t.* from ta ...

  9. kafka_2.11-2.0.0_介绍

    1. JMS是什么 1.1. JMS的基础 JMS是什么:JMS是Java提供的一套技术规范 JMS干什么用:用来异构系统 集成通信,缓解系统瓶颈,提高系统的伸缩性增强系统用户体验,使得系统模块化和组 ...

  10. Linux for python教程02

    目录 1. Linux用户及权限管理 1.1. who 1.2. 查看当前用户: whoami 1.3. 添加用户账号: useradd 1.4 切换用户 su 2.用户组 3. 修改文件权限: ch ...