一、案例讲解
本例中的规则将会阻止来自某一特定IP范围内的数据包,因为该IP地址范围被管理员怀疑有大量恶意攻击者在活动 如何判断服务是否受攻击? (1)ping测试服务是否丢掉? 丢包的几种可能原因: 你服务受攻击、机房上层线路受攻击、互联网上某个路由不稳定、机器服务/硬件问题(较少) (2)可以搭建流量检查服务来监控服务网络流量 如:Cacti 、MRTG 2种较出名的流量监控 ,但都不是实时的!一般5分钟探测一次
二、在linux上可以用一些脚本代码来监控网卡的实时流量
#查看实时流量脚本 #用vim创建个脚本文件,将以下代码复制进去.赋予权限,运行脚本监测 [root@localhost ~]vim /opt/traffic.sh #!/bin/bash while [ "1" ] do eth=$1 RXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}') TXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}') sleep 1 RXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}') TXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}') clear echo -e "\t RX `date +%k:%M:%S` TX" RX=$((${RXnext}${RXpre})) TX=$((${TXnext}${TXpre})) if [[ $RX -lt 1024 ]];then RX="${RX}B/s" elif [[ $RX -gt 1048576 ]];then RX=$(echo $RX | awk '{print $1/1048576 "MB/s"}') else RX=$(echo $RX | awk '{print $1/1024 "KB/s"}') fi if [[ $TX -lt 1024 ]];then TX="${TX}B/s" elif [[ $TX -gt 1048576 ]];then TX=$(echo $TX | awk '{print $1/1048576 "MB/s"}') else TX=$(echo $TX | awk '{print $1/1024 "KB/s"}') fi echo -e "$eth \t $RX $TX " done [root@localhost ~]chmod +x /opt/traffic.sh
三、测试验证
上图是执行脚本后显示服务器流量的状态 执行命令如下: [root@loaclhost ~]#/opt/./traffic.sh 查看网卡的流量时 rx是接收(receive) tx是发送(transport) 目前流量正常
我们可以使用软件在另外一台机器上不停的访问本站点我们就可以看到下图流量的变化
假如你认为这流量已是不正常流量,可以用以下命令查看有哪些IP在连接本机80端口,然后进行屏蔽!
[root@loaclhost ~]#netstat -ant | grep ":80" | awk '{printf "%s %s\n",$5,$6}' | sort 假如你认为192.168.0.123 IP有可疑,想进行屏蔽,用以下命令 屏蔽流进IP: [root@loaclhost ~]#iptables -I INPUT -s 192.168.0.123 -j DROP 解封IP: [root@loaclhost ~]#iptables -D INPUT -s 192.168.0.123 -j DROP 只屏蔽192.168.0 IP段访问本机80端口,其他端口可以正常,命令如下: iptables -I INPUT -p tcp --dport 80 -s 192.168.0.123/24 -j DROP 解封屏蔽: iptables -D INPUT -p tcp --dport 80 -s 192.168.0.123/24 -j DROP 命令添加的规则只是临时生效,重起iptables服务后将会恢复,永久进行保存命令service iptables save或者直接修改配置文件 修改完/etc/sysconfig/iptables 防火墙配置文件,需要重启iptables服务才会生效
四、防DDOS攻击完整策略与讲解
默认的iptables规则是无法过滤DDOS攻击数据的,我们需要添加过滤规则实现iptables拥有抗DDOS的能力
以下是iptables 配置规则讲解: 屏蔽 SYN_RECV 的连接 -A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT 限制IP碎片,每秒钟只允许100个碎片,用来防止DoS攻击 -A FORWARD -f -m limit --limit 100/sec --limit-burst 100 -j ACCEPT 限制ping包每秒一个,10个后重新开始 -A FORWARD -p icmp -m limit --limit 1/sec --limit-burst 10 -j ACCEPT 限制ICMP包回应请求每秒一个 -A FORWARD -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT 此处自定义一个表 -A FORWARD -j RH-Firewall-1-INPUT 完全接受 loopback interface 的封包 -A RH-Firewall-1-INPUT -i lo -j ACCEPT 允许主机接受 ping -A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT 网际网路印表机服务 (可以删除) -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT 允许连线出去后对方主机回应进来的封包 -A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 允许防火墙开启指定端口 (本服务器规则开了常用端口 22 21 80 25 110 3306等) -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport port -j ACCEPT 限制SSH登陆 只允许在172.16.0.2上使用ssh远程登录,从其它计算机上禁止使用ssh iptables -A INPUT -s 172.16.0.2 -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j DROP
Iptables 防火墙是一种很强悍的防火墙,只要规则配置好,能大量提高系统安全性,要比windows下的很多防火墙都好,有兴趣可以试下!
相关推荐
iptables 与 firewalld 防火墙配置使用方法 iptables 和 firewalld 是 Linux 系统中两种常用的防火墙解决方案,用于过滤不合法的流量,保护内网安全。本文将对比 iptables 和 firewalld 的配置使用方法,并详细介绍...
在Linux环境下,防范CC(Challenge Collapsar)这种特定类型的DDoS攻击是一项重要的任务。CC攻击主要针对Web服务,通过模拟大量合法用户请求来耗尽服务器资源。 以下是一些在Linux系统下防止CC攻击的策略和工具: ...
对于Apache服务器,防火墙配置可以有效阻止恶意流量、防御DDoS攻击,保护服务器免受网络扫描和限制对特定端口和服务的访问。 其次,配置Apache防火墙应对威胁的主要方法包括使用iptables、限制IP访问、防止端口扫描...
1. 使用 iptables 防火墙限制访问主机的端口,减少攻击面。 2. 使用 xt_recent 模块来实现对 TCP 连接数的控制,限制单个客户端 IP 地址在一定时间内的 TCP 连接数。 3. 使用 connlimit 模块来限制单个客户端 IP ...
书中全面阐述了iptables防火墙,并详细讨论了如何应用psad、fwsnort、fwknop 3个开源软件最大限度地发挥iptables检测和防御攻击的效力。大量真实例子以及源代码更有助于读者理解安全防御的原理、技术和实际作。 ...
最后介绍Express Data Path(XDP)过滤器在防止DDoS攻击中的作用和优势,XDP直接在网络接口处处理数据包,提高了过滤速度和减少了资源占用。 适合人群:具备Linux系统管理和运维经验的专业技术人员;有兴趣深入了解...
对平台安全性进行配置,包括https传输加密、存储加密、云主机迁移、防火墙即服务、安全组规则、浮动IP、iptables防火墙、用户登录密码策略、VxLAN网络、KVM热添加硬盘、openstack服务组件日志集中收集、DDoS攻击防范...
DDoS攻击是分布式拒绝服务攻击,通过大量源头同时发起攻击。防范措施包括: 1. **限制最大连接数**:设置Nginx的最大并发连接数,避免资源耗尽。 2. **缩短超时时间**:减少长时间未响应的连接占用资源。 3. **使用...
5. **防火墙配置**:确保服务器安全,需要正确配置防火墙如`iptables`或`ufw`,允许必要的Web服务端口(如HTTP的80端口和HTTPS的443端口)开放,同时阻止不必要的入站连接。 6. **SSL/TLS证书配置**:为了提供安全...
这条命令会在检测到攻击时,通过iptables防火墙规则阻止该IP访问80端口。 8. **DOSLogDir** 设置日志文件的保存位置。例如: ```apache DOSLogDir "/var/log/" ``` 所有与mod_evasive相关的日志都会记录在这...
防火墙规则配置是实现有效防御的一个关键环节,例如通过iptables命令可阻止特定IP地址的恶意流量,从而保护搜索引擎的正常运行。入侵检测系统的日志分析是另一重要方面,通过对日志文件的分析,可以及时发现和防范...
4. **分布式防火墙**:在Linux集群中,可以设置分布式防火墙来过滤异常流量,对DDoS攻击进行预防和抵御。例如,iptables和nftables等工具可以配置规则,限制特定IP的访问频率,阻挡恶意请求。 5. **IP欺骗防御**:...
- 限制攻击:设置速率限制,防止DDoS攻击。 5. 使用总则与FAQ - 在编写iptables规则时,应遵循从具体到通用的顺序,避免误拦截合法流量。 - 保存和恢复规则集:使用`service iptables save`保存配置,`service ...
具体来说,安全配置可以防止分布式拒绝服务(DDoS)攻击,通过限制连接数和访问频率来实现。同时,使用SSL/TLS协议加密数据传输能够保护用户信息不被窃取。此外,通过设置文件和目录的访问权限,可以有效进行权限...
随着互联网的快速发展,网站的安全问题日益凸显,其中CC攻击(Challenge Collapsar)成为一种常见的DDoS攻击方式,它通过大量合法请求占用服务器资源,导致服务无法正常响应。对于使用宝塔Linux面板的用户来说,了解...
#### 实验二:边界安全与防火墙配置 **实验目的** - **边界安全概念:** 理解边界安全的重要性和基本范畴。 - **防火墙原理:** 掌握防火墙的基本原理及其在边界安全中的作用。 - **iptables命令:** 熟练使用...
云计算解决方案可以启用 mod_evasive 模块、配合 iptables 设置、配置服务器负载均衡的技术、启用硬件防火墙等防火墙设备等多种方式来防范 DDOS 攻击。 六、网站流量及数据进行实时监控 云计算解决方案可以实时...
启用mod_evasive模块可以检测并阻止恶意请求,iptables结合使用可以进一步过滤流量,配置服务器负载均衡可以分散攻击,同时启用硬件防火墙增强整体防御能力。 六、实时监控网站流量和数据 对DDoS攻击的防范依赖于...
这个脚本通过分析Nginx的访问日志文件,找出在特定时间内访问次数超过预设阈值的IP地址,然后将其添加到iptables防火墙规则中,阻止进一步的访问。此外,它还记录了被屏蔽的IP地址到日志文件。这有助于保护服务器免...
5. **反DDoS攻击** - **限速设置**:通过`limit_rate`限制单个客户端的请求速度。 - **IP黑名单**:自动识别并阻止高频率异常IP,如使用`fail2ban`。 6. **缓存管理** - **安全缓存**:谨慎使用缓存,避免存储...