文档章节

linux 防火墙命令

林伟琨
 林伟琨
发布于 2016/04/18 09:31
字数 978
阅读 6
收藏 0

启动FirewallD服务:

?
1
2
systemctl enable firewalld.service        #设置开机启动
systemctl start firewalld.service            #开启服务

查看防火墙状态:

?
1
systemctl status firewalld

1. 区域管理

1.1. 网络区域简介

通过将网络划分成不同的区域,制定出不同区域之间的访问控制策略来控制不同程序区域间传送的数据流。例如,互联网是不可信任的区域,而内部网络是高度信任的区域。网络安全模型可以在安装,初次启动和首次建立网络连接时选择初始化。该模型描述了主机所连接的整个网络环境的可信级别,并定义了新连接的处理方式。有如下几种不同的初始化区域:

  • 阻塞区域(block):任何传入的网络数据包都将被阻止。

  • 工作区域(work):相信网络上的其他计算机,不会损害你的计算机。

  • 家庭区域(home):相信网络上的其他计算机,不会损害你的计算机。

  • 公共区域(public):不相信网络上的任何计算机,只有选择接受传入的网络连接。

  • 隔离区域(DMZ):隔离区域也称为非军事区域,内外网络之间增加的一层网络,起到缓冲作用。对于隔离区域,只有选择接受传入的网络连接。

  • 信任区域(trusted):所有的网络连接都可以接受。

  • 丢弃区域(drop):任何传入的网络连接都被拒绝。

  • 内部区域(internal):信任网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。

  • 外部区域(external):不相信网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。

注:FirewallD的默认区域是public。

1.2. 显示支持的区域列表

?
1
firewall-cmd --get-zones

1.3. 设置为家庭区域

?
1
firewall-cmd --set-default-zone=home

1.4. 查看当前区域

?
1
firewall-cmd --get-active-zones

1.5. 设置当前区域的接口

?
1
firewall-cmd --get-zone-of-interface=enp03s

1.6. 显示所有公共区域(public)

?
1
firewall-cmd --zone=public --list-all

1.7. 临时修改网络接口(enp0s3)为内部区域(internal)

?
1
firewall-cmd --zone=internal --change-interface=enp03s

1.8. 永久修改网络接口enp03s为内部区域(internal)

?
1
firewall-cmd --permanent --zone=internal --change-interface=enp03s

2. 服务管理

2.1. 显示服务列表

Amanda, FTP, Samba和TFTP等最重要的服务已经被FirewallD提供相应的服务,可以使用如下命令查看:

?
1
firewall-cmd --get-services

2.2. 允许SSH服务通过

?
1
firewall-cmd --enable service=ssh

2.3. 禁止SSH服务通过

?
1
firewall-cmd --disable service=ssh

2.4. 打开TCP的8080端口

?
1
firewall-cmd --enable ports=8080/tcp

2.5. 临时允许Samba服务通过600秒

?
1
firewall-cmd --enable service=samba --timeout=600

2.6. 显示当前服务

?
1
firewall-cmd --list-services

2.7. 添加HTTP服务到内部区域(internal)

?
1
2
firewall-cmd --permanent --zone=internal --add-service=http
firewall-cmd --reload     #在不改变状态的条件下重新加载防火墙

3. 端口管理

3.1. 打开端口

?
1
2
#打开443/TCP端口
firewall-cmd --add-port=443/tcp
?
1
2
3
4
5
#永久打开3690/TCP端口
firewall-cmd --permanent --add-port=3690/tcp
#永久打开端口好像需要reload一下,临时打开好像不用,如果用了reload临时打开的端口就失效了
#其它服务也可能是这样的,这个没有测试
firewall-cmd --reload
?
1
2
#查看防火墙,添加的端口也可以看到
firewall-cmd --list-all

4. 直接模式

FirewallD包括一种直接模式,使用它可以完成一些工作,例如打开TCP协议的9999端口

?
1
2
firewall-cmd --direct -add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT
firewall-cmd --reload

5. 关闭服务的方法

你也可以关闭目前还不熟悉的FirewallD防火墙,而使用iptables,命令如下:

?
1
2
3
4
5
systemctl stop firewalld
systemctl disable firewalld
yum install iptables-services
systemctl start iptables
systemctl enable iptables

本文转载自:http://my.oschina.net/fhd/blog/413945

共有 人打赏支持
林伟琨
粉丝 9
博文 106
码字总数 38738
作品 0
厦门
后端工程师
76.linux 常用命令 记录(6.7版本)

1.Linux版本 centOs 6.7 1.1 准备工作 (1)安装虚拟机 : (2)Linux系统 : (3)CRT(Linux客户端): 2. 常用命令 (1)pwd:查看现在所在位置 root账号默认在进入后的位置在 root文件夹下...

Lucky_Me
01/01
0
0
关于win7与虚拟机LINUX互通问题

首先,介绍如何在VMWARE中设置LINUX的网络。一般网络选项有Bridged, NAT, host-only几种。本次以我实现的host-only为样本来做详细说明,如下图: 在选择host-only模式之后,打开VMWARE的网络...

Sandy_wu
2013/03/19
0
0
如何在 FreeBSD 上设置 PF 防火墙来保护 Web 服务器

我是从 Linux 迁移过来的 FreeBSD 新用户,Linux 中使用的是 netfilter 防火墙框架(LCTT 译注:netfilter 是由 Rusty Russell 提出的 Linux 2.4 内核防火墙框架)。那么在 FreeBSD 上,我该...

05%
09/15
0
0
linux远程拷贝及防火墙设置

系统文件: scp远程copy命令:从linux服务器A的/root/目录下拷贝文件MySQL-server-5.6.15-1.linuxglibc2.5.x8664.rpm到linux服务器B的 /usr/local/目录: 登录服务器B,执行下面命令: 例如:...

xiejunbo
2014/10/27
0
0
如何暂时禁用 iptables 防火墙

了解如何在 Linux 中暂时禁用 iptables 防火墙来进行故障排除。还要学习如何保存策略以及如何在启用防火墙时恢复它们。 有时你需要关闭 iptables 防火墙来做一些连接故障排除,然后你需要重新...

19%
06/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Shiro | 实现权限验证完整版

写在前面的话 提及权限,就会想到安全,是一个十分棘手的话题。这里只是作为学校Shiro的一个记录,而不是,权限就应该这样设计之类的。 Shiro框架 1、Shiro是基于Apache开源的强大灵活的开源...

冯文议
今天
1
0
linux 系统的运行级别

运行级别 运行级别 | 含义 0 关机 1 单用户模式,可以想象为windows 的安全模式,主要用于修复系统 2 不完全的命令模式,不含NFS服务 3 完全的命令行模式,就是标准的字符界面 4 系统保留 5 ...

Linux学习笔记
今天
2
0
学习设计模式——命令模式

任何模式的出现,都是为了解决一些特定的场景的耦合问题,以达到对修改封闭,对扩展开放的效果。命令模式也不例外: 命令模式是为了解决命令的请求者和命令的实现者之间的耦合关系。 解决了这...

江左煤郎
今天
3
0
字典树收集(非线程安全,后续做线程安全改进)

将500W个单词放进一个数据结构进行存储,然后进行快速比对,判断一个单词是不是这个500W单词之中的;来了一个单词前缀,给出500w个单词中有多少个单词是该前缀. 1、这个需求首先需要设计好数据结...

算法之名
昨天
15
0
GRASP设计模式

此文参考了这篇博客,建议读者阅读原文。 面向对象(Object-Oriented,OO)是当下软件开发的主流方法。在OO分析与设计中,我们首先从问题领域中抽象出领域模型,在领域模型中以适当的粒度归纳...

克虏伯
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部