Linux防火墙学习笔记7

安装apahce:

yum install -y httpd
echo 123 >> /var/www/html/index.html
systemctl start httpd
curl http://localhost

然后给iptables插入一条防火墙策略:

iptables -t filter -I INPUT -p tcp --dport 80 -j ACCEPT

注意:这里使用的是-I,不是使用的-A 参数。

Linux防火墙学习笔记7_第1张图片

说明:

1)policy ACCEPT:这是白名单的方式。

2)REJECT all -- 0.0.0.0/0  0.0.0.0/0   reject-with icmp-host-prohibited

拒绝所有的除了icmp之外的所有协议规则。

3)然后使用-I插入一条规则,而不是使用的-A在末尾添加。

这说明防火墙在读规则的时候是有顺序的,是在链表规则表中从下往上读取的。先将所有的协议都拒绝,然后再逐个接收各个协议。白名单,先把所有的除了icmp协议拒绝,然后再放可接受的协议。我这个理解是错误的,老师说链表规则还是从上往下,ACCEPT就放行,放行的就通过,然后下面是拒绝所有,然后有什么协议想通过就不放行了。

涉及到三个选项:-A -D -I;

如果将iptables进行重启,发现添加的规则都没有了。

这是因为重启了iptables之后,会将 /etc/sysconfig/iptables的配置文件的内容加载进来的。我们添加的防火墙配置还没有写到配置文件中,所以添加的配置就没有了,也就是我们的配置添加好了之后,要进行保存。跟交换机的配置一样的,华为交换机最后配置也是要进行保存save的。

systemctl restart iptables

Linux防火墙学习笔记7_第2张图片

 说明:

1)iptables-config是软件本身的配置文件;

2)iptables是防火墙规则的配置文件。

Linux防火墙学习笔记7_第3张图片

 刚才我们添加的规则没有被加入到该文件中。那通过iptables -save,要将规则进行保存才行。

就是将规则写到/etc/sysconfig/ipables中才行。

那么,如何将防火墙的配置写进文档中呢?使用如下命令:

iptables-save > /etc/sysconfig/iptables

iptables -F
# 清空filter表中的规则

 说明:这是清理的内存iptables的规则。

重启itptables,可以将防火墙规则配置文件里的数据读到iptables中。

iptables-restore < /etc/sysconfig/iptables

将内存的配置写到iptables规则配置文件中:

iptables-save > /etc/sysconfig/iptables

这个命令是黑天鹅:这个要特别注意下:

iptables -P INPUT DROP

解决方法是:直接到物理机上直接执行命令:iptables-restore < /etc/sysconfig/iptables 

在配置防火墙的时候,要及时执行命令:iptables-save > /etc/sysconfig/iptables

尽量不要将规则清空,操作的时候要特别小心。

你可能感兴趣的:(iptables,linux)