Debian环境如何配置防火墙
导读:Debian 防火墙配置指南 一、方案总览与选择 在 Debian 上常用防火墙栈有: UFW(Uncomplicated Firewall):基于 iptables 的前端,语法简洁,适合快速上手与日常运维。 iptables:传统且...
Debian 防火墙配置指南
一、方案总览与选择
- 在 Debian 上常用防火墙栈有:
- UFW(Uncomplicated Firewall):基于 iptables 的前端,语法简洁,适合快速上手与日常运维。
- iptables:传统且灵活,适合需要细粒度控制的场景。
- nftables:新一代 Linux 防火墙框架,语法更现代,适合新项目或希望面向未来的维护。
- 建议:服务器日常管理优先用 UFW;复杂策略或学习用途可用 iptables/nftables。
二、使用 UFW 快速配置(推荐)
- 安装与启用
- 安装:
sudo apt update & & sudo apt install ufw - 设置默认策略:
sudo ufw default deny incoming;sudo ufw default allow outgoing - 允许 SSH(避免锁死远程):
sudo ufw allow 22/tcp或sudo ufw allow OpenSSH - 启用:
sudo ufw enable(首次会提示可能影响现有 SSH 连接,已放行 22 端口可继续)
- 安装:
- 常用规则
- Web 服务:
sudo ufw allow 80/tcp;sudo ufw allow 443/tcp - 仅允许指定来源访问某端口:
sudo ufw allow from < IP/网段> to any port < 端口> - 端口范围:
sudo ufw allow 7100:7200/tcp - 查看状态:
sudo ufw status verbose;临时关闭:sudo ufw disable
- Web 服务:
- 启用 IPv6(如使用 IPv6)
- 编辑
/etc/default/ufw,将IPV6=yes,然后重启 UFW:sudo systemctl restart ufw
- 编辑
- 说明
- UFW 规则在启用后即为持久化,系统重启会自动加载。
三、使用 iptables 配置(传统方式)
- 基本规则与持久化
- 允许回环与已建立连接:
sudo iptables -A INPUT -i lo -j ACCEPT;sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT - 放行 SSH/HTTP/HTTPS:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT;sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT;sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT - 默认拒绝入站:
sudo iptables -P INPUT DROP - 保存与恢复
- Debian 10+/主流做法:
sudo apt install iptables-persistent;安装时选择保存当前规则;后续可用sudo netfilter-persistent save与sudo netfilter-persistent start - 通用方式:
sudo iptables-save > /etc/iptables/rules.v4;开机恢复:sudo iptables-restore < /etc/iptables/rules.v4
- Debian 10+/主流做法:
- 允许回环与已建立连接:
- 提示
- 远程操作务必先放行 22/TCP,再设置默认 DROP,避免断连。
四、使用 nftables 配置(现代方式)
- 安装与基本规则
- 安装:
sudo apt update & & sudo apt install nftables - 查看规则:
sudo nft list ruleset - 放行 SSH/HTTP/HTTPS:
sudo nft add rule ip filter input tcp dport 22 acceptsudo nft add rule ip filter input tcp dport 80 acceptsudo nft add rule ip filter input tcp dport 443 accept
- 默认拒绝入站:
sudo nft add rule ip filter input drop
- 安装:
- 持久化
- 保存:
sudo nft list ruleset > /etc/nftables.conf - 恢复:
sudo nft -f /etc/nftables.conf
- 保存:
- 提示
- 若系统启用了
nftables.service,请确保开机启用:sudo systemctl enable --now nftables。
- 若系统启用了
五、安全与运维要点
- 变更前备份规则,变更后在测试环境验证;生产环境分阶段启用,避免一次性切断关键业务。
- 对 SSH 建议:启用密钥登录、禁用 root 远程登录、限制可登录用户或来源网段;在调整默认策略前务必放行 22/TCP。
- 按需开启日志与监控(如记录被拒绝的连接),并定期审查与更新规则,匹配业务与安全需求变化。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian环境如何配置防火墙
本文地址: https://pptw.com/jishu/780236.html
