一、清除木马
1、网络连接过滤掉正常连接
netstat -nalp | grep "tcp" | grep -v "22" | grep "ESTABLISHED"
CLOSED | 没有使用这个套接字[netstat 无法显示closed状态] |
LISTEN | 套接字正在监听连接[调用listen后] |
SYN_SENT | 套接字正在试图主动建立连接[发送SYN后还没有收到ACK] |
SYN_RECEIVED | 正在处于连接的初始同步状态[收到对方的SYN,但还没收到自己发过去的SYN的ACK] |
ESTABLISHED | 连接已建立 |
CLOSE_WAIT | 远程套接字已经关闭:正在等待关闭这个套接字[被动关闭的一方收到FIN] |
FIN_WAIT_1 | 套接字已关闭,正在关闭连接[发送FIN,没有收到ACK也没有收到FIN] |
CLOSING | 套接字已关闭,远程套接字正在关闭,暂时挂起关闭确认[在FIN_WAIT_1状态下收到被动方的FIN] |
LAST_ACK | 远程套接字已关闭,正在等待本地套接字的关闭确认[被动方在CLOSE_WAIT状态下发送FIN] |
FIN_WAIT_2 | 套接字已关闭,正在等待远程套接字关闭[在FIN_WAIT_1状态下收到发过去FIN对应的ACK] |
TIME_WAIT | 这个套接字已经关闭,正在等待远程套接字的关闭传送[FIN、ACK、FIN、ACK都完毕,这是主动方的最后一个状态,在过了2MSL时间后变为CLOSED状态] |
2、判断一些异常连接。通过PID找到进程名称。
- 通过名字,找到源文件。
ls -l /proc/$PID/exe 通过此命令也可以找源文件
- Kill -9 3249 结束进程
- 到目录下,rm -rf /tmp/10771删除原程序
二、/var/log/secure安全日志
1、tail -f /var/log/secure 看安全日志判断是否有人恶意攻击服务器
1.1 表示root用户关闭了会话(也就是关闭了终端)
xxx sshd: pam_unix(sshd:session): session closed for user root
1.2 表示接受来自14.23.168.10的root用户的公钥登录
xxx sshd: Accepted publickey for root from 14.23.168.10 port 36637 ssh2
1.3 表示给root用户打开一个终端
xxx sshd: pam_unix(sshd:session): session opened for user root by (uid=0)
1.4 表示已经连着的终端主动断开连接,并关闭终端
xxx sshd[9913]: Received disconnect from 183.60.122.237: 11: disconnected by user
xxx sshd[9913]: pam_unix(sshd:session): session closed for user root
1.5 无效的用户redis来连接说明
#表示对端使用无效的用户redis来连接
Xxx sshd[31261]: Invalid user redis from 45.115.45.3 port 33274
#本机对redis用户进行认证,认证失败,发送错误信号给对端
xxx sshd[31261]: input_userauth_request: invalid user redis [preauth]
# 对端接收到错误信号主动断开连接
xxx sshd[31261]: Received disconnect from 45.115.45.3 port 33274:11: Bye Bye [preauth]
# 连接关闭
xxx sshd[31261]: Disconnected from 45.115.45.3 port 33274 [preauth]
2、/var/log/secure不再写入记录解决方法
2.1 systemctl restart sshd 重启sshd服务
2.2 service syslog restart
如果,电脑上没有syslog服务,只把sshd重启不起作用,请使用 chkconfig --list | grep sys 显示有rsyslog服务,用service rsyslog restart重启服务即可。
三、清除后门
(1)、/etc/rc.local
(2)、crontab -l
(3)、/root/.bashrc 普通下面的.bashrc
(4)、/etc/profile
四、清除非法ssh密钥
cat /root/ .ssh/authorized_keys ##查看添加免密登录密钥
cat /root/ .ssh/known_hosts known_hosts #查看访问的主机的公钥