centos7防火墙配置

news2024/10/6 21:24:30

CentOS 7默认使用的是firewall作为防火墙。
下面介绍一些防火墙常用的命令

1.firewalld/基本介绍

        Centos7开始已经放弃iptables,转而使用firewalld。从本质意义上讲,iptables和firewalld是防火墙软件,其实现方式都是调用内核Netfilter。firewalld提供了一个动态管理的防火墙,形成网络“zones”规则集,具备支持ipv4和ipv6的能力。firewalld程序提供了图形化的配置工具firewall-confighe、system-config-firewall和命令行firewall-cmd,用于配置firewalld永久性或非永久性规则。

2.firewalld/服务配置

        firewall-cmd命令需要firewalld进程处于运行状态。我们可以使用systemctl status/start/stop/restart firewalld来控制这个守护进程。firewalld进程为防火墙提供服务。

当我们修改了某些配置之后(尤其是配置文件的修改),firewall并不会立即生效。可以通过两种方式来激活最新配置systemctl restart firewalld和firewall-cmd --reload两种方式,前一种是重启firewalld服务,建议使用后一种“重载配置文件”。重载配置文件之后不会断掉正在连接的tcp会话,而重启服务则会断开tcp会话。

  1. 启动服务:systemctl start firewalld
  2. 关闭服务:systemctl stop firewalld
  3. 重启服务:systemctl restart firewalld
  4. 查看服务状态:systemctl status firewalld
  5. 开机自启服务:systemctl enable firewalld
  6. 开机禁用服务:systemctl disable firewalld
  7. 查看是否开机自启:systemctl is-enable firewalld

3.firewalld/端口or服务规则配置

        可以通过两种方式控制端口的开放,一种是指定端口号另一种是指定服务名。虽然开放http服务就是开放了80端口,但是还是不能通过端口号来关闭,也就是说通过指定服务名开放的就要通过指定服务名关闭;通过指定端口号开放的就要通过指定端口号关闭。还有一个要注意的就是指定端口的时候一定要指定是什么协议,tcp还是udp。知道这个之后以后就不用每次先关防火墙了,可以让防火墙真正的生效。

  1. 开放mysql端口:firewall-cmd --add-service=mysql 
  2. 阻止http端口:firewall-cmd --remove-service=http 
  3. 查看开放的服务:firewall-cmd --list-services  
  4. 添加端口:firewall-cmd --add-port=80/tcp --permanent
  5. 移除端口:firewall-cmd --remove-port=80/tcp --permanent
  6. 查看端口状态:firewall-cmd --zone=public --query-port=80/tcp
  7. 查看所有打开的端口:firewall-cmd --list-ports
  8. 查看所有规则:firewall-cmd --list-all
  9. 重载规则:firewall-cmd --reload
  10. 查看区域信息:firewall-cmd --get-active-zones
  11. 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=enp4s0
  12. 拒绝所有包:firewall-cmd --panic-on
  13. 取消拒绝所有包: firewall-cmd --panic-off
  14. 查看是否拒绝: firewall-cmd --query-panic

PS:添加或删除端口后不会立即生效,配置完 --reload后才能生效;--permanent代表永久生效

4.firewalld/端口转发

        端口转发可以将指定地址访问指定的端口时,将流量转发至指定地址的指定端口。转发的目的如果不指定ip的话就默认为本机,如果指定了ip却没指定端口,则默认使用来源端口。当我们想把某个端口隐藏起来的时候,就可以在防火墙上阻止那个端口访问,然后再开一个不规则的端口,之后配置防火墙的端口转发,将流量转发过去。端口转发还可以做流量分发,一个防火墙拖着好多台运行着不同服务的机器,然后用防火墙将不同端口的流量转发至不同机器。

  1. 开启防火墙伪装:firewall-cmd --add-masquerade --permanent    //开启后才能转发端口
  2. 关闭防火墙伪装:firewall-cmd --remove-masquerade --permanent
  3. 添加转发规则:firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.1 --permanent

如果配置好端口转发之后不能用,可以检查下面两个问题:

比如我将80端口转发至8080端口,首先检查本地的80端口和目标的8080端口是否开放监听了
其次检查是否允许伪装IP,没允许的话要开启伪装IP

示例:

# 将80端口的流量转发至8080

  • firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080

# 将80端口的流量转发至192.168.0.1

  • firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.0.1

# 将80端口的流量转发至192.168.0.1的8080端口

  • firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080

PS:此规则将本机80端口转发到192.168.1.1的8080端口上,配置完--reload才生效

如果配置完以上规则后仍不生效,检查防火墙是否开启80端口,如果80端口已开启,仍无法转发,可能是由于内核参数文件sysctl.conf未配置ip转发功能,具体配置如下:

vi /etc/sysctl.conf

在文本内容中添加:net.ipv4.ip_forward = 1

保存文件后,输入命令sysctl -p生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2192937.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Clio——麻省理工学院增强机器人场景理解算法

概述 机器人感知长期以来一直受到现实世界环境复杂性的挑战,通常需要固定设置和预定义对象。麻省理工学院的工程师 已经开发了Clio这项突破性的系统可以让机器人直观地理解并优先考虑周围环境中的相关元素,从而提高其高效执行任务的能力。 了解对更智…

【Python】Marmir 使用指南:Python 驱动的电子表格生成器

Marmir 是一个由 Python 驱动的电子表格生成工具,专门用于将 Python 数据结构(如字典、列表等)转换为电子表格文件(如 Excel)。Marmir 的设计目标是提供比传统电子表格库(如 xlwt)更强大和灵活的…

ctf.bugku-备份是个好习惯

访问页面得到字符串 这串字符串是重复的; d41d8cd98f00b204e9800998ecf8427e 从前端、源码上看,除了这段字符串,没有其他信息;尝试解密,长度32位;各种解密方式试试; MD5免费在线解密破解_MD5在…

文件后缀名不见了怎么办?

有一天,突然有需要更改文件的后缀名,可奇怪的是文件只有名称,后缀不见了,这该如何修改呢? 第一步:打开此电脑,最上面一栏选择“查看” 第二步:将“文件扩展名”勾选上 第三步&…

会议时如何实现扫码签到?

如何实现扫码签到? 在现代活动管理中,签到环节是不可或缺的一部分。它不仅关系到活动的顺利进行,还涉及到参与者的体验。传统的签到方式往往耗时且效率不高,而随着技术的发展,扫码签到成为了一种高效且便捷的解决方案。…

用小学生可以理解的语言讲一下什么是大模型

好的,用小学生的语言来说,大模型就像是一个超级聪明的机器人老师,它懂得很多东西,可以帮助我们做很多事情。 1. **懂得很多**:大模型知道很多知识,就像一个巨大的图书馆,里面有很多书&#xff0…

【星汇极客】单片机竞赛之2024睿抗机器人大赛-火线速递赛道(持续更新)

前言 本人是一名嵌入式学习者,在大学期间也参加了不少的竞赛并获奖,包括但不限于:江苏省电子设计竞赛省一、睿抗机器人国二、中国高校智能机器人国二、嵌入式设计竞赛国三、光电设计竞赛国三、节能减排竞赛国三。 后面会经常写一下博客&…

归并排序:递归、非递归实现、文件排序(归并排序实现)

目录 归并排序递归实现 1.归并排序基本思想 2.归并排序单趟思路 3.代码思路步骤 3.1.归并排序实现思路步骤 3.2.总结 3.2.1.数组归并与链表归并的差异 (1)数组归并 (2)链表归并 (3)总结 3.2.2.归并排序的递归实现总结 4.归并排序递归实现代码 5.归并排序递归递归展…

用AI做电子萌宠,快速涨粉变现

今天给大家分享一个很热门的小副业—AI宠物视频 项目介绍 前一阵刷到一个萌宠账号,爆款率可真高,涨粉可真快呀。 28篇笔记涨粉3.2万,点赞更是达到了十几万。其中有6篇点赞上万。 至于究竟是不是AI其实没那么重要,重要的是&…

华为OD机试 - Excel单元格数值统计(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,…

安可数据库产品目录

‌国家安可数据库产品目录包括以下主要产品‌: ‌华为GaussDB、openguass: 由华为云计算技术有限公司提供。‌金仓数据库管理系统:由中电科金仓(北京)科技股份有限公司提供。‌神通数据库管理系统:由天津神…

上学迟到问题

刚看到这题时&#xff0c;我突然就有了思路。说起来挺可笑的当我写完这题后&#xff0c;并成功AC时&#xff0c;看着我那冗长的代码我陷入了深思&#xff0c;难道真的有必要写这么一长串吗? 这是我的代码 #include<stdio.h> int main(){int s,v,t;scanf("%d %d&q…

ROW_NUMBER

How to rewrite a query which uses the ROW_NUMBER() window function in versions 5.7 or earlier before window functions were supported e.g., SELECT ROW_NUMBER() OVER (PARTITION BY fieldA) AS rownum, myTable.* FROM myTable; index 用不上的 Solution Assuming…

Linux高阶——0928—Github数据上传markdown语言

1、Github三要素 仓库、提交、分支 提交 绿色&#xff1a;新加 红色&#xff1a;删除 主分支master或main 项目的存储单位——仓库 实际代码的存储单位——分支 分支的协同开发 2、本地数据上传到云端的过程 3、markdown

OpenHarmony(鸿蒙南向开发)——轻量和小型系统三方库移植指南(一)

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ 持续更新中…… 概述 本文为OpenHarmony开发者提供一些组织编译形式比较常见&…

【C/C++】错题记录(四)

题目一 一个函数可以有很多个返回值&#xff08;有很多个return语句&#xff09;&#xff0c;但是最终只能有一个return语句执行。 题目二 题目三 题目四 题目五 程序数据结构算法 题目六 题目七 题目八 题目九 D选项是语句……

leetcode第189题:轮转数组(C语言版)

思路1&#xff08;不推荐&#xff09; 保存数组最后一个元素&#xff0c;然后数组全体元素后移一位&#xff0c;把保存的最后一个元素存放到数组的第一个位置&#xff0c;重复这一操作&#xff0c;直到执行完了k次。 时间复杂度&#xff1a;需要用k次循环&#xff0c;里面套一层…

【2024】前端学习笔记14-JavaScript常用数据类型-变量常量

学习笔记 1.JavaScript常用数据类型1.1.Number&#xff08;数字&#xff09;1.2.String&#xff08;字符串&#xff09;1.3.Boolean&#xff08;布尔值&#xff09;1.4.Null&#xff08;空值&#xff09;1.5.Undefined&#xff08;未定义&#xff09;1.6.Object&#xff08;对象…

从WIFI到NB-IoT,探秘智能门锁的高科技接入方式

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! Hello大家好!我是小米,一个29岁、活力满满、热爱分享技术的小米!今天,我想和大家聊聊一个与智能家居密切相关的技术话题——智能门锁的接入方式。无…

标准正态分布的数据 tensorflow 实现正态分布图,python 编程,数据分析和人工智能

import tensorflow as tf import matplotlib.pyplot as plt # 设置随机种子以获得可重复的结果 tf.random.set_seed(42) # 生成正态分布的数据 # mean0 和 stddev1 表示生成标准正态分布的数据 # shape(1000,) 表示生成1000个数据点 data tf.random.normal(mean0, stddev1, …