Linux环境(Ubuntu)上的防火墙工具使用方法

目录

概述

1 防火墙工具(ufw)

1.1 安装防火墙工具:

1.2 操作防火墙相关命令

2 ufw操作命令的范例

2.1 打开/关闭防火墙

2.1.1 打开防火墙

2.1.2 关闭防火墙

2.1.3 查询当前防火墙状态

2.1.4 允许选择的端口访问

2.1.5 允许选择固定IP访问

3 iptables工具使用

3.1 安装iptables

3.2 iptables使用范例


概述

本文介绍两款防火墙工具(ufw 和iptables )的相关知识,并在ubuntu linux 环境中安装安装这两款软件,还使用具体的案例来介绍其命令的使用方法。

1 防火墙工具(ufw)

ufw(Uncomplicated Firewall)是一个简单易用的防火墙配置工具,它是一个基于命令行的工具,用于管理Linux操作系统上的防火墙规则。ufw是一个前端应用程序,用于配置iptables规则,并且提供了一些简化的语法和命令,使它更容易使用和理解。

使用ufw,您可以轻松地配置和管理防火墙规则,包括允许或拒绝特定端口、IP地址或一组IP地址的访问。它还可以设置默认策略,指定默认允许或拒绝所有入站和出站连接。ufw还支持应用程序规则,可以根据应用程序名称允许或拒绝特定应用程序的网络连接。

ufw的语法简单且易于记忆,使得即使对于没有网络安全经验的用户也可以轻松地配置和管理防火墙规则。它还可以与其他防火墙管理工具和服务一起使用,如FirewallD、Fail2ban等。

ufw是一个简单易用的防火墙配置工具,可以帮助用户保护其系统免受未经授权访问和网络攻击。

1.1 安装防火墙工具:

sudo apt update
sudo apt install ufw

1.2 操作防火墙相关命令

和ufw相关的命令功能介绍如下:

命令功能介绍
sudo ufw enable/disable打开/关闭防火墙
sudo ufw reload重启防火墙
sudo ufw reset重置所有规则 (先前有配置则不能进行改操作
sudo ufw status查看已经定义的ufw规则
sudo ufw default allow/deny外来访问默认允许/拒绝
sudo ufw allow/deny 22允许/拒绝访问22端口,22后可跟/tcp或/udp,表示tcp或udp封包。
sudo ufw allow from 192.168.1.100允许此IP访问所有的本机端口
sudo ufw allow proto tcp from 192.168.1.0/24 to any port 22允许自192.168.1.0/24的tcp封包访问本机的22端口。
sudo ufw deny smtp禁止外部访问smtp服务
sudo ufw delete allow/deny 22删除以前定义的"允许/拒绝访问22端口"的规则
sudo ufw delete allow smtpsmtp 删除上面建立的某条规则
sudo ufw deny proto tcp to any port 80阻止本机用tcp协议在80端口发数据
sudo ufw allow proto tcp from any to any port 80,443,8080:8090ufw可以连续例举端口号。端口号间必须使用逗号或分号,不能使用空格。“输入端口号”字符数最多不能超过15过(8080:8090算两个字符)。比如允许80,443,8080~8090这几个端口接受tcp传入连接
sudo ufw allow 7100:7200/tcp端口范围

2 ufw操作命令的范例

2.1 打开/关闭防火墙

2.1.1 打开防火墙

使用ufw enable/disable实现打开或者关闭防火墙

sudo ufw enable

打开防火墙后,导致ssh 端口也会被屏蔽

2.1.2 关闭防火墙

使用命令:

sudo ufw disable

执行命令后,防火墙已经被关闭:

2.1.3 查询当前防火墙状态

使用命令:

sudo ufw status

执行命令后,防火墙已经被关闭:

2.1.4 允许选择的端口访问

使用命令:

sudo ufw allow 1883

执行命令后,看见如下信息,说明该端口已经被使能:

2.1.5 允许选择固定IP访问

使用命令:

sudo ufw allow proto tcp from 192.168.1.0/24 to any port 22
​
 

执行命令后,看见如下信息,说明该这些IP已经被使能:

3 iptables工具使用

iptables是一个用于Linux操作系统的防火墙工具。它可以配置、管理和操作Linux内核中的网络数据包过滤规则。iptables允许用户定义规则来过滤、转发、修改和丢弃网络数据包,以实现网络安全和数据包管理。

iptables具有强大的功能和灵活的规则配置选项,可以根据IP地址、端口号、协议、连接状态等多个因素来过滤和处理网络数据包。它可以用于阻止未经授权的访问、保护网络服务免受攻击、网络流量控制、NAT转换等。

iptables规则由一系列的规则链组成,每个规则链包含一组规则。数据包在通过防火墙时会按照规则链的顺序逐个匹配规则,并根据规则的动作来处理数据包(接受、拒绝、转发或修改)。iptables还支持网络地址转换(NAT)功能,可以将内部IP地址转换为外部IP地址。

iptables是Linux中最常用的防火墙工具之一,几乎所有的Linux发行版都默认安装了它。它的灵活性和可定制性使其成为网络管理员和系统管理员的首选工具之一,用来保护和管理网络安全。

3.1 安装iptables

使用命令:

sudo apt-get install iptables

执行命令后:

3.2 iptables使用范例

范例注释
whereis iptables检查是否安装了iptables
iptables -L -n查看iptables现有规则
iptables -P INPUT ACCEPT先允许所有IP访问
iptables -F清空所有默认规则
iptables -X清空所有自定义规则
iptables -Z所有计数器归0
iptables -A INPUT -i lo -j ACCEPT允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT开放22(SSH)端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT开放21端口(FTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT开放443端口(HTTPS)
iptables -A INPUT -p tcp --dport 1883 -j ACCEPT开放1883端口(mqtt)
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT允许ping
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
iptables -P INPUT DROP其他入站一律丢弃
iptables -P OUTPUT ACCEPT所有出站一律允许
iptables -P FORWARD DROP所有转发一律丢弃
iptables -A INPUT -p tcp -s 192.111.178.111 -j ACCEPT添加内网ip信任(接受其所有TCP请求)
iptables -P INPUT DROP过滤所有非以上规则的请求
iptables -I INPUT -s { ip} -j DROP要封停一个IP
iptables -D INPUT -s { ip} -j DROP要解封一个IP
service iptables save保存规则

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

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

相关文章

【数据结构】线性表的定义及基本操作

文章目录 前言线性表的定义线性表的基本操作基本操作其他常用操作 总结 前言 数据结构的三要素是逻辑结构、数据的运算、存储结构(物理结构),存储结构不同,运算的实现方式也不同。 本次文章包括线性表的定义和基本操作&#xff0…

java零基础入门-map(上)

一、教学目标 掌握何为map能够说出map集合的特点。能够使用map集合添加元素、删除元素等伴生方法。 二、正文 1、概述 说起map,想必大家并不陌生吧。之前我在讲Collection集合的时候,我是给大家提过一嘴,我说Collection集合被称为单列集合…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的人群密度检测系统(深度学习模型+UI界面+训练数据集)

摘要:开发人群密度检测系统对于公共安全等领域具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个人群密度检测系统,并提供了完整的实现代码。该系统基于强大的YOLOv8算法,并对比了YOLOv7、YOLOv6、YOLOv5,展示了不同模型…

07-java基础-锁之AQSReentrantLockBlockingQueueCountDownLatchSemapho

文章目录 0:AQS简介-常见面试题AQS具备特性state表示资源的可用状态AQS定义两种资源共享方式AQS定义两种队列自定义同步器实现时主要实现以下几种方法:同步等待队列条件等待队列 1:AQS应用之ReentrantLockReentrantLock如何实现synchronized不…

uniapp相关内容

一、设置uni原生事件类型 示例&#xff1a;获取手机号事件类型为 UniHelper.ButtonOnGetphonenumber 格式为&#xff1a;UniHelper.组件名事件名 const getphonenumber: UniHelper.ButtonOnGetphonenumber (detail) > {console.log(detail) } <button class"…

【小程序】API能力集成指南——子设备API汇总(一)

ty.device.getSubDeviceInfoList 获取子设备信息 需引入DeviceKit&#xff0c;且在>1.2.6版本才可使用 参数 Object object 属性类型默认值必填说明meshIdstring是网关设备 id 或上级节点 idcompletefunction否接口调用结束的回调函数&#xff08;调用成功、失败都会执行…

[linux] pip install -e . 和 pip install -e “.[train]“分别是什么意思

pip install -e . 和 pip install -e ".[train]" 都是 Python 包管理工具 pip 的安装命令&#xff0c;它们用于安装一个以“可编辑”模式的本地项目。这里的“可编辑”模式意味着项目被安装到当前环境中&#xff0c;但是它链接到你实际代码所在的位置&#xff0c;这样…

oracle临时表空间不释放

项目报错 nested exception is java.sql.SQLException: ORA-01652: unable to extend temp segment by 128 in tablespace TEMP 原因是临时表空间满了&#xff0c;临时表空间一直增长&#xff0c;未释放导致临时表空间使用率100%。 查询临时表空间使用率 --临时表空间利用率…

拓扑排序 很简单

原文链接&#xff1a;图论第四讲&#xff1a;拓扑排序 说明&#xff1a;CSDN和公众号文章同步发布&#xff0c;需要第一时间收到最新内容&#xff0c;请关注公众号【比特正传】。 之前的图论合集文章中讲了图的存储遍历、最短路等算法&#xff0c;文章链接如下 图论第一讲&am…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《考虑碳捕集机组与氢储能系统协调运行的源荷储低碳经济调度》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

Redis监控命令和指标介绍

Redis监控的重要性 Redis监控的重要性体现在以下几个核心方面&#xff1a; 性能瓶颈发现与优化&#xff1a; 监控Redis的响应时间、QPS&#xff08;每秒查询率&#xff09;、吞吐量等性能指标&#xff0c;可以及时识别出系统在处理请求时是否存在性能瓶颈&#xff0c;比如某…

AI新工具(20240312) Midjourney官方发布角色一致性功能;免费且开源的简历制作工具;精确克隆语调、控制声音风格

1: Midjourney角色一致性功能 使人物画像在多方面高度一致成为可能。 Midjourney的角色一致性功能的使用方法如下&#xff1a; ⭐在你的输入指令后面加上 --cref URL&#xff0c;其中URL是你选择的角色图像的链接。 ⭐你可以通过 --cw 参数来调整参照的强度&#xff0c;范围…

力扣- 704. 二分查找

二分查找 给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], target 9 输出: 4 解释…

python如何读取文件

这里的文件是txt文件&#xff0c;office文件不支持。 假如有一个pi_digits的txt文件&#xff0c;里面的内容是“3.1415926” 如果要读取这个文件的内容&#xff0c;需要调取pathlib模块&#xff0c;并把路径告知python。同时python文件必须要和目标读取文件在一个文件夹里。 …

springboot集成Quartz定时任务组件

文章目录 前言一、Quartz 是什么&#xff1f;下面是对 Java 中 Quartz 的主要概念的简单描述&#xff1a; 二、使用步骤总结 前言 平时开发中相信大家都经常用到定时任务吧&#xff0c;最近简单的就是直接使用Scheduled注解标注到方法上用注解的方式在项目运行时无法去对任务进…

【WEEK2】Learning Objectives and Summaries【SpringMVC】【English Version】

Learning Objectives: Getting Started with SpringMVC in Three Weeks - Week 2 Learning Content: Reference video tutorials【狂神说Java】SpringMVC最新教程IDEA版通俗易懂Using annotations to complete the MVC programControllerRestFul styleResult Jumping StyleDa…

剑指offer经典题目整理(四)

一、树的子结构 1.链接 树的子结构_牛客题霸_牛客网 (nowcoder.com) 2.描述 给两颗二叉树A B&#xff0c;判断B是不是A的子结构 3.思路 将问题拆解开来&#xff0c;首先是找到a树中子结构的位置&#xff0c;然后是判断是否相同&#xff0c;也就是说&#xff0c;我们需要去…

interFoam-UEqn.H/pEqn.H

压力方程 “pEqn.H” {volScalarField rAU("rAU", 1.0/UEqn.A()); // rAU:在速度方程的的最后一个解中&#xff0c;矩阵对角项系数的倒数surfaceScalarField rAUf("rAUf", fvc::interpolate(rAU)); //转换为表面标量场volVectorField HbyA(con…

36+程序员3站考研:国家线轻松拿捏

基本情况是&#xff1a;年龄较大&#xff0c;比36还大&#xff0c;本科是自考&#xff0c;十几年来一直从事编程相关工作。 第一年考数学太慌了&#xff0c;选择题全蒙的&#xff0c;结果填空题一道没算对&#xff0c;大题全不会&#xff0c;所以尽管总分280多但是数学没过国家…

java Lambda表达式如何支持静态方法引用

java Lambda表达式如何支持静态方法引用 在Java中&#xff0c;Lambda表达式支持静态方法引用&#xff0c;允许你直接使用静态方法作为Lambda表达式的实现。静态方法引用使用类名和方法名来引用静态方法。 下面是一个简单的示例&#xff0c;展示了如何在Lambda表达式中使用静态…