您现在的位置是: 首页 > 系统资讯 系统资讯

ubuntu防火墙设置_ubuntu18.04防火墙设置

tamoadmin 2024-10-18 人已围观

简介1.如何在Ubuntu中用UFW配置防火墙2.linux防火墙状态命令linux防火墙状态查看3.ubuntu防火墙在哪里看4.如何在Ubuntu 16.04上使用UFW设置防火墙本系列的上一篇文章中我们简介了IPTables的工作方式,在本次介绍中我们将通过实例来向大家演示如何在Ubuntu 14.04中配置IPTables的规则。IPTables基本命令在向大家介绍复杂防火墙规则之前,还是先上

1.如何在Ubuntu中用UFW配置防火墙

2.linux防火墙状态命令linux防火墙状态查看

3.ubuntu防火墙在哪里看

4.如何在Ubuntu 16.04上使用UFW设置防火墙

ubuntu防火墙设置_ubuntu18.04防火墙设置

本系列的上一篇文章中我们简介了IPTables的工作方式,在本次介绍中我们将通过实例来向大家演示如何在Ubuntu 14.04中配置IPTables的规则。

IPTables基本命令

在向大家介绍复杂防火墙规则之前,还是先上一些简单的料,让大家对IPTables最为基本的命令有一些简单了解。

首先要说明的是IPTables命令必需以root权限运行,这意味着你需要使用root身份登录或者能够有权限使用su或sudo -i取得root Shell。下面的内容中我们都使用sudo,这也是Ubuntu系统上的首选方法。

最好的起点就是先通过“-L”参数来查看下当前系统的所有IPTables规则:

sudo iptables -L

我们可以看到Linux中都有的3个常用默认链(INPUT、OUTPUT和FORWARD),同时也可以看到每个链的缺省策略(每个链对默认策略都是接受),在此我们可以看到Ubuntu中并没有添加任何默认规则集。

如果你希望通过命令来查看每个链的默认规则,可以使用“-S”参数:

sudo iptables -S

如果你看到IPTables里面已经有规则了,并希望取消这些规则后重新更配置话,可以使用“-F”参数来清空已有的规则集:

sudo iptables -F

虽然“-F”参数可以清空并刷新链中所有的现有规则集,但并不会对链的默认策略进行更改。因此,如果你是在更改远程VPS防火墙策略的话需要在“-F”清空所有规则时先将INPUT和OUTPUT链的默认策略恢复到ACCEPT,以免规则清空后SSH连接被阻断。要做到这一点可执行如下命令:

sudo iptables -P INPUT ACCEPT

sudo iptables -P OUTPUT ACCEPT

sudo iptables -F

在配置好允许SSH连接后(下面介绍),再将INPUT和OUTPUT链的默认规则更改为DROP即可。

创建自已的IPTables规则

现在就要开始为我们的VPS创建自定义的防火墙规则啦,正如上篇文章中所说,由于INPUT链会处理所有连接到服务器的入站数据包,因此我们的所有操作都与INPUT链有关。现在先来配置服务器允许SSH连接。

完整命令应该是这样的:

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

大多朋友可能会觉得看起来怎么这么复杂,那我们来逐一分拆说明下。

-A INPUT :表明我们要将此规则追加到某个链的最后,由于我们要操作INPUT链接,所以这么写。

-m conntrack :iptables除了自己的核心功能外还只有一些实用的扩展和模块,这个参数表明添加conntrack模块提供的能力。(conntrack模块可以根据先前的连接来确定数据包之间的关系)

–ctstate :该参数是conntrack模块提供的,它可以确定如何用现在的数据包去匹配先前获得的数据包。ESTABLISHED值将自动允许现有连接的数据包,RELATED值将允许已建立连接的相关数据包。(这样就与SSH会话特性相匹配上了)

-j ACCEPT :这个参数用于指定匹配的数据包的目标。用在这里表示接受和允许符合上述标准的数据包通过。

配置好后我们来看一下:

sudo iptables -L

现在,你应该已经知道IPTables的基本语法了,下面我们继续添加规则打怪,以期尽快升级为高手。

接受其它必要连接

大家的VPS上一般SSH服务的22端口,Web服务器的80端口及Mysql的3306端口都是需要打开的,不然怎么对外提供服务呢。因此我们也需要通过如下命令在IPTables中打开这些端口:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

为了保证我们的VPS能够正常运行,还需要添加一条允许规则。通常,计算机上的服务都会发送网络数据包以保持彼此之间的通信。而这种通信会利用到一个名叫loopback的伪网卡将流量引导回自己。因此,我们还需要为loopback网卡添加一条允许规则。

sudo iptables -I INPUT 1 -i lo -j ACCEPT

-I INPUT 1 :与“-A”不同,它可以指定要将规则添加到该链的位置。

实施Drop规则

前面讲的内容其实都是基于一个前提假设的,但事先我们需要先把防火墙的2种常用模式说明一下。一种是明确定义允许通过防火墙的规则,不匹配的都丢弃。另外一种是明确定义拒绝通过防火墙的规则,其余的都允许。我们的前提假设采用的就是第一种方式,这样配置起来相对简单,规则也较少,也更加安全。

前面我们已经为INPUT链接定义了一些允许规则,但默认INPUT链是允许所有包,所以我们现在需要将INPUT链的默认规则更改为“Drop”即丢弃。通过如下命令完成更改:

sudo iptables -P INPUT DROP

查看和保存配置

IPTables的配置是立即生效的,前面已经介绍过,在配置好之后我们可以直接用“-L”参数进行查看,这里再另外增加一个“–line-numbers”参数,它主要用于显示行数,对于规则较多时的查看非常方便。

sudo iptables -L --line-numbers

虽然IPTables的命令执行后会立即生效,但这个生效过程其实是临时的,系统在重启之后便会丢失。因此,我们还需要将这些配置添加到配置文件当中,以保证系统在下次重启后会自动载入我们的IPTables防火墙规则。

sudo apt-get update

sudo apt-get install iptables-persistent

该命令脚本下载执行后会询问我们是否对IPTables配置进行保存,如果确定的话选择“是”即可。保存后下次重启系统也不会造成配置丢失了。

如何在Ubuntu中用UFW配置防火墙

1.关闭ubuntu的防火墙 ufw disable

2.卸载了iptables apt-get remove iptables

1.用iptables -F这个命令来关闭防火墙,但是使用这个命令前,千万记得用iptables

-L查看一下你的系统中所有链的默认target,iptables

-F这个命令只是清除所有规则,只不会真正关闭iptables.想象一下,如果你的链默认target是DROP,本来你有规则来允许一些特定的端口,

但一旦应用iptables -L ,清除了所有规则以后,默认的target就会阻止任何访问,当然包括远程ssh管理服务器的你.

所以我建议的关闭防火墙命令是

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

iptables -F

 

 总之,当你要在你的服务器上做任何变更时,最好有一个测试环境做过充分的测试再应用到你的服务器.除此之外,要用好iptables,那就要理解

iptables的运行原理,知道对于每一个数据包iptables是怎么样来处理的.这样才能准确地书写规则,避免带来不必要的麻烦.

2.

默认情况下ubuntu无firewall,除非你自己安装了,怎么装的就怎么删呗。。

如果是已启用的自备的iptables 删了就行了

sudo apt-get remove iptables

不记得apt-get 要移除是不是 remove 吧,有些日子没用ubuntu了

iptables是内核模块删除不了滴

现查看一下你iptables的规则

sudo iptables -L

sudo iptables -t nat -L

如果都是空的就不是iptables的问题

如果有许多规则的话就清空规则并修改默认策略

sudo iptables -F

sudo iptables -t nat -F

sudo iptables -P ACCEPT

sudo iptables -t nat -P ACCEPT

了解更多开源相关,去LUPA社区看看

linux防火墙状态命令linux防火墙状态查看

UFW,即简单防火墙(uncomplicated firewall),是一个 Arch Linux、Debian 或 Ubuntu 中管理防火墙规则的前端。 UFW 通过命令行使用(尽管它有可用的 GUI),它的目的是使防火墙配置简单(即不复杂(uncomplicated))。

开始之前

1、 熟悉我们的入门指南,并完成设置服务器主机名和时区的步骤。

2、 本指南将尽可能使用 sudo。 在完成保护你的服务器指南的章节,创建一个标准用户帐户,强化 SSH 访问和移除不必要的网络服务。 但不要跟着创建防火墙部分 - 本指南是介绍使用 UFW 的,它对于 iptables 而言是另外一种控制防火墙的方法。

3、 更新系统

Arch Linux

sudo pacman -Syu

Debian / Ubuntu

sudo apt-get update && sudo apt-get upgrade

安装 UFW

UFW 默认包含在 Ubuntu 中,但在 Arch 和 Debian 中需要安装。 Debian 将自动启用 UFW 的 systemd 单元,并使其在重新启动时启动,但 Arch 不会。 这与告诉 UFW 启用防火墙规则不同,因为使用 systemd 或者 upstart 启用 UFW 仅仅是告知 init 系统打开 UFW 守护程序。

默认情况下,UFW 的规则集为空,因此即使守护程序正在运行,也不会强制执行任何防火墙规则。 强制执行防火墙规则集的部分在下面。

Arch Linux

1、 安装 UFW:

sudo pacman -S ufw

2、 启动并启用 UFW 的 systemd 单元:

sudo systemctl start ufwsudo systemctl enable ufw

Debian / Ubuntu

1、 安装 UFW

sudo apt-get install ufw

使用 UFW 管理防火墙规则

设置默认规则

大多数系统只需要打开少量的端口接受传入连接,并且关闭所有剩余的端口。 从一个简单的规则基础开始,ufw default命令可以用于设置对传入和传出连接的默认响应动作。 要拒绝所有传入并允许所有传出连接,那么运行:

sudo ufw default allow outgoing sudo ufw default deny incoming

ufw default 也允许使用 reject 参数。

警告:

除非明确设置允许规则,否则配置默认 deny 或 reject 规则会锁定你的服务器。确保在应用默认 deny 或 reject 规则之前,已按照下面的部分配置了 SSH 和其他关键服务的允许规则。

添加规则

可以有两种方式添加规则:用端口号或者服务名表示。

要允许 SSH 的 22 端口的传入和传出连接,你可以运行:

sudo ufw allow ssh

你也可以运行:

sudo ufw allow 22

相似的,要在特定端口(比如 111)上 deny 流量,你需要运行:

sudo ufw deny 111

为了更好地调整你的规则,你也可以允许基于 TCP 或者 UDP 的包。下面例子会允许 80 端口的 TCP 包:

sudo ufw allow 80/tcp sudo ufw allow http/tcp

这个会允许 1725 端口上的 UDP 包:

sudo ufw allow 1725/udp

高级规则

除了基于端口的允许或阻止,UFW 还允许您按照 IP 地址、子网和 IP 地址/子网/端口的组合来允许/阻止。

允许从一个 IP 地址连接:

sudo ufw allow from 123.45.67.89

允许特定子网的连接:

sudo ufw allow from 123.45.67.89/24

允许特定 IP/ 端口的组合:

sudo ufw allow from 123.45.67.89 to any port 22 proto tcp

proto tcp 可以删除或者根据你的需求改成 proto udp,所有例子的 allow 都可以根据需要变成 deny。

删除规则

要删除一条规则,在规则的前面加上 delete。如果你希望不再允许 HTTP 流量,你可以运行:

sudo ufw delete allow 80

删除规则同样可以使用服务名。

编辑 UFW 的配置文件

虽然可以通过命令行添加简单的规则,但仍有可能需要添加或删除更高级或特定的规则。 在运行通过终端输入的规则之前,UFW 将运行一个文件 before.rules,它允许回环接口、ping 和 DHCP 等服务。要添加或改变这些规则,编辑 /etc/ufw/before.rules 这个文件。 同一目录中的 before6.rules 文件用于 IPv6 。

还存在一个 after.rule 和 after6.rule 文件,用于添加在 UFW 运行你通过命令行输入的规则之后需要添加的任何规则。

还有一个配置文件位于 /etc/default/ufw。 从此处可以禁用或启用 IPv6,可以设置默认规则,并可以设置 UFW 以管理内置防火墙链。

UFW ?

你可以在任何时候使用命令:sudo ufw status 查看 UFW 的状态。这会显示所有规则列表,以及 UFW 是否处于激活状态:

Status: active To Action From -- ------ ---- 22 ALLOW Anywhere 80/tcp ALLOW Anywhere 443 ALLOW Anywhere 22 (v6) ALLOW Anywhere (v6) 80/tcp (v6) ALLOW Anywhere (v6) 443 (v6) ALLOW Anywhere (v6)

启用防火墙

随着你选择规则完成,你初始运行 ufw status 可能会输出 Status: inactive。 启用 UFW 并强制执行防火墙规则:

sudo ufw enable

相似地,禁用 UFW 规则:

sudo ufw disable

UFW 会继续运行,并且在下次启动时会再次启动。

日志记录

你可以用下面的命令启动日志记录:

sudo ufw logging on

ubuntu防火墙在哪里看

ubuntu下怎么查看防火墙设置?

ubuntu9.10默认的是UFW防火墙,已经支持界面操作了。在命令行运行ufw命令就可以看到提示的一系列可进行的操作。

最简单的一个操作:sudoufwstatus可检查防火墙的状态,我的返回的是:不活动

sudoufwversion防火墙版本:

ufw0.29-4ubuntu1

Copyright2008-2009CanonicalLtd.

ubuntu系统默认已安装ufw.

1.安装

sudoapt-getinstallufw

2.启用

sudoufwenable

sudoufwdefaultdeny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。

3.开启/禁用

sudoufwallow|deny

打开或关闭某个端口,例如:

sudoufwallowsmtp允许所有的外部IP访问本机的25/tcp(smtp)端口

sudoufwallow22/tcp允许所有的外部IP访问本机的22/tcp(ssh)端口

sudoufwallow53允许外部访问53端口(tcp/udp)

sudoufwallowfrom192.168.1.100允许此IP访问所有的本机端口

sudoufwallowprotoudp192.168.0.1port53to192.168.0.2port53

sudoufwdenysmtp禁止外部访问smtp服务

sudoufwdeleteallowsmtp删除上面建立的某条规则

4.查看防火墙状态

sudoufwstatus

一般用户,只需如下设置:

sudoapt-getinstallufw

sudoufwenable

sudoufwdefaultdeny

以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudoufwallow开启。

开启/关闭防火墙(默认设置是’disable’)

sudoufwenable|disable

转换日志状态

sudoufwloggingon|off

设置默认策略(比如“mostlyopen”vs“mostlyclosed”)

sudoufwdefaultallow|deny

许可或者屏蔽端口(可以在“status”中查看到服务列表)。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。‘allow’参数将把条目加入/etc/ufw/maps,而‘deny’则相反。基本语法如下:

sudoufwallow|deny

显示防火墙和端口的侦听状态,参见/var/lib/ufw/maps。括号中的数字将不会被显示出来。

sudoufwstatus

UFW使用范例:

允许53端口

$sudoufwallow53

禁用53端口

$sudoufwdeleteallow53

允许80端口

$sudoufwallow80/tcp

禁用80端口

$sudoufwdeleteallow80/tcp

允许smtp端口

$sudoufwallowsmtp

删除smtp端口的许可

$sudoufwdeleteallowsmtp

允许某特定IP

$sudoufwallowfrom192.168.254.254

删除上面的规则

$sudoufwdeleteallowfrom192.168.254.254

linux2.4内核以后提供了一个非常优秀的防火墙工具:netfilter/iptables,他免费且功能强大,可以对流入、流出的信息进行细化控制,它可以实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。netfilter工作在内核内部,而iptables则是让用户定义规则集的表结构。

但是iptables的规则稍微有些“复杂”,因此ubuntu提供了ufw这个设定工具,以简化iptables的某些设定,其后台仍然是iptables。ufw即uncomplicatedfirewall的简称,一些复杂的设定还是要去iptables。

ufw相关的文件和文件夹有:

/etc/ufw/:里面是一些ufw的环境设定文件,如before.rules、after.rules、sysctl.conf、ufw.conf,及forip6的before6.rule及after6.rules。这些文件一般按照默认的设置进行就ok。

若开启ufw之后,/etc/ufw/sysctl.conf会覆盖默认的/etc/sysctl.conf文件,若你原来的/etc/sysctl.conf做了修改,启动ufw后,若/etc/ufw/sysctl.conf中有新赋值,则会覆盖/etc/sysctl.conf的,否则还以/etc/sysctl.conf为准。当然你可以通过修改/etc/default/ufw中的“IPT_SYSCTL=”条目来设置使用哪个sysctrl.conf.

/var/lib/ufw/user.rules这个文件中是我们设置的一些防火墙规则,打开大概就能看明白,有时我们可以直接修改这个文件,不用使用命令来设定。修改后记得ufwreload重启ufw使得新规则生效。

下面是ufw命令行的一些示例:

ufwenable/disable:打开/关闭ufw

ufwstatus:查看已经定义的ufw规则

ufwdefaultallow/deny:外来访问默认允许/拒绝

ufwallow/deny20:允许/拒绝访问20端口,20后可跟/tcp或/udp,表示tcp或udp封包。

ufwallow/denyservicename:ufw从/etc/services中找到对应service的端口,进行过滤。

ufwallowprototcpfrom10.0.1.0/10to本机ipport25:允许自10.0.1.0/10的tcp封包访问本机的25端口。

ufwdeleteallow/deny20:删除以前定义的"允许/拒绝访问20端口"的规则

centos查看防火墙状态?

查看centos防火墙状态方法一:

直接使用iptables-L查看防火墙设置

serviceiptablesstop关闭防火墙

serviceiptablesstart/restart开启或重启

查看centos防火墙状态方法二:

serviceiptablesstatus可以查看到iptables服务的当前状态。

但是即使服务运行了,防火墙也不一定起作用,你还得看防火墙规则的设置iptables-L

在此说一下关于启动和关闭防火墙的命令:

1)重启后生效

开启:chkconfigiptableson

关闭:chkconfigiptablesoff

2)即时生效,重启后失效

开启:serviceiptablesstart

关闭:serviceiptablesstop

linux中怎样查看防火墙是否关闭了?

详细步骤如下:

1、打开Linux系统进入桌面,点击上方菜单栏处系统选项;

2、在弹出的菜单栏中,依次点击管理,防火墙选项;

3、进入防火墙界面,输入用户密码,进行安全验证;

4、连接服务器后,输入语句‘serviceiptablesstatus’,回车,会显示防火墙状态;

5、输入语句‘chkconfigiptableson’,可以开启防火墙。或者使用语句‘chkconfigiptablesoff’,关闭防火墙,需要重启后生效。

redhat查看防火墙是否开启?

Redhat使用了SELinux来增强安全,

首先怎么查看防火墙的状态呢?

a.可以通过如下命令查看iptables防火墙状态:

chkconfig--listiptables

b.selinux状态可以通过以下命令查看:

sestatus或者/usr/sbin/sestatus

selinux关闭的办法为:

1.永久有效

修改/etc/selinux/config文件中的SELINUX=enforcing,设置为disabled,然后重启系统。

也可以在/etc/sysconfig/selinux中配置SELINUX=disabled,来关闭selinux,然后重启系统。

2.即时生效

setenforce0---不需要重启系统,但是临时的。其中,0表示设置SELinux成为permissive模式,1表示设置SELinux成为enforcing模式

关闭防火墙的方法为:

1.永久性生效

开启:chkconfigiptableson

chkconfigip6tablesoff---针对ipv6

关闭:chkconfigiptablesoff

chkconfigip6tablesoff---针对ipv6

2.即时生效,重启后失效

开启:serviceiptablesstart

关闭:serviceiptablesstop

补充:

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作

linux如何关闭防火墙?

rhel6关闭防火墙的方法为:serviceiptablesstatus查看当前防火墙状态1.永久性生效开启:chkconfigiptableson关闭:chkconfigiptablesoff2.即时生效,重启后失效开启:serviceiptablesstart关闭:serviceiptablesstoprhel7关闭防火墙的方法为:systemctlstatusfirewalld查看当前防火墙状态1.永久性生效开启:systemctlenablefirewalld关闭:systemctldisablefirewalld2.即时生效,重启后失效开启:systemctlstartfirewalld关闭:systemctlstopfirewalld

如何在Ubuntu 16.04上使用UFW设置防火墙

ubuntu 系统默认已安装ufw.

1.安装

sudo apt-get install ufw

2.启用

sudo ufw enable

sudo ufw default deny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。

3.开启/禁用

sudo ufw allow|deny [service]

打开或关闭某个端口,例如:

sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口

sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口

sudo ufw allow 53 允许外部访问53端口(tcp/udp)

sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口

sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53

sudo ufw deny smtp 禁止外部访问smtp服务

sudo ufw delete allow smtp 删除上面建立的某条规则

4.查看防火墙状态

sudo ufw status

一般用户,只需如下设置:

sudo apt-get install ufw

sudo ufw enable

sudo ufw default deny

以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。

开启/关闭防火墙 (默认设置是’disable’)

sudo ufw enable|disable

转换日志状态

sudo ufw logging on|off

安装方法

sudo apt-get install ufw

当然,这是有图形界面的(比较简陋),在新立得里搜索gufw试试……

使用方法

1、启用

sudo ufw enable

sudo ufw default deny

作用:开启了防火墙并随系统启动同时关闭所有外部对本机的访问(本机访问外部正常)。

2、关闭

sudo ufw disable

3、查看防火墙状态

sudo ufw status

4、开启/禁用相应端口或服务举例

sudo ufw allow 80 允许外部访问80端口

sudo ufw delete allow 80 禁止外部访问80 端口

sudo ufw allow from 192.168.1.1 允许此IP访问所有的本机端口

sudo ufw deny smtp 禁止外部访问smtp服务

sudo ufw delete allow smtp 删除上面建立的某条规则

ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 要拒绝所有的流量从TCP的10.0.0.0/8 到端口22的地址192.168.0.1

可以允许所有RFC1918网络(局域网/无线局域网的)访问这个主机(/8,/16,/12是一种网络分级):

sudo ufw allow from 10.0.0.0/8

sudo ufw allow from 172.16.0.0/12

sudo ufw allow from 192.168.0.0/16

推荐设置

sudo apt-get install ufw

sudo ufw enable

sudo ufw default deny

这样设置已经很安全,如果有特殊需要,可以使用sudo ufw allow开启相应服务。