iptables简单了解
简介
Iptables是unix/linux自带的一款优秀且开源的基于包过滤的防火墙工具。
怎么用
可以用来做主机防火墙。
可以做局域网共享上网。
可以做ip及端口映射。
Iptables工作流程
iptables分为4表5链
表:
filter:INPUT,OUTPUT,FORWARD
NAT:POSTROUTING,PREROUTING,OUTPUT
mangle:INPUT,OUTPUT,FORWARD,POSTROUTING,PREROUTING
raw:PREROUTING,OUTPUT
链:
INPUT:进入主机的数据包。
OUTPUT: 流出主机的数据包。
FORWARD: 流经主机的数据包。
PREROUTING: 进入服务器最先经过的链,用来做NAT端口或ip映射
POSTROUTING: 流出服务器最后经过的链,NAT共享上网。 局域网共享上网。
4个表:filter,nat,mangle,raw,默认表是filter(没有指定表的时候就是filter表)。表的处理优先级:raw>mangle>nat>filter。
filter:一般的过滤功能
nat:用于nat功能(端口映射,地址映射等)
mangle:用于对特定数据包的修改
raw:优限级最高,设置raw时一般是为了不再让iptables做数据包的链接跟踪处理,提高性能
RAW 表只使用在PREROUTING链和OUTPUT链上,因为优先级最高,从而可以对收到的数据包在连接跟踪前进行处理。一但用户使用了RAW表,在某个链 上,RAW表处理完后,将跳过NAT表和 ip_conntrack处理,即不再做地址转换和数据包的链接跟踪处理了.
RAW表可以应用在那些不需要做nat的情况下,以提高性能。如大量访问的web服务器,可以让80端口不再让iptables做数据包的链接跟踪处理,以提高用户的访问速度。

iptables命令
[root@linux ~]# iptables -A INPUT -p tcp -m tcp --dport -j ACCEPT #添加filter表,开放21端口 [root@linux ~]# iptables -t nat -A POSTROUTING -s 192.168.10.0/ -j MASQUERADE #添加nat表,将源地址是 192.168.10.0/ 的数据包进行地址伪装 [root@linux ~]# iptables -I INPUT -p tcp -m tcp --dport -j ACCEPT #添加filter表,开放20端口,并且插入到指定位置 [root@linux ~]# iptables -L -n --line-number
Chain INPUT (policy DROP)
num target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
DROP icmp -- 0.0.0.0/ 0.0.0.0/ icmp type
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: #-I指定位置插的
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
DROP all -- 0.0.0.0/ 0.0.0.0/ state INVALID,NEW
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt: #-A默认插到最后 Chain FORWARD (policy ACCEPT)
num target prot opt source destination Chain OUTPUT (policy ACCEPT)
num target prot opt source destination [root@linux ~]# iptables -L -n --line-number |grep #查看filter表,--line-number可以显示规则序号,在删除的时候比较方便 [root@linux ~]# iptables -t nat -vnL POSTROUTING --line-number #查看nat表
Chain POSTROUTING (policy ACCEPT packets, bytes)
num pkts bytes target prot opt in out source destination
MASQUERADE all -- * * 192.168.10.0/ 0.0.0.0/ [root@linux ~]# iptables -R INPUT -j DROP #将规则3改成DROP [root@linux ~]# iptables -D INPUT #删除input的第3条规则 [root@linux ~]# iptables -t nat -D POSTROUTING #删除nat表中postrouting的第一条规则 [root@linux ~]# iptables -F INPUT #清空 filter表INPUT所有规则 [root@linux ~]# iptables -F #清空所有规则 [root@linux ~]# iptables -t nat -F POSTROUTING #清空nat表POSTROUTING所有规则 [root@linux ~]# iptables -P INPUT DROP #设置filter表INPUT默认规则是 DROP 把所有通过eth0这个网卡发往地址122.225.97.111的包都转发到局域网的中192.168.1.130这台机器上.它也可以配全--string功能更强大
[root@linux ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp\
--dst 122.225.97.111 --dport -j DNAT --to-destination 192.168.1.130: 将匹配到img.51yip.com的请求转到局域网的192.168.1.136这台机器上
[root@linux ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport \
-m string --string "img.51yip.com" --algo bm -j DNAT --to-destination 192.168.1.136: snat可以让本地ip地址伪装成其他机器的ip地址,或者是公网IP,假如我有三台机器,一台能上外网,另外二台却不可以.不能上网的机器可以伪装成可上网的那机器的IP
[root@linux ~]# iptables -t nat -I POSTROUTING -j SNAT -s 192.168.10.0/ --to-destination 192.168.1.108
iptables简单了解的更多相关文章
- iptables简单配置
iptables简单配置 分类: Linux 安全2010-10-20 16:56 4241人阅读 评论(0) 收藏 举报 input防火墙tcpfilterubuntuservice # iptab ...
- iptables简单使用
1.安装iptables yum install iptables-services 2.iptables简单使用 iptables防火墙文件路径/etc/sysconfig/iptables sys ...
- [ 总结 ] web server iptables 简单配置
[root@server ~]# iptables -F [root@server ~]# iptables -X [root@server ~]# iptables -A INPUT -m stat ...
- iptables 简单介绍及应用 Linux防火墙
iptables 即 Linux防火墙 的简单介绍及使用 iptables生效位置如下图: 其中, 网络防火墙也可以使用一台启用了iptables的Linux主机代替; 路由器或集线器等设施在拓扑中省 ...
- iptables 简单配置
通过命令 netstat -tnl 可以查看当前服务器打开了哪些端口 Ssh代码 netstat -tnl 查看防火墙设置 Ssh代码 iptables -L -n 开放 ...
- Linux iptables简单配置
#!/bin/sh#modprobe ipt_MASQUERADEmodprobe ip_conntrack_ftpmodprobe ip_nat_ftpiptables -Fiptables -t ...
- iptables简单用法
iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 &l ...
- iptables简单应用
可以修改/etc/rc.d/boot.local让规则重启后也能生效,如: /sbin/iptables -F /sbin/iptables -A INPUT -i eth0 -p tcp --spo ...
- iptables简单规则记录
先来一句:好记性不如烂笔头! 1.iptables简介 iptables是基于包过滤的防火墙,它主要工作在osi模型的2,,4层,也可以工作在7层(iptables + squid) 2.原理 防火墙 ...
随机推荐
- Mysql常用索引及优化
索引是帮助我们快速获取数据的数据结构.索引是在存储引擎中实现的,因此不同存储引擎的索引也不同.这里只介绍InnoDB存储索引所支持的BTree索引: 一.索引类型 为了方便举例子,先创建表person ...
- DM8168 dead JTAG clock
针对新板调试,不针对EVM板. TI XDS560连上DM8168 20pin仿真接口 launch 8168.ccxml,右击CortexA8,选择Connect Target 出现错误例如以下: ...
- GPS时间
GPS信息里面包含一个时间戳. phonegap(即cordova)的地理位置API Geolocation 提供了对设备GPS传感器的访问,返回的数据中,除了坐标,还有一个时间戳timestamp. ...
- springmvc20170322
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" ...
- XAML实例教程系列 - 对象和属性(二)
XAML实例教程系列 - 对象和属性 2012-05-22 14:18 by jv9, 1778 阅读, 6 评论, 收藏, 编辑 在前一篇已经介绍XAML概念:“XAML语言是Extensible ...
- 洛谷 P1498 南蛮图腾 —— 模拟
题目:https://www.luogu.org/problemnew/show/P1498 大约一年前该做的题...现在来填一下坑: 然而不怎么会模拟!还滚去看TJ了: 就是翻倍复制: \ 这个符号 ...
- IP V4 和 IP V6 初识
IP V4 是互联网协议的第四版 地址长度为32位,4字节,用十进制表示 格式为:A.B.C.D 最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展 IP V6 是互联网协议的I ...
- [NOI1997] 积木游戏(dp)
COGS 261. [NOI1997] 积木游戏 http://www.cogs.pro/cogs/problem/problem.php?pid=261 ★★ 输入文件:buildinggame ...
- [App Store Connect帮助]三、管理 App 和版本(2.4)输入 App 信息:提供加密出口合规证明文稿
上传至 App Store Connect 的 App 被上传至位于美国的 Apple 服务器.如果您提交 App 的目的是为了在 App Store 上分发您的 App 或通过美国或加拿大的境外 T ...
- 【Leetcode】115. Distinct Subsequences
Description: Given two string S and T, you need to count the number of T's subsequences appeared in ...