Linux iptables常见防护攻击措施
2015-12-06 21:43
661 查看
iptables防火墙实现阻挡常见攻击的实用设置分享
这篇文章主要介绍了iptables防火墙实现阻挡常见攻击的实用设置分享,本文讲解了防止 SYN 洪水攻击、丢弃 NULL 空数据包、丢弃异常的 XMAS 数据包、丢弃无效数据包等应对异常数据的设置方法,需要的朋友可以参考下初始创建的 TCP 连接必须含 SYN
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
丢弃 Fragments 碎片数据包 (碎片数据包攻击的后果: 可能导致正常数据包丢失)
iptables -A INPUT -f -j DROP
防止 SYN 洪水攻击 (限制的速度根据自身情况调整)
iptables -A INPUT -p tcp -m state --state NEW -m limit --limit 100/second --limit-burst 300 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -j DROP
丢弃异常的 XMAS 数据包 (异常的 XMAS 数据包攻击的后果: 可能导致某些系统崩溃)
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN,PSH,URG -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
丢弃 NULL 空数据包
iptables -A INPIT -p tcp --tcp-flags ALL NONE -j DROP
允许有限的 TCP RST 请求 (限制的速度根据自身情况调整)
iptables -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 10/second --limit-burst 30 -j ACCEPT
丢弃无效数据包
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP
阻挡欺诈 IP 地址的访问 (以下为 RFC1918 类型和 IANA 预留地址,多为 LAN 或者多播地址,这些是不可能作为公网地址源的)
代码如下:
iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 169.254.0.0/16 -j DROP
iptables -A INPUT -s 172.16.0.0/12 -j DROP
iptables -A INPUT -s 127.0.0.0/8 -j DROP
iptables -A INPUT -s 224.0.0.0/4 -j DROP
iptables -A INPUT -d 224.0.0.0/4 -j DROP
iptables -A INPUT -s 240.0.0.0/5 -j DROP
iptables -A INPUT -d 240.0.0.0/5 -j DROP
iptables -A INPUT -s 0.0.0.0/8 -j DROP
iptables -A INPUT -d 0.0.0.0/8 -j DROP
iptables -A INPUT -d 239.255.255.0/24 -j DROP
iptables -A INPUT -d 255.255.255.255 -j DROP
阻挡自定义的恶意 IP 地址的访问
iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP
禁止 ICMP PING
iptables -A INPUT -p icmp -m icmp --icmp-type echo-request -j DROP
相关文章推荐
- ftp vsftpd服务器安装(云虚拟机Centos 7.0)
- Linux版Matlab R2015b的bug——脚本运行的陷阱(未解决)
- Linux安装教程
- linux下 lvm 磁盘扩容
- Linux LVM硬盘管理及LVM扩容
- linux sudo 命令
- makefile函数集锦
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例
- 【Linux编程】用select处理普通数据和带外数据
- CentOS7 本地源搭建
- 在linux下编写动态链接库的步骤
- 安装 CentOS 后的系统配置及软件安装备忘
- centos7折腾-安装桌面
- linux su,sudo命令
- linux su,sudo命令
- Linux进程间通信(IPC)编程实践(十)System V信号量---PV操作经典题目
- centos7折腾-换本地的安装源
- centos7折腾-我要关机
- Linux下C++的编程——开发环境搭建与第一个程序
- 十年linux命令总结