IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> iptables转发规则(配置) -> 正文阅读

[网络协议]iptables转发规则(配置)

iptables简介:、

iptables防火墙工作在网络层,针对TCP/IP数据包实施过滤和限制,iptables防火墙基于内核编码实现,具有非常稳定的性能和高效率,iptables属于“用户态”的防火墙管理体系。

——iptables常用选项:

-L查看规则

-F清除所有规则,留下默认规则

-t指定表

--line-numbers显示规则排列序号

-A添加规则到指定链的结尾

-I添加规则到指定链的开头

-D删除指定规则

-p添加协议:例如tcp udp

--dport目的端口

--sport源端口

-s指定源地址

-d指定目的地址

-i匹配进入网卡的接口

-o匹配出网卡的接口

-j处理行为:ACCEPT接受? ?DROP丢弃? REJECT拒绝 MASQUERADE地址伪装? SNAT源地址转换 DNAT目的地址转换 REDIRECT端口重定向

——扩展选项:

-m表示用什么模块来匹配

-m state --state 连接状态? #表示用state模块来匹配连接状态

-m iprange --src-range #用iprange模块来匹配源地址范围

-m iprange --dst-range #用iprange模块来匹配目的地址范围

-m mulitiport --source-ports #用mulitiport模块来匹配来源端口范围

-m --destination-ports #用mulitiport模块来匹配目的地址范围

例如:来自1.1.1.1 - 1.1.1.10这个地址范围,请求22.33.44这几个端口并且是新建的连接都放行

-A INPUT -p tcp -m iprange --src-range 1.1.1.1 - 1.1.1.10 -m mulitiport --destination-ports 22,33,44 -m state --state NEW -j ACCEPT??

——连接状态:

UNTRACKED未追踪的

NEW新的

ESTABLISHED已确立的

RELATED相关的

INVALID无法识别的

——iptables的四表五链:

——四表

filter表:filter表用来对数据包进行过滤,共包含三个链。

nat表:nat转换表主要用于修改数据包 ip地址,端口号等,共包含三个链。

mangle表:mangle表用来修改数据包的TOS(Type Of Service服务类型),TTL(Time To Live,生存周期)值,或者为数据包设置Mark标记,以实现流量整形,策略路由等高级应用。共包含五个链。

raw表:raw表示自1.2.9以后版本的iptables新增的表,主要来决定是否对数据包进行状态跟踪。共包含两个链。

——五链 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

INPUT链:当收到访问防火墙本机地址的数据包(入站)时,应用此链中的规则。

OUTPUT链:当防火墙本机向外发送数据包(出站)时,应用此链中的规则。

FORWARD链:当接收到需要通过防火墙中转发送给其他地址的数据包(转发)是,应用测链中的规则。

PREROUTING链:在对数据包做路由选择之前,应用测链中的规则。

POSTROUTING链:在对数据包做路由选择之后,应用此链中的规则。

——设置转发规则:

?假设要在A主机上访问B主机,通过B主机上的转发规则,使请求流向C主机(在B主机上设置)

A主机:10.100:80

B主机:10.200:80

C主机:10.300:80

先开启转发规则:echo "1" > /proc/sys/net/ipv4/ip_forward

设置表规则:

iptables -t nat -A PREROUTING -p tcp -d 10.200?--dport 80?-j DNAT --to-destination 10.300:80
iptables -t nat -A POSTROUTING -p tcp --destination 10.300?--dport 80?-j MASQUERADE

设置链规则:

# 1.删除现有规则
iptables -F

# 2.配置默认链策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# 3.允许远程主机进行SSH连接
iptables -A INPUT -i eth0 -p tcp --dport 22?-m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

# 4.允许本地主机进行SSH连接
iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT

#5.允许端口转发

iptables -A? FORWARD -i eth0 -p tcp --dport 要转发的端口? -m state --state NEW,ESTABLISHED -j ACCETP

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-21 15:48:48  更:2021-08-21 15:48:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 20:53:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码