文章插图
iptables是基础,不过iptables只能管理ipv4,无法管理ipv6 。Ipv6需要使用ip6tables进行管理,所以如果是双栈网络就需要分别设置防火墙了 。Firewalld的底层是netfilter,将ipv4和ipv6统一成了同一个框架,是同时支持v4和v6的防火墙 。另外,几乎所有的iptables命令在firewalld中都可以使用direct参数进行兼容,并且firewalld还支持zoon等更高级的功能,也支持动态防火墙,使用起来比iptables更为方便 。
文章插图
我们后面的命令几乎都使用firewalld命令进行讲解,如果希望能更早一步了解,可以去redhat的官方网站搜索到更详细更完整的教程 。
这一期我们只介绍一些最简单的操作,比如开放端口让别人访问,关闭端口不让别人访问等 。我们直接拿一个案例来进行说明 。假设我们的NAS软路由一体机,有2张网卡 。连接外网的网卡是pppoe-eno1,获取到了公网IP;连接内网的网卡是br-lan,在局域网中 。服务器上开启了一些服务:http服务,对应80/tcp端口;transmission服务,管理页面对应9091/tcp端口,下载监听端口为51413/tcp和51413/udp端口;ssh服务对应22/tcp端口 。外网和内网都是ipv4/ipv6双栈的 。
文章插图
我们的要求是,ssh以及transmission的下载监听端口对内和对外同时开放,方便进行管理和远程访问以及下载加速;http和transmission的管理页面仅对内网用户开放,仅供内部人员使用 。
文章插图
首先,我们使用ssh登陆服务器 。我们可以先使用firewalld的zone的规则,将public zone设置为默认zone,命令为firewall-cmd --set-default-zOne=public 。这样所有的数据默认遵循public的规则 。包括wan口和lan口 。Public zone默认对于除了ssh/dhcpv6-client之外的数据都reject 。这样关于ssh的规则就设置好了 。
文章插图
接下来,因为某些服务需要内网访问,所以我们将lan口网卡加入trusted zone,命令为firewall-cmd --zOne=trusted --change-zOne=br-lan 。Trusted zone当中所有的数据默认都是accept 。那么现在内网的用户都可以正常访问http,transmission等管理页面了 。
文章插图
接下来,transmission服务还有两个端口需要暴露在公网当中,51413的tcp和udp端口 。
文章插图
我们需要在public zone中单独添加规则,将这两个端口的规则修改为允许 。我们需要使用firewall-cmd --add-port=51413/tcp和firewall-cmd --add-port=51413/udp命令进行添加,就OK了 。
文章插图
上面所有的命令都是运行后立即生效的,但是路由器重启后有些命令会失效,如果想要进行永久设置,我们需要在命令中添加—permanent的参数 。所以我们需要像刚才一样运行一遍立即生效命令,再运行一次永久保存命令就可以了 。
文章插图
关于路由器的防火墙我们暂时先讲这么多吧,通过这一期视频,将服务器放到公网之前,基本已经能做到自保了 。
文章插图
下一期开始接着讲解软路由相关的内容,后面再讲防火墙的高级内容 。希望大家多多支持 。
推荐阅读
- 中秋节是什么时候 中秋节的时间是什么时候
- 雪纳瑞寿命一般能活多少年雪纳瑞寿命大概是多久
- 关于夜的孤独 那些孤独的夜
- 猫式瑜伽的功效有哪些
- 2021描写秋天意境的句子 秋天意境很美的句子
- 怎么瘦下半身最有效 瘦下半身最快最有效的方法
- 上化妆水要用拍的才好吸收吗 为什么化妆水要拍打吸收
- 星期五的心情短句 星期五的心情短句 你的温暖
- 98%的人养过这种狗,如今却在消失…