【Linux系列】Linux 防火墙的详细学习

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

        • [1. 防火墙基础概念](#1. 防火墙基础概念)
        • [2. Netfilter 和 iptables](#2. Netfilter 和 iptables)
        • [3. firewalld 介绍](#3. firewalld 介绍)
        • [4. 防火墙的配置方法](#4. 防火墙的配置方法)
          • [4.1 iptables 配置](#4.1 iptables 配置)
          • [4.2 firewalld 配置](#4.2 firewalld 配置)
        • [5. 实用技巧与注意事项](#5. 实用技巧与注意事项)

Linux 防火墙是保护系统免受未授权访问的关键工具,它通过一系列的规则控制数据包的流入、流出及转发行为。

1. 防火墙基础概念

防火墙是操作系统用于保护网络安全的核心组件。它通过设置规则,允许或拒绝网络数据包的传输。Linux 防火墙基于 Netfilter 框架实现,并提供两类主要工具:iptables现代封装工具firewalldUFW

2. Netfilter 和 iptables

Netfilter 是 Linux 2.4.x 之后新一代的 Linux 防火墙机制,是 linux 内核的一个子系统。它采用模块化设计,具有良好的可扩充性,提供扩展各种网络服务的结构化底层框架。Netfilter 与 IP 协议栈是无缝契合,并允许对数据报进行过滤、地址转换、处理等操作。

iptables 是由软件包 iptables 提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往 netfilter,告诉内核如何去处理信息包。

3. firewalld 介绍

firewalld 是 CentOS 默认的防火墙工具,它基于区域(zone)管理规则,可以动态修改防火墙配置,适合现代化的网络管理。firewalld 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具,支持 IPv4、IPv6 防火墙设置以及以太网桥。

4. 防火墙的配置方法
4.1 iptables 配置

iptables 的规则由四部分组成:链(如 INPUT, OUTPUT, FORWARD),条件(如:-p tcp --dport 80),以及动作(如:ACCEPT, DROP)。例如,允许所有进入 80 端口(HTTP 服务)的连接的规则如下:

bash 复制代码
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

保存规则并重启 iptables 服务:

bash 复制代码
sudo iptables-save > /etc/iptables/rules.v4
sudo systemctl restart iptables
4.2 firewalld 配置

firewalld 的使用更加直观。首先,确保 firewalld 服务正在运行:

bash 复制代码
sudo systemctl start firewalld
sudo systemctl enable firewalld

开放端口:

bash 复制代码
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
5. 实用技巧与注意事项
  • 定期检查和更新防火墙规则,以应对新出现的威胁和漏洞。
  • 理解不同区域(zone)和服务(service)的概念,以便更灵活地配置防火墙。
  • 使用 ufw 可以简化防火墙的配置过程,特别是在 Ubuntu/Debian 系统上。

觉得有用的话点个赞 👍🏻 呗。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

相关推荐
刘什么洋啊Zz3 分钟前
剖析IO原理和零拷贝机制
java·运维·网络
~kiss~4 分钟前
Rust学习~tokio简介
开发语言·学习·rust
升讯威在线客服系统27 分钟前
如何通过 Docker 在没有域名的情况下快速上线客服系统
java·运维·前端·python·docker·容器·.net
leoufung1 小时前
vim 多个关键字高亮插件介绍
linux·编辑器·vim
Karoku0662 小时前
【CI/CD】CI/CD环境搭建流程和持续集成环境配置
运维·ci/cd·docker·容器·kubernetes·prometheus
Nerd Nirvana4 小时前
软考—系统架构设计(案例 | 论文)
linux·系统架构·软件工程·软考·计算机基础
StickToForever5 小时前
第4章 信息系统架构(五)
经验分享·笔记·学习·职场和发展
勤奋的凯尔森同学6 小时前
webmin配置终端显示样式,模仿UbuntuDesktop终端
linux·运维·服务器·ubuntu·webmin
leegong231118 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql
Moonnnn.9 小时前
51单片机学习——动态数码管显示
笔记·嵌入式硬件·学习·51单片机