温馨提示×

linux防火墙怎么配置

小樊
50
2026-10-10 05:03:57
栏目: 智能运维

在 Linux 下,“防火墙”通常指 iptables / nftables,或者发行版自带的简化工具(firewalld / ufw)。下面按常见场景和工具给你一套实用配置说明。


一、先看系统用哪种防火墙

# 查看是否使用 firewalld
systemctl status firewalld

# 查看是否使用 ufw(Ubuntu 常见)
ufw status

# 查看 iptables 是否有规则
iptables -L -n

二、Ubuntu / Debian(推荐 ufw)

1. 基本使用

sudo ufw enable
sudo ufw status

2. 放行端口

sudo ufw allow 22/tcp     # SSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

3. 拒绝端口

sudo ufw deny 3306/tcp

4. 删除规则

sudo ufw delete allow 80/tcp

三、CentOS / RHEL(推荐 firewalld)

1. 启动防火墙

sudo systemctl start firewalld
sudo systemctl enable firewalld

2. 开放端口

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload

3. 开放服务

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

4. 查看规则

sudo firewall-cmd --list-all

四、底层 iptables(通用但复杂)

1. 允许 SSH(非常重要)

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

2. 允许 Web

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

3. 允许本机回环

iptables -A INPUT -i lo -j ACCEPT

4. 默认策略(谨慎)

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

5. 保存规则

# CentOS
service iptables save

# Ubuntu
iptables-save > /etc/iptables.rules

五、常见安全建议

✅ 永远先放行 SSH(22) 再改默认策略
✅ 生产服务器默认 DROP INPUT
✅ 不用的端口全部拒绝
✅ 云服务器还要配合 安全组


六、你可以告诉我

我可以直接给你现成配置,只要你说:

  • 系统(Ubuntu / CentOS / 其他)
  • 用途(Web / 数据库 / 内网 / 公网)
  • 是否需要限制 IP

例如:

“CentOS 7,跑 Nginx 和 MySQL,只让公司 IP 访问数据库”

0 踩