会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 4000字!轻松掌握Firewalld防火墙服务!!

4000字!轻松掌握Firewalld防火墙服务!

时间:2025-11-05 13:51:11 来源:益强数据堂 作者:应用开发 阅读:104次

  本文目录

  Firewalld防火墙概念简介

  Firewalld防火墙特点介绍

  Firewalld防火墙区域概念

  Firewalld防火墙命令参数

  Firewalld防火墙配置策略

  Firewalld防火墙概念简介

  CentOS7/RHCE7是字轻一个集合多款防火墙管理工具并存的系统。

  Firewalld动态防火墙管理器服务是松掌目前默认的防火墙管理工具,同时拥有命令行终端(CLI)和图形化界面(GUI)的握F务配置工具,即使是防火对Linux命令并不熟悉的同学也能快速入门。

  想要学习掌握firewalld防火墙应用服务,墙服首先需要弄明白的字轻第一个问题是到底什么是动态防火墙?

  为了解答这个问题,先来回忆一下iptables service管理防火墙规则的松掌模式:

  用户将新的防火墙规则添加进 /etc/sysconfig/iptables配置文件当中,再执行命令service iptables reload使变更的握F务规则生效;

  在这整个过程的背后,iptables service首先对旧的防火防火墙规则进行了清空,然后重新完整地加载所有新的墙服防火墙规则;

  而如果配置了需要reload内核模块的话,过程背后还会包含卸载和重新加载内核模块的字轻动作;

  而不幸的是,这个动作很可能对运行中的松掌系统产生额外的不良影响,免费源码下载特别是握F务在网络非常繁忙的系统中。

  如果我们把这种哪怕只修改一条规则也要进行所有规则的防火重新载入的模式称为静态防火墙的话,那么firewalld所提供的墙服模式就可以叫做动态防火墙,它的出现就是为了解决这一问题;

  任何规则的变更都不需要对整个防火墙规则列表进行重新加载,只需要将变更部分保存并更新到运行中的 iptables即可。

  Firewalld防火墙特点介绍

  Firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现,也就是说firewalld和iptables一样。

  它们的作用都是用于维护规则,而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结构以及使用方法不一样罢了。

  对于接触Linux较早的人员对iptables比较的企商汇熟悉,但由于iptables的规则比较的麻烦,所以学习成本较高;

  但firewalld的学习对网络并没有那么高的要求,相对iptables来说要简单不少。

  就好比如手动挡汽车vs自动挡汽车,所以建议刚接触CentOS7系统的人员直接学习firewalld。

  如果开启Firewalld防火墙,默认情况会阻止流量流入,但允许流量流出。

  Firewalld防火墙区域概念

  相比于传统的防火墙管理工具还支持了动态更新技术并加入了“zone区域”的概念。

  简单来说就是为用户预先准备了几套防火墙策略集合(策略模板),然后可以根据生产场景的不同而选择合适的策略集合,实现了防火墙策略之间的快速切换。

  firewalld将所有网络流量划分为多个区域,从而简化防火墙管理。

  根据数据包源IP地址或传入网络接口等条件,流量将转入相应区域的防火墙规则。

  每个区域都可以具有自己要打开或者关闭的端口和服务列表。

  Firewalld防火墙命令参数

  Firewalld防火墙配置策略

  防火墙运行方式

  为了能正常使用firewalld服务和相关工具去管理防火墙,必须启动firewalld服务,服务器租用同时关闭以前旧防火墙相关服务。

  需要注意firewalld的规则分两种状态:runtime:运行时修改规则马上生效,但如果重启服务则马上失败,测试建议permanent:持久配置修改规则后需要reload重载服务才会生效,生产建议

# 禁用旧版防火墙服务 systemctl mask iptables systemctl mask ip6tables # 启动firewalld防火墙,并加入开机自启动服务 systemctl start firewalld.service systemctl enable firewalld.service

  防火墙基础配置

  firewalld启动后,我们需要知道使用的是什么区域,区域的规则明细又有哪些?

# 查看系统中目前已有的所有区域 [root@firewalld ~]# firewall-cmd --get-zones block dmz drop external home internal public trusted work # 通过--get-default-zone获取当前默认使用的区域 [root@firewalld ~]# firewall-cmd --get-default-zone public

  使用firewalld各个区域规则结合配置,调整默认public区域拒绝所有流量,但如果来源IP是10.0.0.0/24网段则允许。

# 临时移除默认区域的规则策略 [root@firewalld ~]# firewall-cmd --remove-service=ssh --remove-service=dhcpv6-client success # 添加来源是10.0.0.0/24网段,将其加入白名单(更精细化控制使用富规则) [root@firewalld ~]# firewall-cmd --add-source=10.0.0.0/24 --zone=trusted # 检查当前活动的区域配置信息 [root@firewalld ~]# firewall-cmd --get-active-zone public interfaces: eth0 eth1 trusted sources: 10.0.0.0/24

  防火墙端口配置

  使用firewalld允许客户请求的服务器的80/tcp端口,仅临时生效,如添加--permanent重启后则永久生效。

  01. 添加允许访问单个端口

# 临时添加规则策略信息 [root@firewalld ~]# firewall-cmd --add-port=8080/tcp # 永久添加规则策略信息 [root@firewalld ~]# firewall-cmd --add-port=8080/tcp --permanent [root@firewalld ~]# firewall-cmd --reload 说明:永久添加的配置需要重载识别

  02. 添加允许访问多个端口

# 临时添加多个端口信息 [root@firewalld ~]# firewall-cmd --add-port={80/tcp,8080/tcp} # 永久添加多个端口信息 [root@firewalld ~]# firewall-cmd --add-port={80,8080}/tcp --permanent [root@firewalld ~]# firewall-cmd --reload 说明:永久添加的配置需要重载识别

  03. 查看检查端口放行情况

[root@firewalld ~]# firewall-cmd --list-ports 80/tcp 8080/tcp

  04. 移除临时添加的端口规则

# 移除指定端口信息 [root@firewalld ~]# firewall-cmd --remove-port={80/tcp,8080/tcp}

  防火墙访问策略

  使用firewalld允许客户请求服务器的http https协议,仅临时生效,如添加--permanent重启则永久生效。

  01. 添加允许访问单个服务信息

# 临时添加规则策略信息 [root@firewalld ~]# firewall-cmd --add-service=http # 永久添加规则策略信息 [root@firewalld ~]# firewall-cmd --add-service=https --permanent [root@firewalld ~]# firewall-cmd --reload 说明:永久添加的配置需要重载识别

  02. 添加允许访问多个服务信息

# 临时添加多个端口信息 [root@firewalld ~]# firewall-cmd --add-service={http,https} # 永久添加多个端口信息 [root@firewalld ~]# firewall-cmd --add-service={http,https} --permanent [root@firewalld ~]# firewall-cmd --reload 说明:永久添加的配置需要重载识别

  03. 查看检查服务放行情况

[root@firewalld ~]# firewall-cmd --list-services http https

  04. 移除临时添加的端口规则

# 移除端口信息 [root@firewalld ~]# firewall-cmd --remove-port={http,https}

  防火墙端口转发

  端口转发是指传统的目标地址映射,实现外网访问内网资源,流量转发命令格式:

firewall-cmd --permanent --zone=<区域> --add-forward-port=port=<源端口号>:proto=<协议>:toport=<目标端口号>:toaddr=<目标IP地址>

  如果需要将当前的10.0.0.61:5555端口转发至后端172.16.1.9:22端口

  01. 开启masquerade,实现地址转换功能

# firewall-cmd --add-masquerade --permanent

  02. 配置转发规则信息

# firewall-cmd --permanent --zone=public --add-forward-port=port=6666:proto=tcp:toport=22:toaddr=172.16.1.9 # firewall-cmd --reload

(责任编辑:IT科技类资讯)

上一篇:以950m玩游戏的体验(体验高画质游戏畅爽快感的950m显卡)
下一篇:若是你安装Ubuntu原先的版本,你需要升级你的版本到Ubuntu 11.04,我们原先介绍过,在此不再赘述。参考此文章。接下来是大家要做的事情!若是你喜欢Unity,可是你的显卡不给力3D不支持,怎么办呢?安装Unity-2D:sudo apt-add-ppa repository: unity-2d-team/unity-2d-daily#2 安装更新Ubuntu最新版本,并不意味着你的软件是最新版本,对吧?升级你的软件版本:sudo apt-get update && sudo apt-get upgrade#3 安装Ubuntu TweakUbuntu Tweak是最给力的ubuntu设置工具之一。安装它,很简单:sudo add-apt-repository ppa:tualatrix/ppa#4 添加Medibuntu仓库源,激活Canonical伙伴软件Medibuntu是一些必要的但是不能封装在Ubuntu中的软件,比如win32codec,google-earth,opera等等。sudo apt-get install medibuntu#5 安装sambasamba服务器安装后,就可以与你所在的网络中的其他同学共享文件了。sudo apt-get install samba#6 安装媒体工具首先安装vlc–强大的东东sudo apt-get install vlc还需要安装一些常用的编码sudo  apt-get install non-free-codecs libxine1-ffmpeg gxine mencoder  libmpcdec3 libquicktime1 flac faac faad sox ffmpeg2theora libmpeg2-4若需要支持DVD,则sudo apt-get install libdvdcss2 && sudo /usr/share/doc/libdvdread4/./install-css.sh还需要Flash支持啊,虽然你恨它,可是没它真有点不行!在Ubuntu软件中心搜索安装即可!64位系统的同学可以使用命令安装sudo add-apt-repository ppa:sevenmachines/flash#7 想玩WOW,CS吗?安装PlayOnLinux!sudo apt-get install playonlinux#8 想玩其他游戏?PlayDeb!!可以添加Playdeb源http://archive.getdeb.net/install_deb/playdeb_0.3-1~getdeb1_all.deb然后,可以点击playdeb上的软件就可以一键安装!#9 XMBC–强大的媒体中心无需多言,命令安装:sudo add-apt-repository ppa:team-xbmc#10 视频编辑–Openshot虽然系统自带的opentivi可以,但是openshot更好用!安装最新版本:sudo add-apt-repository ppa:jonoomph/openshot-edge#11 备份数据Deja Dup安装:sudo apt-get install deja-dup#12 安装BT客户端下载BT,比如各种文艺片,你懂的,我不看,但是看到同学们津津有味,嗯,提供客户端:@,Deluge客户端sudo add-apt-repository ppa:deluge-team/ppa@,Vuze客户端sudo apt-get install vuze#13,安装ftp客户端Filezilla有网站/博客的同学,推荐FTP客户端。安装:sudo apt-get install filezilla#14,IM即时通讯QQ现在的webqq还算可以,empathy喝pidgin可以安装最新的libqq2010协议@ googlecode;新浪微博很多客户端,除官方推荐外还有eicodesign,还有gwibber的插件sudo apt-add-repository ppa:gwibber-team/ppamsn客户端sudo apt-get install amsn其他的就容易解决啦!还有skype:sudo apt-get update && sudo apt-get install skype#15,安装Java run time JREsudo add-apt-repository ppa:ferramroberto/java#16,安装Dropbox!我们介绍过很多云存储客户端,在此不详细介绍了@ here!#17,虚拟机virtual box弄个游戏什么的,有时候虚拟机也是必要的。Ubuntu系统软件中心搜索安装。#18,图像编辑GIMP,当属第一!安装最新版,虽然系统自带:sudo add-apt-repository ppa:matthaeus123/mrw-gimp-svn#19,喜欢conky?安装!sudo apt-get install conky其他配置自己找找主题即可。我会在以后将原先总结的conky主题给大家弄下,敬请期待!还有screenlet之类的小插件:sudo apt-add-repository ppa:screenlets/ppa#20,安装解压文件废话少说,命令:sudo apt-get install unace unrar zip unzip p7zip-full p7zip-rar sharutils rar uudeview mpack lha arj cabextract file-roller看看那些压缩文件还打不开吗?小样,弄不死它!#21,其他还有截图工具shutter,sshFQ利器图形界面gstm!不一而足!若有错误,敬请指出。本文写作过程中参考了ubuntuwiki&unixmen
最新内容
推荐内容
  • 常用办公软件推荐——提高工作效率的利器(多功能、易上手、高效率,选择适合你的办公软件吧!)
  • 保护智能建筑数据隐私的四种方法
  • 详解 Redis 内存管理机制和实现
  • 有效解决 MySQL 行锁等待超时问题
  • 用U盘重装Win7系统的教程(简易步骤帮助您使用U盘重装电脑系统)
  • SpringBoot整合Redis做缓存,实战分享