文档章节

centos 7版本防火墙详细说明

小鸟也疯狂
 小鸟也疯狂
发布于 2016/12/09 10:38
字数 719
阅读 5
收藏 0

 

centos 7版本以后默认使用firewalld后,网上关于iptables的设置方法已经不管用了,

1、firewalld简介

firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务;第二个就是加入了防火墙的“zone”概念

firewalld有图形界面和工具界面,由于我在服务器上使用,图形界面请参照官方文档,本文以字符界面做介绍

firewalld的字符界面管理工具是 firewall-cmd

firewalld默认配置文件有两个:/usr/lib/firewalld/ (系统配置,尽量不要修改)和 /etc/firewalld/ (用户配置地址)

zone概念:

硬件防火墙默认一般有三个区,firewalld引入这一概念系统默认存在以下区域(根据文档自己理解,如果有误请指正):

drop:默认丢弃所有包

block:拒绝所有外部连接,允许内部发起的连接

public:指定外部连接可以进入

external:这个不太明白,功能上和上面相同,允许指定的外部连接

dmz:和硬件防火墙一样,受限制的公共连接可以进入

work:工作区,概念和workgoup一样,也是指定的外部连接允许

home:类似家庭组

internal:信任所有连接

对防火墙不算太熟悉,还没想明白public、external、dmz、work、home从功能上都需要自定义允许连接,具体使用上的区别还需高人指点

 

2、安装firewalld

root执行:

# yum install firewalld firewall-config

3、运行、停止、禁用firewalld

启动:# systemctl start firewalld

查看状态:# systemctl status firewalld 或者 firewall-cmd --state

停止:# systemctl disable firewalld

禁用:# systemctl stop firewalld

 

4、配置firewalld

查看版本:$ firewall-cmd --version

查看帮助:$ firewall-cmd --help

显示状态:$ firewall-cmd --state

查看所有打开的端口:$ firewall-cmd --zone=dmz --list-ports

查看区域信息: $ firewall-cmd --get-active-zones

查看指定接口所属区域:$ firewall-cmd --get-zone-of-interface=eth0

拒绝所有包:$ firewall-cmd --panic-on

取消拒绝状态:$ firewall-cmd --panic-off

查看是否拒绝:$ firewall-cmd --query-panic

更新防火墙规则:$ firewall-cmd --reload

或者:$ firewall-cmd --complete-reload

两者的区别就是第一个无需断开连接,就是firewalld特性之一动态添加规则,第二个需要断开连接,类似重启服务

将接口添加到区域,默认接口都在public,永久生效再加上--permanent,然后reload防火墙

# firewall-cmd --zone=public --add-interface=eth0

设置默认接口区域,然后立即生效无需重启

# firewall-cmd --set-default-zone=public

 

5 打开端口

加入一个端口到区域:

# firewall-cmd --zone=dmz --add-port=8080/tcp

若要永久生效,

# vi /etc/sysconfig/iptables-config # 也可能是iptables文件

打开3306端口,则在最后添加这样一样:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

重启和设置开机启动

# systemctl restart firewalld # 重启防火墙使配置生效

# systemctl enable firewalld # 设置防火墙开机启动

© 著作权归作者所有

共有 人打赏支持
小鸟也疯狂

小鸟也疯狂

粉丝 11
博文 32
码字总数 9097
作品 0
朝阳
程序员
NethServer 7 Alpha 2 发布,服务器 Linux 系统

NethServer 7 Alpha 2 发布,下载地址:nethserver-7.2.1511-alpha2-x8664.iso (730MB, pkglist). 该版本基于 CentOS 7,详细改进内容请看发行说明。 NethServer是基于CentOS的面向服务器的L...

oschina
2016/02/16
1K
1
Linux 基本防火墙设置和开放端口命令

防火墙开启和关闭(iptables): 即时生效,重启失效 重启生效 一般的服务器,如 centOS 7 之前的 centOS 版本和 redHat 7 之前的 Linux 版本 centOS 7 之后版本: CentOS 7.0默认使用的是 ...

forwy
2016/09/26
35
0
iptables实现网络防火墙(二)——SNAT与DNAT

前言 在前面的文章中,我们曾经简单的介绍过Linux内核中防火墙的基本概念,以及四表五链的相关知识,可参看 LINUX 防火墙介绍。 并且也介绍了如何在Linux环境中搭建一个能够过滤协议和端口的...

Eumenides_s
2017/10/23
0
0
安装完最小化RHEL/CentOS 7后需要做的30件事情

CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本。你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级、安装新的软件包、配置特定服务和应用...

dufei
06/28
0
0
Linux搭建lamp(Apache+PHP+Mysql环境)centos7.2版

我们更多的网站服务器是选择了Linux系统,这里建议你选择centos,这也是阿里云ecs推荐的系统,在服务器上比较推荐centos,特别对于新手,首选CentOS,并不是centos比Debian和ubuntu好,而是c...

麦可叔叔
2017/11/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

移除或自定义 WordPress 仪表盘欢迎面板

第一次登录 WordPress 后台仪表盘页面,默认都会显示 WordPress 的欢迎面板: 如果我们要移除这个面板,在主题的 functions.php 中添加下面的代码即可: 12 //移除 WordPress 仪表盘欢迎面...

james_laughing
17分钟前
0
0
HashMap实现原理及源码分析

HashMap实现原理及源码分析   哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,...

DemonsI
21分钟前
0
0
eggjs学习笔记

快速初始化 生成项目(要求最低的node版本8.x) npm i egg-init -gegg-init egg-example --type=simplecd egg-examplenpm i 启动项目 npm run dev 配置 环境配置会覆盖默认配置 config...

别人说我名字很长
24分钟前
1
0
Winform Timer控件时间间隔

sender as System.Timers.Timer).Interval = 23 * 60 * 60 * 1000.0;//将时间间隔改为23小时,23小时后重新发生timer_Elapsed事件。 //60000:时间间隔1分钟,300000:时间间隔5分钟,600000:...

笑丶笑
24分钟前
0
0
在win10系统下怎样快速切换任务视图

切换窗口:Alt + Tab 任务视图:Win + Tab (松开键盘界面不会消失) 切换任务视图:Win + Ctrl +左/右 创建新的虚拟桌面:Win + Ctrl + D 关闭当前虚拟桌面:Win + Ctrl + F4...

SummerGao
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部