iptables基础知识

ipfw  ipfwadmin

ipchains ipchains

netfilter  iptables

firewall

防火墙的工作原理:防火墙工作在网络的边缘位置

netfilter/iptables

一、防火墙结构

1、防火墙的规则表

raw:跟踪

mangle:标记

nat:转换

filter:过滤

2、防火墙的规则链

INPUT:入站

OUTPUT:出站

FORWARD:转发

PREROUTING:路由前

POSTROUTING:路由后

3、表和链的对应关系

raw: PREROUTING OUTPUT

mangle: all

nat: PREROUTING OUTPUT POSTROUTING

filter: INPUT OUTPUT FORWARD

4、规则表的应用顺序

raw - mangle - nat - filter

5、规则链的应用顺序

入站数据流:

PREROUTING - INPUT

出站数据流:

OUTPUT - POSTROUTING

转发数据流:

PREROUTING - FORWARD - POSTROUTING

6、规则的应用顺序

a、从上到下依次匹配,匹配即停止(LOG除外)

b、没有匹配项时,采用默认规则(policy规则,只有ACCEPT和DROP)

二、防火墙规则

1、语法:

iptables -t 表名 选项 链名 条件匹配 -j 控制类型

注意:

不指定表名时,默认是filter表

不指定链名时,默认是所有链

除非设置默认规则,否则必须指定条件

选项、链名、控制类型必须是大写

2、选项:

-A 链尾添加

-I 链首添加

-L 查看

-n 数字形式显示地址信息

-v 显示规则详细信息

--line-number 显示规则序号

-D 删除指定规则

-F 清空所有规则

-P 设置默认规则

-X 清空自定义的链

3、控制类型

ACCEPT 接受

DROP 丢弃

REJECT 拒绝

LOG  日志

REDIRECT 重定向

4、条件匹配

-p 协议类型

-s 源地址

-d 目标地址

-i 入站网卡

-o 出站网卡

--sport 源端口

--dport 目标端口

--icmp-type 指定icmp协议类型

一.SNAT

实现局域网主机共享单个公网IP地址接入Internet

前提条件:局域网各主机正确配置IP地址/子网掩码

局域网各主机正确设置默认网关地址

linux网关支持IP路由地址转发

网关添加俩块网卡,eth0:内网网卡 eth1:外网网卡

编写SNAT转换规则 source  [s??s] 来源地址

#iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to-source 218.29.30.31

二.MASQUERADE —— 地址伪装

适用于外网IP地址非固定的情况

对于ADSL拨号连接,接口通常为 ppp0、ppp1

将SNAT规则改为MASQUERADE即可

# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

三.DNAT策略的典型应用环境

在Internet中发布位于企业局域网内的服务器

DNAT策略的原理

目标地址转换,Destination Network Address Translation

修改数据包的目标地址

前提条件

局域网的Web服务器能够访问Internet

网关的外网IP地址有正确的DNS解析记录

Linux网关支持IP路由转发

实现方法

编写DNAT转换规则

# iptables -t nat -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.6

发布时修改目标端口

在DNAT规则中以“IP:Port”的形式指定目标地址

# iptables -t nat -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp --dport  2346 -j DNAT --to-destination 192.168.1.6:22

保存和恢复 iptables 规则

防火墙规则只在计算机处于开启状态时才有效。如果系统被重新引导,这些规则就会自动被清除并重设。要保存规则以便今后载入,请使用以下命令:

sbin/service iptables save

保存在 /etc/sysconfig/iptables 文件中的规则会在服务启动或重新启动时(包括机器被重新引导时)被应用。

导出(备份)规则 iptables-save 工具

iptables-save > 1.ip

导入(还原)规则 iptables-restore 工具

iptables-restore < 1.ip

例子

常见的通用匹配条件

协议匹配:-p 协议名

地址匹配:-s 源地址、-d 目的地址

接口匹配:-i 入站网卡、-o 出站网卡

# iptables -A FORWARD -s 192.168.1.11 -j REJECT

# iptables -I INPUT -s 10.20.30.0/24 -j DROP

# iptables -I INPUT -p icmp -j DROP

# iptables -A FORWARD -p ! icmp -j ACCEPT

# iptables -A INPUT -i eth1 -s 192.168.0.0/16 -j DROP

# iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

# iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j DROP

常用的隐含匹配条件

端口匹配:--sport 源端口、--dport 目的端口

ICMP类型匹配:--icmp-type ICMP类型

# iptables -A FORWARD -s 192.168.4.0/24 -p udp --dport 53 -j ACCEPT

# iptables -A INPUT -p tcp --dport 20:21 -j ACCEPT

# iptables -A INPUT -p icmp --icmp-type 8 -j DROP

# iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT

# iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT

# iptables -A INPUT -p icmp -j DROP

常用的显式匹配条件

多端口匹配:-m multiport  --sport 源端口列表

-m multiport  --dport 目的端口列表

IP范围匹配:-m iprange --src-range IP范围

MAC地址匹配:-m mac –mac1-source MAC地址

状态匹配:-m state --state 连接状态

# iptables -A INPUT -p tcp -m multiport --dport 25,80,110,143 -j ACCEPT

# iptables -A FORWARD -p tcp -m iprange --src-range 192.168.4.21-192.168.4.28 -j ACCEPT

# iptables -A INPUT -m mac --mac-source 00:0c:29:c0:55:3f -j DROP

# iptables -P INPUT DROP

# iptables -I INPUT -p tcp -m multiport --dport 80 -j  ACCEPT

# iptables -I INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

时间: 2024-10-08 21:42:25

iptables基础知识的相关文章

iptables基础知识详解

iptables防火墙可以用于创建过滤(filter)与NAT规则.所有Linux发行版都能使用iptables,因此理解如何配置 iptables将会帮助你更有效地管理Linux防火墙.如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工 作原理,你会发现其实它很简单. 首先介绍iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而chains又由rules组

iptables基础概念

1.基础概念. 防火墙,其实说白了讲,用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP.数据进行检测. 目前市面上比较常见的有3.4层的防火墙,叫网络层的防火墙,还有7层的防火墙,其实是代理层的网关. 对于TCP/IP的七层模型来讲,我们知道第三层是网络层,三层的防火墙会在这层对源地址和目标地址进行检测.但是对于七层的防

Linux防火墙工具iptables基础介绍

iptables基础知识说明: 一.规则链:规则链是防火墙规则/策略的集合 INPUT:处理入站数据包 OUTPUT:处理出站数据包 FORWARD:处理转发数据包 POSTROUTING链:在进行路由选择后处理数据包 PREROUTING链:在进行路由选择前处理数据包 二.规则表:规则表是规则链的集合(优先顺序:raw.mangle.nat.filter) raw表:确定是否对该数据包进行状态跟踪(OUTPUT.PREROUTING) mangle表:为数据包设置标记(PREROUNTING.

iptables基础一

1. iptables基础知识 2. iptables命令基本用法及实例 ?? ?? 1. iptables基础知识 ??防火墙的实现方式与分类??防火墙的实现方式分硬件与软件两种??按防护范围分:????- 主机防火墙:工作在主机边缘处的出入口,为单台主机提供防范????- 网络防火墙:工作在网络的边缘处出入口,为整个网络提供防护??数据包在本机的流向????报文由传送到本机网卡(PREROUTING链),由内核接收并放到接收缓存区(内存上)中.每当进来一个网络报文,系统就会向内核发送一个中断

Keepalived基础知识

大纲: 一.什么是Keepalived? 二.VRRP协议简介. 三.Keepalived原理. 四.Keepalived配置文件详解. 五.Keepalived配置示例. 一.什么是Keepalived? 什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,那说到keepalived时不得不说的一个协议就是VRRP协议,可以说这个协议就是

Linux基础知识(2)

Linux基础知识: 一.程序管理: (1)程序的组成部分: (2)二进制程序: (3)配置文件: (4)库文件: (5)帮助文件: 二.程序包管理器: X: (1)程序的组成文件打包成一个或有限几个文件: (2)安装: (3)卸载: (4)查询: 三.安装Linux: 虚拟机安装Linux系统 需要设置计算机的CPU, 内存, IO等 四.虚拟化软件程序: vmwareworkstation和virtualbox虚拟机都可以安装系统 五.CentOS的镜像站点: http://mirrors.

hadoop学习笔记——基础知识及安装

1.核心 HDFS  分布式文件系统    主从结构,一个namenoe和多个datanode, 分别对应独立的物理机器 1) NameNode是主服务器,管理文件系统的命名空间和客户端对文件的访问操作.NameNode执行文件系统的命名空间操作,比如打开关闭重命名文件或者目录等,它也负责数据块到具体DataNode的映射 2)集群中的DataNode管理存储的数据.负责处理文件系统客户端的文件读写请求,并在NameNode的统一调度下进行数据块的创建删除和复制工作. 3)NameNode是所有

LVS集群基础知识

LVS集群基础知识 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一. 优点 1.开源,免费 2.在网上能找到一些相关技术资源 3.具有软件负载均衡的一些优点 缺点 1.最核心的就是没有可靠的支持服务,没有人对其结果负责: 2.功能比较简单,支持复杂应用的负载均衡能力较差,如算法较少等: 3.开启隧道方式需重编译内核: 4.配置复杂: 5.主要应用于LINUX

linux基础知识的总结

例如以下内容是我对linux基础知识的总结,由于本人在初期学习linux的时候走了不少的弯路,对于基础的掌握耗费了不少的时间,所以为了后来者对linux的基础部分有个清晰的了解,特对基础知识进行了总结,由于水平有限.难免有疏忽或者不准确的地方.希望大家可以直接指出来,我会及时改正.一切为了知识的传播.^_^ ? *********************************************************************************************