阅读量:0
iptables是Linux系统中一款强大的防火墙工具,通过设置规则来过滤和控制网络流量,从而保护服务器免受攻击。以下是iptables保护Linux服务器免受攻击的方法:
基础配置
- 允许本地回环接口流量:
iptables -A INPUT -i lo -j ACCEPT
。 - 允许已建立和相关的连接:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
。 - 允许SSH流量:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
。 - 允许HTTP流量:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
。 - 拒绝所有其他流量:
iptables -A INPUT -j DROP
。
高级配置
- 端口转发:通过NAT表配置端口转发规则,例如将外部端口8080的请求转发到内部端口80:
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.2:80
。 - 限制连接速率:防止DoS攻击,限制每个IP地址的连接速率:
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
。 - SNAT和DNAT配置:用于网络地址转换,如共享内部主机上网或发布内网服务器。
规则设置
- 允许特定IP访问:
iptables -A INPUT -s 192.168.1.100 -j ACCEPT
。 - 拒绝特定IP访问:
iptables -A INPUT -s 192.168.1.100 -j DROP
。
保存和应用规则
- 保存规则:
iptables-save > /etc/iptables/rules.v4
。 - 应用规则:
iptables-restore < /etc/iptables/rules.v4
。
恢复规则
- 在系统重启后,通过
service iptables save
和service iptables start
命令恢复iptables规则。
通过上述配置,iptables可以有效地保护Linux服务器免受各种网络攻击。但请注意,iptables配置较为复杂,建议在充分了解其工作原理和规则后再进行配置。