Linux一些防火墙实战知识

简介: 本文介绍了如何在Linux中设置防火墙和开放端口,以提高服务器的安全性。首先,使用firewalld作为防火墙软件包,并确保firewalld服务正在运行。然后,通过添加服务来定义允许的服务端口,可以使用firewall-cmd命令查看当前已定义的服务,并使用firewall-cmd命令添加服务。添加规则后,需要重新加载firewalld配置以使更改生效。在某些情况下,需要打开特定的端口,例如HTTP端口80和HTTPS端口443。可以使用firewall-cmd命令打开端口,并将规则添加到相应的区域。。。确实都是工作中日常中会用到的一些命令

Linux作为一种流行的操作系统,其安全性一直是备受关注的话题。在实践中,设置防火墙和开放端口是保护Linux服务器安全的关键步骤。本文将介绍如何通过实战操作在Linux中设置防火墙和开放端口。

设置防火墙

在Linux中,常用的防火墙软件包括iptables和firewalld。在本文中,我们将使用firewalld。

首先,检查firewalld服务是否在运行中。运行以下命令:

systemctl status firewalld

如果没有,则输入以下命令启动它:

systemctl start firewalld

添加服务

接下来,我们需要定义允许的服务端口。可以检查firewalld默认配置设置,然后为需要开放的端口添加服务。

你可以使用以下命令查看当前已定义的服务:

firewall-cmd --list-services

要添加一个服务,请使用以下命令:

firewall-cmd --add-service=服务名 --permanent

【注意】:在每个服务名之后,必须使用' --permanent'选项将该服务配置写入永久规则集。

例如,要为SSH服务添加端口22,请使用以下命令:

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

添加规则后,重新加载firewalld配置以使更改生效:

firewall-cmd --reload

现在,你的防火墙已设置并保护了Linux服务器。

开放端口

在某些情况下,我们需要在Linux服务器上打开特定的端口。例如,如果你需要在Linux服务器上运行Web服务器,则必须在服务器的防火墙保护下打开HTTP端口80和HTTPS端口443。

要打开一个端口,可以输入以下命令:

firewall-cmd --zone=public --add-port=端口号/tcp --permanent

例如,要打开端口80并以永久规则添加到防火墙,请运行以下命令:

firewall-cmd --zone=public --add-port=80/tcp --permanent

同样,在完成开放端口配置后,你需要重新加载firewalld配置以使更改生效:

firewall-cmd --reload

【提示】:在示例中,我们将防火墙规则添加到'public'区域。你还可以将规则添加到其他区域,例如'internal'、'external'或'work'.

如果你需要检查已打开的端口,请运行以下命令:

firewall-cmd --zone=public --list-ports

针对某个IP

此时需要采用到富规则,如下:

firewall-cmd --zone=public --add-rich-rule 'rule family="ipv4" source address="XX.XX.XX.XX" accept' --permanent

添加之后需要重启生效:

firewall-cmd  --reload

针对某个IP的某个端口

此时需要采用到富规则,如下:

firewall-cmd --permanent --add-rich-rule="rulefamily="ipv4" source
address="XX.XX.XX.XX" portprotocol="tcp" port="6379" accept"

添加之后需要重启生效:

firewall-cmd  --reload

针对一个ip段访问

此时需要采用到富规则,如下:

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source
address="XX.XX.XX.XX/16" accept"

添加之后需要重启生效:

firewall-cmd  --reload

针对一个ip段的某个端口

此时需要采用到富规则,如下:

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source
address="xx.xx.xx.xx/24" port protocol="tcp" port="9200" accept"

添加之后需要重启生效:

firewall-cmd  --reload

查看防火墙现有配置

firewall-cmd --list-all

获取所有支持的服务:

firewall-cmd --get-services
相关文章
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
4589 77
|
关系型数据库 MySQL 应用服务中间件
Linux 手动安装快速部署 LNMP 环境实战
本文详细记录了在阿里云ECS上手动搭建LNMP环境的过程,系统选用Ubuntu 24.04。主要内容包括:1) 使用`apt`安装Nginx和MySQL,并更新软件源;2) 编译安装PHP 8.4.5,配置PHP-FPM及环境路径;3) 配置MySQL root用户密码;4) 调整Nginx支持PHP解析并测试整体环境。通过此过程,重现手动配置服务器的细节,帮助熟悉各组件的安装与协同工作。
976 23
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
586 73
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
578 1
|
SQL 负载均衡 安全
安全至上:Web应用防火墙技术深度剖析与实战
【10月更文挑战第29天】在数字化时代,Web应用防火墙(WAF)成为保护Web应用免受攻击的关键技术。本文深入解析WAF的工作原理和核心组件,如Envoy和Coraza,并提供实战指南,涵盖动态加载规则、集成威胁情报、高可用性配置等内容,帮助开发者和安全专家构建更安全的Web环境。
552 1
|
监控 Linux Shell
30 个实用的 Linux 命令贴与技巧,提升你的效率(附实战案例)
本文介绍了30个实用的Linux命令及其应用场景,帮助你提升命令行操作效率。涵盖返回目录、重新执行命令、查看磁盘使用情况、查找文件、进程管理、网络状态监控、定时任务设置等功能,适合各水平的Linux用户学习和参考。
1185 15
|
存储 运维 Linux
Linux防火墙firewall的使用
CentOS 7 中的 firewalld 是基于 Netfilter 的防火墙服务,支持动态配置,无需重启服务即可生效。它通过区域管理网络流量,每个区域可以设置不同的防火墙规则。默认区域为 public,可以通过命令行工具 firewall-cmd 进行管理和配置。firewalld 提供了丰富的预定义服务和区域,方便用户根据需求进行灵活配置。
360 0
|
Linux 网络安全
linux关闭方防火墙的命令
linux关闭方防火墙的命令
340 2
|
Linux Shell Unix
带你读《Linux实战》之一:欢迎使用Linux
你正在期望学习管理Linux计算机吗?这是一个很好的选择。虽然Linux常常驻留于消费者的桌面计算机上,但它同时也是服务器领域的绝对主宰,特别是虚拟服务器和云服务器。如果你打算管理当前引人关注的服务器和网络体系架构,你将不得不围绕Linux的命令行展开学习。除了第1章之外,本书的每一章都包括一个或两个实际项目。鉴于第1章的内容主要用来填补你的Linux知识体系中可能存在的基础知识空白,因此其组织形式与其他章节有所不同。