Ubuntu防火墙(UFW)安全级别选择指南
Ubuntu的默认防火墙工具是UFW(Uncomplicated Firewall),其核心设计遵循“默认拒绝”原则,即未明确允许的流量均被拦截,这是保障系统安全的关键策略。选择安全级别的本质是调整默认策略与开放必要服务的平衡,以下是具体步骤与建议:
UFW的安全级别主要由默认策略决定,需先配置以下两条核心规则:
sudo ufw default deny incomingsudo ufw default allow outgoing注:部分资料提到“默认允许传出”可能存在数据泄露风险,但对于普通用户或常规服务器,此设置不会影响安全性(若需更高安全级别,可通过自定义规则限制传出流量,如禁止敏感端口的外发连接)。
UFW的安全级别需结合使用场景灵活调整,以下是常见场景的推荐配置:
default deny incoming+default allow outgoing。sudo ufw allow ssh # 允许SSH(默认22端口)
sudo ufw allow http # 允许HTTP(80端口)
sudo ufw allow https # 允许HTTPS(443端口)
此设置既能满足日常上网需求,又能有效防范恶意入侵。default deny incoming+default allow outgoing。sudo ufw allow ssh # 允许SSH(建议修改默认22端口至高位端口,如2222)
sudo ufw allow 80/tcp # 允许HTTP
sudo ufw allow 443/tcp # 允许HTTPS
sudo ufw limit ssh # 限制SSH连接速率(30秒内超过6次则临时封锁)
提示:若服务器无需SSH,应完全关闭该端口(
sudo ufw deny ssh),避免成为攻击入口。
default deny incoming+default deny outgoing(需谨慎使用,会阻断所有外发连接)。sudo ufw allow from 192.168.1.100 to any port 3306 # 仅允许192.168.1.100访问MySQL(3306端口)
sudo ufw deny out to any port 80 # 禁止所有外发HTTP请求(需配合内部更新源使用)
sudo ufw deny out to any port 443 # 禁止所有外发HTTPS请求
sudo ufw default allow incoming会将系统暴露在所有外部流量中,极易遭受攻击,仅建议在测试环境使用。sudo ufw allow ssh已启用,否则可能导致无法连接。sudo ufw status verbose查看当前规则,及时删除无用规则(如不再使用的服务端口),避免规则堆积影响性能。通过以上步骤,可根据自身需求选择合适的UFW安全级别,在保障系统安全的同时,不影响正常使用。需牢记:“默认拒绝”是UFW的核心安全理念,开放的服务越少,系统越安全。