当前位置: 首页 > web >正文

Ubuntu中的防火墙工具

文章目录

  • 一、简介
  • 二、安装确认
  • 三、服务状态
  • 四、规则检查
  • 小结

一、简介

ubuntu 中常见的防火墙管理工具是ufwnftablesiptables。其中,ufw的设计目标是为普通用户和管理员提供一种简单的方式来管理 Linux 防火墙规则,而无需深入了解复杂的 nftablesiptables 语法。在 Ubuntu 20.04 及以上版本,ufw 默认使用 nftables 后端,而 nftables 则是现代 Linux 系统中 iptables 的替代品或者说是升级版本。ufw 的命令会生成 nftables 规则,写入内核的 Netfilter 框架,实际的防火墙规则仍然由内核的 Netfilter 框架执行。

特性iptablesnftablesufw
设计时间1998 年,较老2014 年,现代2005 年,简化前端
后端Netfilter(直接)Netfilter(直接)nftables(Ubuntu 20.04+)或 iptables
Systemd 服务无(需 netfilter-persistent)有(nftables.service)有(ufw.service)
规则持久化手动(iptables-save)或 iptables-persistent/etc/nftables.conf + nftables.service/etc/ufw/*.rules + ufw.service
语法复杂度复杂,链和表分离(INPUT、FORWARD)统一表结构,灵活简单,隐藏底层细节(ufw allow ssh)
功能过滤、NAT、mangle,IPv4/IPv6 分离等统一 IPv4/IPv6,高级功能(计数、集合)简化过滤和 NAT,面向普通用户
性能较高,但随规则增多变慢优化性能,适合复杂规则依赖后端(nftables/iptables)

二、安装确认

  1. 确认是否安装ufw,新系统一般会默认安装,但不一定启用。

    dpkg -l | grep ufw
    
    ii  ufw     0.36.1-4ubuntu0.1      all    program for managing a Netfilter firewall
    
  2. 确认是否安装iptables,一般会默认安装。

    dpkg -l | grep iptables
    
    ii  iptables     1.8.7-1ubuntu5.2      amd64    administration tools for packet filtering and NAT
    
  3. 确认是否安装nftables,新系统一般会默认安装,但不一定启用。

    dpkg -l | grep nftables
    
    ii  libnftables1:amd64   1.0.2-1ubuntu3     amd64     Netfilter nftables high level userspace API library
    ii  libnftnl11:amd64     1.2.1-1build1      amd64     Netfilter nftables userspace API library
    ii  nftables             1.0.2-1ubuntu3     amd64     Program to control packet filtering rules by Netfilter project
    

三、服务状态

  1. 检查 ufw 服务,输出状态activeinactive,分别表示活动与不活动。
    sudo ufw status verbose
    
  2. 检查 nftables 服务,同样可以输出activeinactive状态。
    sudo systemctl status nftables
    
    状态输出

四、规则检查

  1. 查看 iptables 规则

    sudo iptables -L -v -n
    
  2. 查看 nftables 规则

    sudo nft list ruleset
    

小结

以上内容仅作为防火墙工具的简单总结,并不涉及某种工具的具体使用方法,如有其他问题,欢迎在评论区讨论,谢谢!!

http://www.xdnf.cn/news/2022.html

相关文章:

  • 实战!银河麒麟 KYSEC 安全中心执行控制高级配置指南
  • 苹果新规生效:即日起不再接受iOS 17 SDK编译的应用提交
  • BEVPoolv2:A Cutting-edge Implementation of BEVDet Toward Deployment
  • 16.ArkUI Toggle的介绍和使用
  • UML 活动图详解之网络媒体教学系统活动图分析
  • Memcached 主主复制架构搭建与 Keepalived 高可用实现
  • OpenCV 图形API(64)图像结构分析和形状描述符------在图像中查找轮廓函数findContours()
  • vue2实现Blod文件流下载
  • 使用ACME给动态域名下的Synology NAS免费申请SSL证书(无需开放80/443端口)
  • Docker拉取镜像代理配置实践与经验分享
  • 「Java EE开发指南」如何使用MyEclipse的可视化JSF编辑器设计JSP?(一)
  • SQLAlchemy 2.x 异步查询方法比较
  • Android 14 修改侧滑手势动画效果
  • xfce桌面汉化设置
  • 【防火墙 pfsense】2配置
  • 豆瓣图书数据采集与可视化分析(三)- 豆瓣图书数据统计分析
  • OSPF网络协议
  • Antd Modal Drawer 更改默认项
  • WSL 安装过程整理
  • 应用在物联网设备的爱普生可编程晶振SG-8018CA
  • Redis是单线程的,如何提高多核CPU的利用率?
  • 大学IP广播系统解决方案:构建数字化智慧化大学校园IP广播平台
  • 【含文档+PPT+源码】基于微信小程序的校园快递平台
  • HTML 模板技术与服务端渲染
  • 京东平台关键字搜索接口开发指南:Python实现与代码详解
  • PicoVR眼镜在XR融合现实显示模式下无法显示粒子问题
  • 大模型扫盲之推理性能指标全面详解
  • linux系统问题杂谈
  • Framework模块编译脚本利器
  • KafkaSpark-Streaming