Linux怎么设置防火墙
防火墙是每位当代计算机系统不可缺乏的组成部份,它保障了网路的安全,保护系统不被非法访问。在这篇文章中,我们将深入了解Linux防火墙的领域,并学习怎样配置一个防火墙。
在我们涉及到在Linux中构建防火墙的技术细节之前linux 开启防火墙端口,让我们澄清一下哪些是防火墙以及为何它这么重要!
防火墙是一种网路安全设备,按照预定的安全规则监控和限制网路流量。防火墙的主要功能是制止对计算机系统或网路的未经授权的访问,同时依然容许授权的访问。它作为一个守门人,控制谁和哪些可以步入和离开网路。
在Linux中配置防火墙有两个主要选择:iptables和firewalld。
iptables“是一个用于管理Linux内核防火墙的命令行程序。多年来,它是Linux服务器的默认防火墙,至今仍被广泛使用。
firewalld“是一种更现代的管理Linux中防火墙的技巧。它是一个动态守护程序,为管理防火墙规则提供了一个D-Bus插口,它被许多Linux发行版作为默认防火墙使用。
如今让我们深入了解在Linux中使用iptables和firewalld设置防火墙所需的步骤。

使用“iptables“来创建一个防火墙
sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT DROP
sudo iptables -A [CHAIN] -p [PROTOCOL] --dport [PORT] -j [ACTION]
让我们来分解一下规则的组成部份–
比如,下边的命令将在INPUT链上接受传入的SSH流量(端口22)。

sudo iptables -A INPUT -p tcp —dport 22 -j ACCEPT
Similarly,thefollowingcommandwouldenableOUTPUTchainHTTPtraffic(port80)−
sudo iptables -A OUTPUT -p tcp —dport 80 -j ACCEPT
使用“firewalld“来创建防火墙
在Linux中设置防火墙的另一个选择是使用firewalld。Firewalld是一个现代动态守护程序红旗linux,被一些Linux发行版,如CentOS、Fedora和RedHatEnterpriseLinux,用作默认的防火墙管理工具。
用firewalld配置防火墙的第1步是看它是否早已安装在你的系统上。
大多数近来的Linux发行版都预装了firewalld,可是你可以通过在终端输入以下命令来验证它的存在
sudo firewall-cmd —state
假如你的机器上还没有安装firewalld,使用下边的命令来安装它:sudoyuminstallfirewalld
一旦你确认Firewalld早已安装在你的系统上linux 开启防火墙端口,你就开始配置防火墙。
配置firewalld的第1步是检测默认区域。默认区域是一组预定义的规则linux嵌入式开发,管理系统上容许的流量。要检测默认区域,请运行以下命令
sudo firewall-cmd --get-default-zone

默认情况下,默认区域被设置为“公共”。你可以通过运行以下命令来改变默认区域
sudo firewall-cmd --set-default-zone=zone
其中“zone“是你想设置为默认的区域名称。
下一步是向防火墙添加规则,准许或制止特定类型的流量。Firewalld使用一个称作“服务“的概念,将相关的端口和合同组合在一起。一些常用的服务包括“http”、”https”、”ssh“和“smtp”。
ToallowincomingHTTPtraffic,forexample,youcanusethefollowingcommand−
sudo firewall-cmd --add-service=http --permanent

“–permanent“选项使规则成为永久性的,所以它在重启后依然存在。假如你不使用”–permanent“选项,当系统重新启动时,该规则将被删掉。
你还可以通过使用”–add-port“选项来准许特定的端口。诸如,下边的命令准许SSH的22号端口的传入流量:
sudo firewall-cmd --add-port=22/tcp --permanent
在添加必要的规则后,确保重新加载防火墙,便于使变化生效。
sudo firewall-cmd --reload
