小白电脑课堂开课啦!游戏团战就死机,多半是废了。大家好我是小白。说到防火墙,同学们都会想到开了防火墙就会卡的Windows。而在Linux中,防火墙是个很重要的服务。虽然现在已经有了新的firewalld服务,但新的防火墙配置工具也没有完全取代iptables,而且很多企业还在iptables服务。今天小白就用iptables来演示如何设置防火墙中INPUT的策略。

一、简介一下iptables。iptables命令中ACCEPT(允许流量通过)、LOG(记录日志信息)、REJECT(拒绝流量通过)、DROP(拒绝流量通过)。允许动作和记录日志工作都比较好理解,着重需要讲解的是这两条拒绝动作的不同点,其中REJECT和DROP的动作操作都是把数据包拒绝,DROP是直接把数据包抛弃不响应,而REJECT会拒绝后再回复一条“您的信息我已收到,但被扔掉了”,让对方清晰的看到数据被拒绝的响应。下图是iptables的选项。

打开网易新闻 查看更多图片

二、我们今天分别演示:1、设置拒绝规则链(默认只能是DROP不能是REJECT);2、向规则链中添加icmp包流入允许策略(就是允许别人通过ping命令来查看我们的主机是否在线);3、只允许本机指定端口被指定网段访问,其他流量均被拒绝;4、拒绝所有人访问本机指定端口;5、拒绝指定主机访问本机指定端口;6、拒绝所有人访问本机指定的端口段;7、删除指定策略;8、最后保存设置的防火墙策略。

1、设置拒绝规则链(默认只能是DROP不能是REJECT)。首先我们输入“iptables -F”清空所有防火墙策略(一定要在实验环境下做,不然会把配置好的策略清除)。然后输入“iptables -P INPUT DROP”。设置好以后我们用“iptables -L”命令查看一下策略列表。然后用ping命令验证一下是否设置成功。可以看到已经拒绝了。成功之后我们为了下面的演示,把INPUT策略设置为允许通过“iptables -P ACCEPT”。

打开网易新闻 查看更多图片
打开网易新闻 查看更多图片

2、向规则链中添加icmp包流入允许策略(就是允许别人通过ping命令来查看我们的主机是否在线)。输入命令:

iptables -I INPUT -p icmp -j ACCEPT,然后我们用ping命令测试一下,可以看到ping通了。

打开网易新闻 查看更多图片
打开网易新闻 查看更多图片

3、只允许本机22端口被192.168.1.0/24网段访问,其他流量均被拒绝。我们输入命令:

iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT

和命令:

iptables -A INPUT -p tcp --dport 22 -j REJECT

同学们都知道22端口是ssh服务占用的资源。我们用ssh测试一下,可以看到能够连接到远程主机。

打开网易新闻 查看更多图片

4、拒绝所有人访问本机8888端口,输入命令:

iptables -I INPUT -p tcp --dport 8888 -j REJECT

和命令:

iptables -I INPUT -p udp --dport 8888 -j REJECT

打开网易新闻 查看更多图片

5、拒绝指定主机192.168.1.200访问本机80端口,输入命令:

iptables -I INPUT -s 192.168.1.200 -p tcp --dport 80 -j REJECT

打开网易新闻 查看更多图片

6、拒绝所有人访问本机4444到5555端口,输入命令:

iptables -A INPUT -p tcp --dport 4444:5555 -j REJECT

和命令:

iptables -A INPUT -p udp --dport 4444:5555 -j REJECT

打开网易新闻 查看更多图片

7、删除INPUT链中的第2条策略,首先我们看一下防火墙策略中的第二条策略是什么“iptables -L”,然后输入命令删除第2条策略:

iptables -D INPUT 2,可以看到第2条策略被删除了。

打开网易新闻 查看更多图片
打开网易新闻 查看更多图片

8、设置的防护墙策略在重启系统之后会消失,所有我们要保存设置好的策略,输入命令:

service iptables save

打开网易新闻 查看更多图片

好了,今天的演示就到这里了,我们明天见!

告别电脑小白就从小白电脑课堂开始!

我们的微信公众号是(小白电脑课堂),关注后可获取更多电脑知识!