在Ubuntu系统中,使用iptables防止DDoS攻击可以通过限制连接速率、阻止特定IP地址或网络等方式来实现。以下是一些常用的iptables规则,可以帮助你提高系统的安全性:
你可以使用iptables
的limit
模块来限制连接速率,防止短时间内大量请求涌入。
# 限制每分钟最多10个新连接
iptables -A INPUT -p tcp --syn -m limit --limit 10/min -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
如果你知道某些IP地址或网络是恶意的,可以直接将它们加入黑名单。
# 阻止单个IP地址
iptables -A INPUT -s 1.2.3.4 -j DROP
# 阻止整个网络
iptables -A INPUT -s 1.2.3.0/24 -j DROP
你可以限制每个IP地址的并发连接数,防止单个IP地址占用过多资源。
# 限制每个IP地址最多5个并发连接
iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 5 -j DROP
ufw
进行更简单的配置Ubuntu系统自带了ufw
(Uncomplicated Firewall),它提供了一个更简单的界面来管理防火墙规则。
ufw
sudo ufw enable
sudo ufw allow ssh
sudo ufw limit ssh/tcp
sudo ufw deny from 1.2.3.4 to any
sudo ufw status
fail2ban
fail2ban
是一个入侵防御软件框架,它可以监控日志文件并根据规则自动封禁恶意IP地址。
fail2ban
sudo apt-get install fail2ban
fail2ban
编辑/etc/fail2ban/jail.local
文件,添加以下内容:
[DEFAULT]
bantime = 600
findtime = 600
maxretry = 3
[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
fail2ban
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
通过结合使用iptables
、ufw
和fail2ban
,你可以有效地防止DDoS攻击。iptables
提供了底层的防火墙规则配置,ufw
简化了规则的设置和管理,而fail2ban
则可以根据日志自动封禁恶意IP地址。根据你的具体需求选择合适的工具进行配置。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: ubuntu compton如何查看日志