在Ubuntu服务器环境中,Web应用防火墙(WAF)配置是系统安全防护的重要环节。本文将通过具体案例演示如何在Ubuntu服务器上部署和配置基于iptables的Web应用防火墙。
首先,确保系统已安装必要组件:
sudo apt update
sudo apt install iptables iptables-persistent
接下来配置基本的Web流量过滤规则。假设服务器监听80端口(HTTP)和443端口(HTTPS),我们需要限制访问频率并阻止恶意请求。
创建一个自定义链来处理Web请求:
sudo iptables -t filter -N web_filter
设置速率限制规则,防止DDoS攻击:
# 限制每个IP每分钟最多10个连接
sudo iptables -A web_filter -m limit --limit 10/minute -j ACCEPT
sudo iptables -A web_filter -j DROP
将web_filter链应用到HTTP和HTTPS端口:
sudo iptables -I INPUT -p tcp --dport 80 -j web_filter
sudo iptables -I INPUT -p tcp --dport 443 -j web_filter
为防止SQL注入攻击,添加URL参数过滤规则:
# 阻止常见的SQL注入关键词
sudo iptables -A web_filter -m string --string "union select" --algo bm -j DROP
sudo iptables -A web_filter -m string --string "drop table" --algo bm -j DROP
最后保存配置,确保系统重启后规则仍然生效:
sudo netfilter-persistent save
通过以上配置,可以有效增强Ubuntu服务器的Web应用安全防护能力。

讨论