linux防火墙常用控制协议,Linux防火墙iptables的基础

一.网络访问控制

1.Linux一般都是作为服务器系统使用,对外提供一些基于网络的服务

2.通常我们都需要对服务器进行一些网络访问控制,类似防火墙的功能

3.常见的访问控制包括:哪些IP可以访问服务器、可以使用哪些协议、哪些接口、是否需要对数据包进行修改等等。

4.如服务器可能受到来自某IP的攻击,这时就需要禁止所有来自该IP的访问。

5.Linux内核集成了网络访问控制功能,通过netfilter模块实现

二.IPTables

Linux内核通过netfilter模块实现网络访问控制功能,在用户层我们可以通过iptables程序对netfilter进行控制管理。

1.netfilter可以对数据进行允许、丢弃、修改操作

2.netfilter支持通过以下方式对数据包进行分类:

-源IP地址

-目标IP地址

-使用接口

-使用协议(TCP、UDP、ICMP等)

-端口号

-连接状态(new、ESTABLISHED、RELATED、INVALID)

三.Netfilter

1.filter(chain)用以对数据进行过滤

2.nat用以对数据包的源、目标地址进行修改

3.mangle用以对数据包进行高级修改

四.常用功能

1.作为服务器使用:

过滤到本机的流量   - input链、filter表

过滤到本机发出的流量 - output链、filter表

2.作为路由器使用:

过滤转发的流量 -forward链、filter表

对转发数据的源、目标IP进行修改(NAT功能) -PREROUTING、POSTROUTING、nat表

五.规则

1.iptables通过规则对数据进行访问控制

2.一个规则使用一行配置

3.规则按顺序排列

4.当收到、发出、转发数据包时,使用规则对数据包进行匹配,按规则顺序进行逐条匹配。

5.数据包按照第一个匹配上的规则执行相关动作:丢弃、放行、修改

6.没有匹配规则,则使用默认动作(每个chain拥有各自的默认动作)

通过iptables命令创建一个规则,一条规则包含以下几个部分:

iptables -t filter -A INPUT -s 192.168.1.1 -j DROP

表          链         匹配属性           动作

-表:规定使用的表(filter、nat、mangle,不同表有不同功能)

-链:规定过滤点

-匹配属性:规定匹配数据包的特征

-匹配后的动作:放行、丢弃、记录

六.基本操作

1.列出现有iptables规则:

iptables -L

2.插入一个规则:

iptables -I INPUT 3 -p tcp --dport 22 -j ACCEPT

3.删除一个iptables规则:

iptables -D INPUT 3 iptables -D INPUT -s 192.168.1.2 -j DROP

4.删除所有规则:

iptables -F

七.匹配参数

1.基于IP地址:

-s 192.168.1.1

-d 10.0.0.0/8

2.基于接口:

-i eth0

-o eth1

3.排除参数:

-s '!' 192.168.1.0/24

4.基于协议及端口:

-p tcp --dport 23

-p udp --sport 53

-p icmp

八.INPUT、OUTPUT

1.控制到本机的网络流量:

iptables -A INPUT -s 192.168.1.100 -j DROP

iptables -A INPUT -p tcp --dport 80 -j DROP

iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j DROP

iptables -A INPUT -i eth0 -j ACCEPT

九.FORWARD

当使用Linux作为路由(进行数据转发)设备使用的时候,可以通过定义forward规则来进行转发控制 如:

禁止所有192.168.1.0/24到10.1.1.0/24的流量:

iptables -A FORWARD -s 192.168.1.0/24 -d 10.1.1.0/24 -j DROP

十.NAT

1.NAT(Network Address Translation)网络地址转换是用来对数据包的IP地址进行修改的机制,NAT分为两种:

-SNAT 源地址转换,通常用于伪装内部地址(一般意义上的NAT)

-DNAT 目标地址转换,通常用于跳转

2.iptables中实现NAT功能的是NAT表

十一.常用NAT

1.通过NAT进行跳转:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-dest 192.168.1.10

2.通过NAT对出向数据进行跳转:

iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-dest 192.168.1.100:8080

3.通过NAT对数据流进行伪装

(一般意义上的NAT,将内部地址全部伪装为一个外部公网IP地址)

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

4.通过NAT隐藏源IP地址

iptables -t nat -A POSTROUTING -j SNAT --to-source 1.2.3.4

十二.配置文件

1.通过iptables添加的规则并不会永久保存,如果需要永久保存规则,则需要将规则保存在/etc/sysconfig/iptables配置文件中

2.可以通过以下命令将iptables规则写入配置文件:

service iptables save

3.CentOS/RHEL系统会带有默认iptables规则,默认保存在/etc/sysconfig/iptables中,保存自定义规则会覆盖这些默认规则

注意:

如果是远程管理一个Linux主机并修改iptables规则,则必须先允许来自客户端主机的SSH流量确保这是第一条iptables规则,否则可能会由于配置失误将自己锁在外面!

Linux防火墙iptables学习

http://blog.chinaunix.net/uid-9950859-id-98277.html 要在网上传输的数据会被分成许多小的数据包,我们一旦接通了网络,会有很多数据包进入,离开,或者经过 ...

Linux防火墙(Iptables)的开启与关闭

Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...

linux 防火墙iptables简明教程

前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

Linux防火墙iptables简明教程

前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

linux 防火墙 iptables实例讲解

端口为例): 显示现有规则: iptables –L -n 清空现有规则表: iptables -F 黑名单:先允许所有数据包通过,后逐条添加黑名单规则. iptables –A INPUT–p tc ...

linux 防火墙 iptables 目录

linux iptables 防火墙简介 Linux 防火墙:Netfilter iptables 自动化部署iptables防火墙脚本

Linux防火墙iptables介绍

介绍网络防火墙是通过一个或多个允许或拒绝的规则来过滤网络流量的网络设备或软件.网络防火墙还可以执行更复杂的任务,例如网络地址转换,带宽调整,提供加密隧道以及更多与网络流量相关的任务.而我们的任务就是需 ...

Linux防火墙iptables基础详解

原文来自于:https://www.linuxidc.com/Linux/2017-01/140073.htm(引用自) 一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分 ...

随机推荐

三天学会HTML5 之第一天

引言 HTML5 一直是非常热门的话题,因此此系列文章主要从一些基本功能开始讲起,逐步深入了解HTML5的新概念. 首先了解一些基本的术语和概念. SGML, HTML,XML三者之间的区别 Doc类 ...

IOS: 模型面数控制

你可以先试试 生成之后在虚拟机上运行一下就知道了 不过关键也看手机的好坏 場景 人物 面數的話越少越好(但要保持模型的完整)  貼圖解析度也不要太大 資料越少越好 //================ ...

Vim常用的快捷键列表

insert: i:insert at now position 在光标之前插入 a:insert append 在光标之后插入 o:下面新建一行插入 s:删除后插入 <<:delete ...>

Ninject 在 Winform、 Asp&period;net MVC中连络EntityFramework的应用

Ninject 在 Winform. Asp.net MVC中连络EntityFramework的应用( 注入同一个DbContext的应用名人名言:科学是老老实实的东西,它要靠许许多多人民的劳动和智 ...

fragment类onresume里面刷新操作处理

今天项目中涉及fragment中嵌套多个fragment,但是要根据tag去展示对应的fragment,而不是默认展示的第一个fragment,如果使用activity很容易想到onpause(),o ...

多服务器操作利器 - Polysh

多台服务器下的痛苦人生 分布式架构下的系统,可以说每个服务都是分别部署在多台服务器上的,有的甚至还需要多机房,在这种架构下可以说可以很好的做到了易扩展.容灾等功能.推荐的服务部署为一服务多机器.一机器 ...

jsp页面报错(一)

jsp页面报错 1.错误位置

JQUERY的属性进行操作

Jquery方式操作属性(attribute) $().attr(属性名称);   //获得属性信息值 $().attr(属性名称,值);    //设置属性的信息 $().removeAttr(属性 ...

problem:为什么会有options请求

为了安全考虑,浏览器对资源访问有同源限制的问题,也就是web应用程序只能访问和它同一协议同一域名同一端口的web应用程序上的资源. 通过跨域资源共享机制可以让资源在浏览器中访问与该资源本身不同域的资源 ...

HDU 2492 Ping pong (数状数组)

Ping pong Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值