什么是防火墙?
防火墙是一种网络安全系统,它根据预定的一组规则过滤和控制通信量 。这是一个介于设备和互联网之间的中介系统 。
注:如果您已经了解linux中防火墙的工作,并且只想知道命令,那么请进入教程的末尾 。
文章插图
Linux的防火墙是如何工作的:
Linux发行版的大多数附带默认防火墙工具,可以用来配置它们 。我们将使用Linux中提供的默认工具“iptablees”来建立防火墙 。Iptable用于在Linux内核中设置、维护和检查IPv 4和IPv 6数据包过滤规则的表 。
注-以下所有命令都需要sudo特权 。
链是为特定任务定义的一组规则 。我们有三条用于处理流量的链:输入链,输出链,前向链
1.输入链
从互联网(网络)到本地机器的任何流量都必须通过输入链 。这意味着它们必须遍历输入链中设置的所有规则 。
2.输出链
从本地机器到互联网的任何流量都需要通过输出链 。
3.前向链
从外部网络到另一个网络的任何流量都需要通过前向链 。当两台或两台以上的计算机连接在一起,并且我们希望在它们之间发送数据时,就使用它 。
文章插图
Iptable可以对流量执行三个操作:接受,下降,拒绝
1.接受
当流量传递其指定链中的规则时,iptable将接受该通信量 。
这意味着它打开了大门,允许这个人进入王国 。
2.下降
当流量无法传递其指定链中的规则时,iptable将阻塞该通信量 。
这意味着防火墙关闭了 。
3.拒绝
此类型的操作类似于DROP操作,但它向通信量的发送方发送一条消息,说明数据传输失败 。
通常情况下,当您希望另一端知道端口是不可访问的时,请使用拒绝 。‘使用DROP连接到您不希望别人看到的主机 。
注:你需要记住一个简单的规则:您在iptable中设置的规则将从最上面的规则到底部进行检查 。无论何时数据包通过任何顶级规则,它都可以通过防火墙 。不检查较低的规则 。所以在制定规则时要小心 。
文章插图
基本iptables命令:.列出iptable的现行规则:列出当前iptable的规则:
sudo iptables -L
这个输出量将是:
文章插图
正如您所看到的,我们有三条链(输入、向前、输出) 。我们也可以看到列标题,但它们不是实际的规则 。这是因为大多数Linux都没有预定义的规则 。
让我们看看每一列的含义 。
Target:这定义了需要对数据包执行哪些操作(接受、丢弃等)
Prot:这定义了数据包的协议(TCP,IP) 。
source:这将告诉包的源地址 。
destination:这定义了数据包的目标地址 。
文章插图
2.明确规则:
如果您想清除/清除所有现有规则 。运行以下命令:
sudo iptables -F
这将重置iptables 。
3.改变链条的默认政策:
sudo iptables -P Chain_name Action_to_be_taken
正如您在上面的图片中所看到的,每个链的默认策略是接受 。
例如:–
如果您看到前向链,您将看到“链式转发(策略接受)”,这意味着您的计算机允许将任何通信量转发到另一台计算机 。
为了改变转发的政策以减少:
sudo iptables -P FORWARD DROP
上述命令将停止通过系统转发的任何通信量 。这意味着没有其他系统可以作为中介传递数据 。
制定你的第一条规则:
1.执行一项中止规则:
现在我们将开始构建防火墙策略,我们将首先在输入链上工作,因为输入的流量将通过输入链 。
语法:-
sudo iptables -A/-I chain_name -s source_ip -j action_to_take
我们要来理解这个话题 。
假设我们想阻止来自IP地址192.168.1.3的通信量 。可以使用以下命令:
sudo iptables -A INPUT -s 192.168.1.3 -j DROP
这可能看上去很复杂,但当我们仔细研究组件时,大部分内容都是有意义的:-
A INPUT:
标志-A用于将规则附加到链的末尾 。命令的这一部分告诉iptable,我们希望在输入链的末尾添加一个规则 。
I INPUT:
在此标志中,规则被添加到链的顶部 。
-S192.168.1.3:-
标志-s用于指定数据包的源 。这告诉iptable查找来自源192.168.1.3的数据包 。
推荐阅读
- 如何优化我们的电脑
- 常用的Linux命令整理
- Linux性能优化之CPU
- 替换CentOS的5个免费Linux发行版
- 宋江带领梁山好汉招安的原因 如果宋江不接受招安的后果
- 曼松贡茶的口感如何,把逍遥化进曼松
- 有机农药如何划分呢
- 清朝宗室爵位继承制度 清朝的爵位等级如何世袭
- 如何去掉封闭性粉刺?
- 水泡型疱疹如何治疗