系统安全-Firewall
Netfilter/iptables是与最新的2.6.x版本Linux内核集成的ip信息包过滤系统。如果Linux系统连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该系统有理由在Linux系统上更好的控制IP信息包过滤和防火墙配置。
虽然Netfilter/iptablesIP信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter和iptables组成。netfilter组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤组成,这些表包含内核用来控制信息包过滤处理的规则集。iptables组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。
iptables流程图
Netfilter/iptablesIP信息包过滤系统是一种功能强大的工具,可以用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在Linux内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。

iptables四张表五条链

filter:表用来过滤数据
nat:转换包的源地址或目标地址
DNAT
SNAT
MASQUERADE
mangle:使用mangle匹配来改变包的特性
TOS
TTL
MARK
raw:可以对收到的数据包在链接跟踪前进行处理。


iptables语法结构

iptables基本应用
- 基于IP地址
- 基于服务端口号
iptables状态机制
Netfilter/iptables的最大优点是它可以配置有状态的防火墙。有状态的防火墙能够制定并记住为发送或接受信息包所建立的连接的状态。防火墙可以从信息包的链接跟踪状态获得该消息。在决定新的信息包过滤时,防火墙所使用的这些状态信息可以增加其效率和速度。
stata基于链接的状态
这里有四种有效状态,名称分别为ESTABLISHED、INVALID、NEW和RELATED。
NEW意味着该信息包已经或将启动新的链接,或者它与尚未用于发送和接收信息包的连接相关联。
RETABLISHED指出该信息包属于已建立的连接,该链接一直用于发送和接收信息包并且完全有效。
RELATED表示该信息包正在启动新连接,以及它与已建立的链接相关联。
INVALID状态指出该信息包与任何已知的流或连接都不相关联,它可能包含错误的数据或头。
iptables NAT简介
网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法ip地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。
Firewalled基础
firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务;另外firewalled增加了“zone”的概念。
firewalld将所有incoming流量划分成zone,每个zone都具有自己的一套规则。
firewalld在判断incoming流量使用那一个zone,使用以下规则:
- 如果incoming packets的源地址与zone的某个源规则相匹配,则使用该区域
- 如果incoming packets 的接口与zone的filter设置相匹配,则使用该区域
- 如果使用default zone。如果没有配置,default zone为public
trusted
允许所有incoming/outgoing taiffic
home
除非与outgoing taiffic相关,或与ssh,mdns,ipp-client,samba-client,dhcpv6-client这些预定义服务匹配,否则拒绝incoming taiffic。
internal
除非与outgoing taiffic相关,或与ssh,mdns,ipp-client,samba-client,dhcpv6-client这些预定义的服务匹配,否则拒绝incoming taiffic。(开始时与home zone相同)
work
除非有outgoing taiffic相关,或与ssh,ipp-client,dhcpv6-client这些预定义服务相匹配,否则拒绝incoming taiffic
public
除非与outgoing taiffic相关,或与ssh,dhcpv6-client这些预定义服务相匹配,否则拒绝incoming taiffic。(新添加的网络接口默认为zone)
external
除非与outgoing taiffic相关,或与ssh预定义服务匹配,否则拒绝incoming taiffic。将通过此zone转发的Ipv4 outgoing taiffic 的源地址伪装成outgoing网络接口的IPV4地址。
dmz
除非与outgoing taiffic相关,或与ssh预定义服务匹配,否则拒绝incoming taiffic。
block
除非与outgoing taiffic先关,否则拒绝所有incoming taiffic。
drop
除非与outgoing taiffic相关,否则丢弃所有incoming taiffic。(不产生包含ICMP错误的响应)
Firewalld配置
使用三种方式来管理firewalld
- 使用命令行工具firewalld-cmd
- 使用图形工具firewalld-config
- 使用/etc/firewalld/中的配置文件(不建议直接编辑配置文件,但使用配置管理工具时,配置配置会很有用的)
使用firewalld-cmd,几乎所有命令都对当前状态生效(触发指定---permanent),如果没有使用----zone,使用默认zone。
配置防火墙时,通常会使用 --permanent配置所有更改,然后使用firewalld-充满电 --reload激活这些更改。测试可能有危险的新规则时,可以省略 -permanent并添加-题么呕吐=<TIME in SECONDS> 一定时间后自动删除某个规则,来方式意外锁定某个系统。
Firewalld 富规则
firewalld 的rich rule提供了一种表达性语言,通过这种语言可以表达firewalld基本语法中未涵盖的自定义防火墙规则。例如。仅允许某个特定ip(而非通过某个zone路由的所有IP地址)连接到服务。
Firewalld伪装和端口转发
。。。。。具体请百度。没测试。等测试了之后会在博客补齐
系统安全-Firewall的更多相关文章
- Linux系统运维之路
九月份开始,半年内搞定运维,博客会慢慢的更新,vim编辑器,Nginx配置文件优化 运维基础 运维基础-Linux发展史.安装.基本操作 运维基础-用户和组管理 运维基础-文件权限管理 运维基础-进程 ...
- 第四周LINUX 学习笔记
内核编译丶sed丶awk Linux:单内核 模块化:动态 /lib/modules lsmod,modinfo,modprobe,insmod,,modprobe -r , ...
- Data Center手册(2): 安全性
有个安全性有下面几种概念: Threat:威胁 Vulnerability: 安全隐患 Attack: 攻击 有关Threat 常见的威胁有下面几种 DoS(Denial of Service拒绝服务 ...
- 利用putty在window下控制linux的terminal、ftp传输
google搜索putty,可能要FQ才能进入官方网站下载. 首先将虚拟机下的linux的网络适配器设置成桥接模式,并且将linux系统的firewall和iptables(防火墙关闭). firew ...
- 关于putty连接百度云linux服务器那些事
看有活动,30元半年的百度云服务器,就直接买了当练手的玩 买完之后,发现使用putty不能直接连接百度云的centos服务器, 用了putty和ssh都不能连接 试了好几次,都打算尝试用秘钥对的形式了 ...
- Linux操作系统CentOS7.2发行版本的安装与配置(安装是选择服务器类型)
原文地址:http://1130739.blog.51cto.com/1120739/1738791 由于CentOS 7出来不久,对于这个版本的系统安装与配置的教程较少,今天就索性介绍一下CentO ...
- linux 防火墙基本使用
写在最前面 由于工作后,使用的Linux就是centos7 所以,本文记录是是centos7的防火墙使用. 从 centos7 开始,系统使用 firewall 进行防火墙的默认管理工具. 基本使用 ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...
- win+ r 命令
Win 键+R calc:计算器 notepad:记事本 mspaint:画图 cmd:控制台 control:控制面板 desk.cpl:打开控制面板中的桌面设置 main.cpl:鼠标设置 ine ...
随机推荐
- 建立RSA协商加密的安全信道
在基于TCP长连接的CS链路中,如何保证数据流的安全性是开发者最关注的问题之一.本文深入浅出的给大家介绍一下在TCP连接中,使用RSA协商加密的方式,建立一个安全加密的通信链路,保证数据传输的安全性. ...
- BZOJ1189 [HNOI2007]紧急疏散evacuate 【二分 + 网络流】
题目 发生了火警,所有人员需要紧急疏散!假设每个房间是一个N M的矩形区域.每个格子如果是'.',那么表示这是一 块空地:如果是'X',那么表示这是一面墙,如果是'D',那么表示这是一扇门,人们可以从 ...
- 洛谷P4175 - [CTSC2008]网络管理
Portal Description 给出一棵\(n(n\leq8\times10^4)\)个点的带点权的树,进行\(m(m\leq8\times10^4)\)次操作,操作有两种: 修改一个点的点权. ...
- P2420 让我们异或吧 (树链剖分,异或前缀和)
题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中-xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能 ...
- Linux中将一个GBK编码的文件转换成UTF-8编码文件
Linux中将一个GBK编码的文件转换成UTF-8编码文件 使用iconv 命令iconv -f GBK -t UTF-8 file1 -o file2 输出另一个文件,然后再覆盖源文件内容
- 【NOIP2016后记】
身在浙江,又跪一年 你哪次正式比赛没跪??? 有的人初三联赛一等前途光明,比如衲姐,周驿东 有的人高一联赛一等为时未晚,比如MG,罗爷爷,陈冲 有的人高二联赛一等纵情声色,比如鸟爷爷,小鸡 有的人高三 ...
- 36深入理解C指针之---结构体的内存处理
一.有关结构体的内存处理包括,结构体指针和结构体成员指针的内存分配.结构体成员的数据对齐.结构体的内存释放 1.定义:与自定义数据类型(结构体)有关的内存分配.大小和释放问题 2.特征: 1).用内存 ...
- 写一简单kernel心得
当人按下笔记本开机键时.cpu的cs寄存器(基址)跟ip(偏移量)寄存器加电.被强制初始化为(jmp xxx:xxx) 跳转到bios所在的地址. 接着bios开机自检(这个不需要了解,只需了解最后跳 ...
- Linux 之 LNMP服务器搭建-前期准备
LNMP服务器搭建-前期准备 参考教程:[千峰教育] 系统环境: 系统:centos 6.8. 软件安装位置: (1)软件源代码包存放位置:/lnmp/src 命令:mkdir -p /lnmp/sr ...
- 编译 Android 版本的 Opus 音频编解码库的方法
Opus 音频编解码库是 Speex 音频编解码库的下一代版本,从编解码性能以及质量上来讲都有了长足的进步.Opus 的编译非常简单,但是官方并未给出详细的 Android 版本编译指南,查找了大量资 ...