入侵检测
查看系统日志
查看安全相关日志
[root@instructor ~]
May 20 12 :15:35 instructor sshd[12070]: Failed password for root from 192.168.1.12 port 50720 ssh2
May 20 12 :15:48 instructor sshd[12086]: Failed password for root from 192.168.1.114 port 52765 ssh2
[root@instructor ~]
Oct 24 12 :18:06 chao sshd[7086]: Accepted password for root from 172.16.130.91 port 41415 ssh2
Oct 24 12 :18:06 chao sshd[7084]: Accepted password for root from 172.16.130.81 port 42986 ssh2
grep -i Accepted /var/log/secure |awk '{print $(NF-3)}' |grep '^[0-9]' |sort |uniq -c |sort -rn
grep -i Failed /var/log/secure |awk '{print $(NF-3)}' |egrep '^[0-9]' |sort |uniq -c |sort -rn
- 查看最后 5 条登录信息
[root@localhost ~]
root pts/2 Mon Feb 25 06 :21 still logged in 192 .168.2.
root pts/1 Mon Feb 25 01 :10 still logged in :
root :0 Mon Feb 25 01 :09 still logged in :
root pts/0 Sun Feb 24 23 :39 still logged in 192 .168.2.
reboot system boot Sun Feb 24 23 :36 - 06 :21 (06:45) 3 .10.0-862.el7.x86_64
- 查看指定时间之前登录信息
[root@localhost ~]
- 查看登录系统的用户相关信息
[root@localhost ~]
[root@localhost ~]
用户名 端口 来自 最后登陆时间
root pts/2 192 .168.2.1 一 2 月 25 06 :21:27 + 0800 2019
bin **从未登录过**
daemon **从未登录过**
adm **从未登录过**
lp **从未登录过**
sync **从未登录过**
shutdown **从未登录过**
halt **从未登录过**
mail **从未登录过**
operator **从未登录过**
games **从未登录过**
ftp **从未登录过**
nobody **从未登录过**
systemd-network **从未登录过**
dbus **从未登录过**
polkitd **从未登录过**
libstoragemgmt **从未登录过**
rpc **从未登录过**
colord **从未登录过**
gluster **从未登录过**
saslauth **从未登录过**
amandabackup **从未登录过**
abrt **从未登录过**
setroubleshoot **从未登录过**
rtkit **从未登录过**
pulse **从未登录过**
rpcuser **从未登录过**
nfsnobody **从未登录过**
unbound **从未登录过**
chrony **从未登录过**
qemu **从未登录过**
radvd **从未登录过**
tss **从未登录过**
usbmuxd **从未登录过**
geoclue **从未登录过**
ntp **从未登录过**
sssd **从未登录过**
gdm :0 日 2 月 24 23 :36:56 + 0800 2019
gnome-initial-setup :0 一 2 月 11 22 :03:38 + 0800 2019
sshd **从未登录过**
avahi **从未登录过**
postfix **从未登录过**
tcpdump **从未登录过**
tom :0 一 2 月 11 22 :06:38 + 0800 2019
[root@localhost ~]
06:27:49 up 3:18, 4 users, load average: 0.00, 0.04, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.2.1 23:39 5:09m 1.11s 1.11s -bash
root :0 :0 01:09 ?xdm? 3:10 0.34s /usr/libexec/gn
root pts/1 :0 01:10 5:14m 0.13s 0.13s bash
root pts/2 192.168.2.1 06:21 5.00s 0.13s 0.02s w
1 [root@localhost ~]
[root@localhost ~]
[root@localhost ~]
[root@localhost ~]
[root@localhost ~]
查看异常流量
[root@localhost ~]
[root@localhost ~]
[root@localhost ~]
-
流量监控 Cacti,Zabbix,Ganglia,Prometheus+grafana等 -
数据包抓取 wireshark,tcpdump,sniffer -
tcpdump
- 基本用法
- 条件:port,host,net
- 协议作为条件
- 多条件:与关系(and) 或关系(or) 非关系(not)
|C|E|U|A|P|R|S|F|
|--------------- |
|0 0 0 0 0 0 1 0 |
|--------------- |
|7 6 5 4 3 2 1 0 |
条件是:TCP仅有SYN/ACK标记的
|C|E|U|A|P|R|S|F|
|--------------- |
|0 0 0 1 0 0 1 0 |
|--------------- |
|7 6 5 4 3 2 1 0 |
检查可疑进程
- 基本工具 ps pstree top netstat ss
- ps
系统进程一般还有“[]”
ps -aux | less
- pstree
显示每个程序的完全指令,包含路径、参数或是常驻服务标识、列出树状图时特别标注现在执行的程序
pstree -a
pstree -h
- top
按cpu、内存排序
top -d 1
- netstat
查看网络连接情况
netstat -anputl
- ss
查看某个协议或端口的监听状态
ss -an | grep tcp
ss -an | grep 22
lsof /usr/sbin/vsftpd
fuser /usr/local/nginx/sbin/nginx
- 根据某文件查看正在被某些进程使用
lsof -i TCP:
fuser -v 22/tcp
- 根据某个端口查看对应进程
扩展:
文件完整性检查
rpm -V bash
rpm -V kernel
rpm -V vsftpd
rpm -Vf /etc/ssh/sshd_config
- 获取当前的/etc 目录md5值
find /etc -type f -exec md5sum {} \; >/tmp/`date +%F%H%M`-md5.txt
-
修改文件、删除文件、添加文件 -
重新获取/etc目录的md5值
find /etc -type f -exec md5sum {} \; >/tmp/`date +%F%H%M`-md5.txt
- 对比以上md5值获取操作过的文件
1 diff /tmp/1-md5.txt /tmp/2-md5.txt
扩展:
|