前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iptables系列教程(一)| iptables入门篇

iptables系列教程(一)| iptables入门篇

作者头像
山月
发布2020-05-26 10:53:07
22K0
发布2020-05-26 10:53:07
举报

前言

在早期的 Linux 系统中,默认使用的是 iptables 配置防火墙。尽管新型 的 firewalld 防火墙已经被投入使用多年,但是大量的企业在生产环境中依然出于各种原因而继续使用 iptables。考虑到 iptables 在当前生产环境中还具有顽强的生命力,我觉得还是有必要再好好地讲解一下这项技术。

iptables 简介

1、什么是iptables?

iptables 是 Linux 防火墙工作在用户空间的管理工具,是 netfilter/iptablesIP 信息包过滤系统是一部分,用来设置、维护和检查 Linux 内核的 IP 数据包过滤规则。

2、iptables特点

iptables 是基于内核的防火墙,功能非常强大;iptables 内置了filternatmangle三张表。所有规则配置后,立即生效,不需要重启服务。

iptables 组成

iptables的结构是由表(tables)组成,而tables是由链组成,链又是由具体的规则组成。因此我们在编写iptables规则时,要先指定表,再指定链。tables的作用是区分不同功能的规则,并且存储这些规则。

注意:raw表:用于处理异常,包括的规则链有:prerouting,output;一般使用不到。

总体说来,iptables是由“三表五链”组成。

1、三张表介绍:

  • filter

负责过滤数据包,包括的规则链有:inputoutputforward

  • nat

用于网络地址转换(IP、端口),包括的规则链有:preroutingpostroutingoutput

  • mangle

主要应用在修改数据包、流量整形、给数据包打标识,默认的规则链有:INPUTOUTPUTforwardPOSTROUTINGPREROUTING

优先级:mangle > nat > filter

2、五条链:

  • input

匹配目标IP是本机的数据包

  • output

出口数据包 , 一般不在此链上做配置

  • forward

匹配流经本机的数据包

  • prerouting

修改目的地址,用来做 DNAT 。如:把内网中的 80 端口映射到互联网端口

  • postrouting

修改源地址,用来做 SNAT。如:局域网共享一个公网IP接入Internet。

iptables 处理数据包流程:

  1. 当一个数据包进入网卡时,它首先进入 PREROUTING 链,内核根据数据包目的 IP 判断是否需要转送出去。
  2. 如果数据包就是进入本机的,它就会沿着图向下移动,到达 INPUT 链。数据包到了 INPUT 链后,任何进程都会收到它。
  3. 本机上运行的程序可以发送数据包,这些数据包会经过 OUTPUT 链,然后到达POSTROUTING 链输出。
  4. 如果数据包是要转发出去的,且内核允许转发,数据包就会如图所示向右移动,经过 FORWARD 链,然后到达 POSTROUTING 链输出。

总结:整体数据包分两类:1、发给防火墙本身的数据包 ;2、需要经过防火墙的数据包

iptables 安装

1、关闭 firewall

代码语言:javascript
复制
systemctl stop firewalld //关闭firewalld服务
systemctl disable firewalld //禁止firewalld开机自启动

2、安装 iptables

代码语言:javascript
复制
yum -y install iptables-services

3、启动服务

代码语言:javascript
复制
systemctl start iptables //启动iptables
systemctl start iptables //设置iptables开机自启动

4、配置文件位置

代码语言:javascript
复制
[root@LB-01 ~]# ll /etc/sysconfig/iptables
-rw------- 1 root root 1027 May 12 18:40 /etc/sysconfig/iptables

最后给大家看下iptables配置实例:

今天只是 iptables 入门篇,下个章节再为大家详细介绍iptables语法规则及企业实战案例。相信看完明天教程,多加练习后您不仅能看懂上面的配置实例,还可以利用iptables打造出铜墙铁壁级服务器~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈成长之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • iptables 简介
      • 1、什么是iptables?
    • iptables 组成
      • 1、三张表介绍:
      • 2、五条链:
    • iptables 处理数据包流程:
      • iptables 安装
        • 1、关闭 firewall
        • 2、安装 iptables
        • 3、启动服务
        • 4、配置文件位置
    相关产品与服务
    弹性公网 IP
    弹性公网 IP(Elastic IP,EIP)是可以独立购买和持有,且在某个地域下固定不变的公网 IP 地址,可以与 CVM、NAT 网关、弹性网卡和高可用虚拟 IP 等云资源绑定,提供访问公网和被公网访问能力;还可与云资源的生命周期解耦合,单独进行操作;同时提供多种计费模式,您可以根据业务特点灵活选择,以降低公网成本。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档