人在江湖飘哪能不挨刀怎么玩
实操前准备
本次实操基于CentOS 7系统,零门槛适配新手,需通过SSH登录目标服务器(以root用户登录,普通用户需用su切换),执行以下命令确认系统环境:
正常输出应为CentOS Linux release 7.9.2009 (Core),若系统版本不同需替换对应命令,本文默认以该版本为基准。
核心操作1:事前防护(避免挨刀)
1.1 配置防火墙:仅开放必要端口
CentOS 7默认用firewalld防火墙,禁止直接开放所有端口,需按需配置:
查看当前开放端口:
``` firewall-cmd --list-ports ```开放固定端口(如SSH的22、HTTP的80、自定义端口8080):
``` 开放8080端口,永久生效,重新加载防火墙 firewall-cmd --add-port=80/tcp --permanent firewall-cmd --add-port=22/tcp --permanent firewall-cmd --add-port=8080/tcp --permanent firewall-cmd --reload 验证端口是否开放成功 firewall-cmd --query-port=8080/tcp ```数据库端口需限制源IP(避免外部暴力破解),示例允许内网192.168.1.0/24访问MySQL的3306端口:
``` firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="3306" accept' --permanent firewall-cmd --reload ```
绝对禁止开放所有端口,需根据业务需求精准配置。
1.2 禁用root远程登录
暴力破解多针对root用户,需修改sshd配置:
编辑sshd配置文件:
``` vi /etc/ssh/sshd_config ```找到
PermitRootLogin yes,替换为PermitRootLogin no,删除该行的注释符(即去掉行首的);若有其他注释行需同步删除。保存并退出(vi输入
``` systemctl restart sshd ```:wq),重启sshd服务:
关键细节:修改前必须确保有普通用户登录权限,切换至root后再操作,禁止直接用root远程登录后修改配置再断开连接,避免锁死。
核心操作2:事中应急(挨刀后快速恢复)
2.1 断开异常连接
登录服务器后第一时间排查陌生连接:
查看所有登录用户及来源:
``` w ```若发现陌生用户(如root从非信任IP登录),终止对应连接,示例终止pts/1的连接:
``` kill -9 $(ps -ef | grep pts/1 | grep -v grep | awk '{print $2}') ```查看异常监听端口,排查非法进程:
``` netstat -tulpn ```若发现陌生进程(如监听12345端口),通过PID终止:
``` 替换为实际PID kill -9 1234 ```
2.2 恢复被篡改配置文件
若系统配置被恶意修改,用系统默认配置覆盖(以hosts文件为例):
``` 优先用rpm备份文件恢复,若不存在则用初始模板 cp /etc/hosts.rpmnew /etc/hosts 2>/dev/null || cp /usr/share/doc/setup-2.8.71/hosts /etc/hosts ```核心操作3:事后加固(避免再挨刀)
3.1 部署fail2ban防暴力破解
fail2ban可自动封禁暴力破解的IP,直接安装配置:
安装依赖:
``` yum install -y epel-release fail2ban ```创建完整配置文件/etc/fail2ban/jail.local,内容如下(直接复制):
``` [DEFAULT] bantime = 86400 findtime = 3600 maxretry = 3 [sshd] enabled = true port = ssh logpath = %(sshd_log)s backend = %(sshd_backend)s ```启用并启动服务:
``` systemctl enable fail2ban systemctl start fail2ban ```
3.2 定时备份关键文件
定期备份/etc目录,避免配置丢失:
创建备份脚本/root/backup.sh,内容如下:
``` !/bin/bash mkdir -p /backup tar -zcf /backup/etc_$(date +%Y%m%d).tar.gz /etc 保留最近7天的备份 find /backup -name "etc_.tar.gz" -mtime +7 -delete ```添加执行权限并加入定时任务:
``` chmod +x /root/backup.sh 每天凌晨2点执行备份 echo "0 2 root /root/backup.sh" >> /etc/crontab ```测试脚本是否正常:
``` /root/backup.sh ls /backup ```
实操验证
所有步骤执行完成后,依次验证:
- 防火墙开放端口:执行
firewall-cmd --list-ports确认仅开放必要端口; - sshd配置:执行
grep PermitRootLogin /etc/ssh/sshd_config输出应为PermitRootLogin no; - fail2ban状态:执行
systemctl status fail2ban显示active (running);
以上操作全程零门槛,可直接复制执行,覆盖了服务器被攻击前后的核心防护与恢复逻辑。
版权保护: 本文由 741卡盟 原创,转载请保留链接: http://741ka.com/gamenews/22410.html
- 上一篇:QQ飞车-时之沙赛道跑法
- 下一篇:怪物猎人ol大剑攻略
