Linux下通过命令行实现防火墙操作
2026/6/6 20:43:47 网站建设 项目流程

在Linux系统上管理防火墙,ufw(Uncomplicated Firewall) 是一个非常流行且易于使用的工具,它是iptables的一个前端。

🔧 UFW的安装

ufw通常预装在基于Debian的系统(如Ubuntu)上。如果你的系统没有,可以使用包管理器轻松安装。

系统发行版安装命令说明
Ubuntu / Debiansudo apt update && sudo apt install ufw更新软件源后安装。
CentOS / RHEL / Fedorasudo yum install ufwsudo dnf install ufw根据你的系统版本使用yumdnf
openSUSEsudo zypper install ufw使用zypper包管理器。
Arch Linuxsudo pacman -S ufw使用pacman包管理器。

安装完成后,通常需要启用并启动服务:

sudoufwenable# 启用防火墙并设置开机自启sudosystemctlenable--now ufw# 在一些系统上,这条命令能更可靠地启用并启动服务

📖 UFW的基本操作与常用命令

掌握防火墙管理,关键是理解操作的对象(服务/端口)和动作(允许/拒绝)。下表汇总了最核心的命令:

操作类别命令示例作用说明
查看状态sudo ufw status查看防火墙规则和状态(简洁)。
sudo ufw status verbosesudo ufw status numbered查看详细信息或带编号的规则。
允许/拒绝连接sudo ufw allow 22/tcp允许TCP协议访问22端口(SSH)。
sudo ufw allow from 192.168.1.100允许来自特定IP的所有连接。
sudo ufw deny 80/tcp拒绝TCP协议访问80端口(HTTP)。
按服务名操作sudo ufw allow ssh按服务名允许(ssh对应端口22)。
删除规则sudo ufw delete allow 22/tcp按规则内容删除。
sudo ufw delete 3status numbered显示的编号删除。
禁用/重置sudo ufw disable禁用防火墙(规则保留)。
sudo ufw reset重置为初始状态(会清空所有规则)。
基础配置sudo ufw default deny incoming默认拒绝所有入站连接(推荐)。
sudo ufw default allow outgoing默认允许所有出站连接(通常如此)。

💡 典型配置流程与示例

假设你要设置一台基础的Web服务器,通常需要:

  1. 设置默认策略(安全基线):
    sudoufw default deny incomingsudoufw default allow outgoing
  2. 放行必要的服务
    sudoufw allowssh# 允许SSH远程管理sudoufw allow http# 允许HTTP (端口80)sudoufw allow https# 允许HTTPS (端口443)
  3. 启用并验证
    sudoufwenablesudoufw status verbose

⚠️ 重要安全提醒

  • 远程操作务必谨慎:在通过SSH远程管理服务器时,务必先允许SSH端口(默认为22),再启用ufw。否则可能会立即断开连接并被锁在服务器外。
  • 放行SSH的命令sudo ufw allow sshsudo ufw allow 22/tcp
  • 如果你修改了SSH端口(例如为2222),则应该放行该端口:sudo ufw allow 2222/tcp

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询