- 工信部备案号 滇ICP备05000110号-1
- 滇公网安备53011102001527号
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
- CN域名投诉举报处理平台:电话:010-58813000、邮箱:service@cnnic.cn
很多运维人员都会收到类似告警:
/var/log/secure 日志暴增
CPU 异常升高
大量 SSH 登录失败
登录服务器后查看日志:
grep "Failed password" /var/log/secure | tail
或者 Ubuntu:
grep "Failed password" /var/log/auth.log | tail
可能看到:
Failed password for root from 185.xxx.xxx.xxx
Failed password for admin from 103.xxx.xxx.xxx
Failed password for test from 45.xxx.xxx.xxx
这说明服务器正在遭受 SSH 暴力破解攻击。
统计攻击 IP:
grep "Failed password" /var/log/secure | \\
awk '{print $(NF-3)}' | \\
sort | uniq -c | sort -rn | head -20
输出示例:
5321 185.xxx.xxx.xxx
4215 103.xxx.xxx.xxx
3877 45.xxx.xxx.xxx
统计被尝试登录的账号:
grep "Failed password" /var/log/secure | \\
awk '{print $11}' | \\
sort | uniq -c | sort -rn
结果:
2100 root
1800 admin
950 oracle
820 mysql
可以快速了解攻击目标。
查看最近登录记录:
last -a | head -20
查看当前在线用户:
who
查看最近成功登录:
grep "Accepted password" /var/log/secure
重点检查是否存在异常 IP:
Accepted password for root from xxx.xxx.xxx.xxx
如果发现陌生来源,需要立即处理。
查看系统用户:
cat /etc/passwd
筛选可登录账户:
awk -F: '$7 !~ /(nologin|false)/ {print $1}' /etc/passwd
检查是否存在异常账号:
backup1
admin2
test123
查看 sudo 权限:
grep -v "^#" /etc/sudoers
以及:
ls /etc/sudoers.d/
确认没有被恶意添加权限。
查看配置:
cat /etc/ssh/sshd_config
重点关注:
PermitRootLogin
PasswordAuthentication
PubkeyAuthentication
推荐配置:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
修改后重启:
systemctl restart sshd
验证:
ss -lntp | grep ssh
确认服务正常。
默认端口:
22
长期暴露在公网会持续被扫描。
修改:
vim /etc/ssh/sshd_config
例如:
Port 22222
开放防火墙:
firewall-cmd --permanent --add-port=22222/tcp
firewall-cmd --reload
重启 SSH:
systemctl restart sshd
验证:
ssh -p 22222 user@server_ip
虽然不能彻底防御,但能过滤大量自动扫描器。
安装:
yum install fail2ban -y
Ubuntu:
apt install fail2ban -y
配置:
cat > /etc/fail2ban/jail.local << EOF
[sshd]
enabled = true
port = ssh
maxretry = 5
findtime = 300
bantime = 3600
EOF
启动:
systemctl enable fail2ban
systemctl start fail2ban
查看状态:
fail2ban-client status sshd
输出:
Currently banned: 125
说明封禁已生效。
如果服务器仅供内部运维使用:
允许固定办公 IP:
firewall-cmd \\
--permanent \\
--add-rich-rule='rule family="ipv4" source address="1.2.3.4" port protocol="tcp" port="22222" accept'
拒绝其他来源:
firewall-cmd \\
--permanent \\
--add-rich-rule='rule family="ipv4" port protocol="tcp" port="22222" drop'
生效:
firewall-cmd --reload
这种方式比单纯修改端口更加有效。
查看计划任务:
crontab -l
检查系统计划任务:
ls -al /etc/cron*
查看异常进程:
ps -ef --sort=-%cpu | head
查看异常网络连接:
ss -antp
检查近期修改文件:
find / -mtime -3 -type f 2>/dev/null
重点关注:
/tmp
/dev/shm
/var/tmp
这些目录经常被恶意程序利用。
售前咨询
售后咨询
备案咨询
二维码

TOP