前言

因公司项目的需求,需要对客户端机器简便使用防火墙的功能,所以可在页面进行简便设置防护墙规则,当然,这个功能需求放到我手上我才有机会学到。因为客户端机器都是ubuntu的,所以当然用了ubuntu特有且简便的防火墙设置规则,那就是ufw,文章以ubuntu16.04为准,其它版本的用法应该也差不太多。本文着重介绍其常用的用法,至于其他的用法那就要等各位小伙伴再自行研究了。

wiki

UFW 全称为Uncomplicated Firewall,是Ubuntu 系统上默认的防火墙组件, 为了轻量化配置iptables 而开发的一款工具。 UFW 提供一个非常友好的界面用于创建基于IPV4,IPV6的防火墙规则。

# ufw使用教程
使用ufw的命令必须有管理员权限才可运行,没有的话就要sudo一下了,不过要注意安全,不能瞎搞哈。。。

开启和禁用

# ufw enable //开启防火墙
# ufw disable //禁用防火墙
# ufw reset //重置防火墙,会把你所有已添加的规则全部删除,并且禁用防火墙

可以使用以下命令查看ufw防火墙的状态

# ufw status
// 没开启是这个样子的
Status: inactive //开启后是这样子的
Status: active
... // 如果你添加了防火墙规则下面这里就会显示

设置默认的防火墙规则,默认为允许,就是说什么玩意都允许你连进来。

# ufw default allow|deny  //设置默认规则
allow : 允许
deny : 拒绝

协议规则

协议规则就是有关于协议的一些防火墙规则。

ufw [delete] [insert NUM]  allow|deny [in|out]  [PORT[/PROTOCOL] ]  [comment COMMENT]

delete : 删除这个规则
insert : Num代表你要插入到防火墙规则的那个位置,规则是有序排列的。会根据需要来一个个检查
allow|deny : 这条规则是允许的还是禁用的
in|out: 这条规则对发送还是接收数据生效
PORT: 端口号
protocol : 协议,例如TCP还是UDP
comment : 注释
...

添加一条允许ssh的规则(ssh的端口号是22,协议是TCP),并且插入到位置2

# ufw insert 2 allow in 22/tcp

禁用22端口连入

# ufw deny in 22

ip规则

ip规则里面可以包含端口号和协议,反过来则不行。

ufw  [delete]  [insert  NUM]  allow|deny  [in|out  [on INTERFACE]] [proto PROTOCOL]
[from ADDRESS [port PORT]] [to ADDRESS [port PORT]] [comment COMMENT] INTERFACE :网卡,就是针对哪个网卡生效,可以使用ifconfig或ip addr查看你的网卡
form ADDRESS : 源IP地址
to ADDRESS : 目标IP地址
PORT : 跟在源IP地址后面就是源IP地址的端口号,反之则是目标IP地址的端口号
其他的都和协议规则的一致

添加允许192.168.0.2 的22端口tcp协议(ssh)的规则

# ufw allow proto tcp from 192.168.0.2 port 22

若你的系统上有帮他人进行转发信息的进程,那么你可以允许来自某个源IP地址发送信息到某个目标地址,例:允许源IP地址192.168.0.2的8088端口 发送到 目标地址192.162.0.2的8080端口

# ufw allow from 192.168.0.2 port 80 to 192.168.0.2 port 8080

删除规则

删除规则分两种,一种是根据规则的内容删除,一种是根据序号删除

方式一

刚才添加规则的命令前面添加delete参数,例:

# ufw allow 22/tcp //添加一条允许ssh的规则
# ufw delete allow 22/tcp //删除ssh规则

方式二

根据序号删除,怎么知道规则的序号呢?使用ufw status numbered

# ufw status numbered //查
Status: active To Action From
-- ------ ----
[ 1] 22 ALLOW IN Anywhere

我需要删除第一条规则

# ufw delete 1 //这样就是删除第一条规则啦

推荐设置

# ufw enbale //开启防火墙
# ufw alllow ssh // 添加ssh的规则,这是简写规则
# ufw default deny //设置默认为禁用,但是我们已经添加了ssh规则,就不担心。
后面这里你们就可以自己搞事情啦!
...

好了,以上讲的都是比较基本的用法,想要深入了解的话可以自行到官网上看看,后面会出一章关于iptables的防火墙规则,ufw就是基于iptables上进行封装的,iptables适用于所有Linux系统哦,不单单是只有Ubuntu了。这篇文章到此结束,感谢各位小伙伴的阅读,Thanks♪(・ω・)ノ

个人博客网址: https://colablog.cn/

如果我的文章帮助到您,可以关注我的微信公众号,第一时间分享文章给您

ubuntu防火墙规则之ufw的更多相关文章

  1. Ubuntu防火墙 UFW 设置

    Ubuntu防火墙 UFW 设置 1.安装 sudo apt-get install ufw 2.启用 sudo ufw enable sudo ufw default deny 运行以上两条命令后, ...

  2. Ubuntu防火墙ufw安装配置

    ubuntu 系统默认已安装ufw. 1.安装sudo apt-get install ufw2.启用sudo ufw enablesudo ufw default deny运行以上两条命令后,开启了 ...

  3. Ubuntu中保存iptables防火墙规则

    Ubuntu中保存iptables防火墙规则的例子 打开防火墙 ufw disableufw statusufw enable ufw allow 22/tcp ufw reload iptables ...

  4. ubuntu防火墙ufw使用教程

    查看ubuntu版本cat /etc/issue或者lsb_release -a 防火墙 由于Linux原始的防火墙工具iptables过于繁琐,所以ubuntu默认提供了一个基于iptable之上的 ...

  5. Ubuntu 防火墙常用配置操作(ufw)【适用于 Debian 及其衍生版---Linux Mint、Deepin 等】-转

    Ubuntu 防火墙常用配置操作(ufw)[适用于 Debian 及其衍生版---Linux Mint.Deepin 等] 点击访问

  6. 开启/关闭ubuntu防火墙

    LInux原始的防火墙工具iptables由于过于繁琐,所以ubuntu系统默认提供了一个基于iptable之上的防火墙工具ufw.而UFW支持图形界面操作,只需在命令行运行ufw命令即能看到一系列的 ...

  7. Linux 命令详解(十三)如何启动、关闭和设置ubuntu防火墙

    sudo  ufw enable|disable 由于LInux原始的防火墙工具iptables过于繁琐,所以ubuntu默认提供了一个基于iptable之上的防火墙工具ufw. ubuntu 9.1 ...

  8. Ubuntu防火墙配置

    转载自:http://blog.csdn.net/sumer0922/article/details/7485584Ubuntu11.04默认的是UFW(ufw 即uncomplicated fire ...

  9. [转载]ubuntu防火墙设置

    原文地址:ubuntu防火墙设置作者:風飏    自打2.4版本以后的Linux内核中, 提供了一个非常优秀的防火墙工具.这个工具可以对出入服务的网络数据进行分割.过滤.转发等等细微的控制,进而实现诸 ...

随机推荐

  1. C# 异步转同步 TaskCompletionSource

    本文通过TaskCompletionSource,实现异步转同步 首先有一个异步方法,如下异步任务延时2秒后,返回一个结果 private static async Task<string> ...

  2. CRISP-DM--数据挖掘标准流程

    CRISP-DM--数据挖掘标准流程 在1996年的时候,SPSS,戴姆勒-克莱斯勒和NCR公司发起共同成立了一个兴趣小组,目的是为了建立数据挖掘方法和过程的标准.并在1999年正式提炼出了CRISP ...

  3. STM32 HAL库学习系列第7篇---定时器TIM 输入捕获功能

    测量脉冲宽度或者测量频率   基本方法 1.设置TIM2 CH1为输入捕获功能:  2.设置上升沿捕获:  3.使能TIM2 CH1捕获功能:  4.捕获到上升沿后,存入capture_buf[0], ...

  4. springboot集成mockito与powermock

      mockito大家都比较熟悉了,存在或者不存在,都不要紧,mockito让你有一种只要一出手,就知道有没有的感觉.但是它也不是万能的,比如静态方法.私有方法,它就无能为力了.这是为什么呢?当然不是 ...

  5. Js笛卡尔乘积

    self.getDescartesSku = function (selSaleProp, i, nowLst, allALst) {         if (selSaleProp.length = ...

  6. 如何使用 Docker 安装 Jenkins

    说在前面 本篇内容非常简单,仅讲述了如何快速在 Docker 上部署一个 Jenkins 实例,不涉及其他. 本文实验环境: 操作系统:Centos 7.5 Docker Version:18.09. ...

  7. 生产追溯系统-Raspberry Pi帮助我们节省大量硬件成本,助力信息化建设

    初识 Raspberry Pi 竟然有这么小的电脑主机?只有手掌这么大?电源线竟然跟手机数据线一样?当我第一次看到Raspberry Pi的时候,在脑海中产生了一连串的疑问,带着这些疑问逐渐开始研究这 ...

  8. POJ 3692:Kindergarten(二分图最大团)

    题目链接 题意 已知班级有g个女孩和b个男孩,所有女生之间都相互认识,所有男生之间也相互认识,给出m对关系表示哪个女孩与哪个男孩认识.现在要选择一些学生来组成一个集合,使得里面所有人都认识,求此集合最 ...

  9. Django项目的创建和管理

    1.主题 这部分教程主要介绍如何通过Pycharm创建.管理.运行一个Django工程.对于Django模块的相关知识大家可以参考Python社区. 2.准备环境 Django版本为2.0或更高 Py ...

  10. kindeditor在线文本编辑器过滤HTML的方法

    在使用kindeditor文本编辑器时遇到的问题,客户直接从Excel里粘贴文本内容到文本编辑器中(能不能再懒一些),然后不调整粘贴内容直接就保存(你敢不敢再懒一些)!对于这种很无语的行径,我只能对他 ...