iptables学习笔记

 一 三个表

1 filter

    1) INPUT

    2) OUTPUT

    3) FORWARD

2 nat 

    1) PREROUTING

    2) POSTROUTING 

    3) OUTPUT

3 mangle

二 iptables 语法

iptables -AI 链 INPUT|OUTPUT|FORWARD|LOG -io 网络接口 -p 协议 -s 来源ip/网段 --sport 端口范围 \

         -d 目标ip/网段 --dport 端口范围-j ACCEPT|DROP

    -AI A 新增 I 插入

    -io 网络接口 i 进入的接口 需要和INPUT链配合 o 传出的接口 需要和OUTPUT链配合

    -p 协议 tcp udp icmp all

    -s -d 主机 192.168.0.100 网段192.168.0.0/24,192.168.0.0/255.255.255.0 加上!表示不包含

    --dport --sport 连续端口1024:2048 不连续端口 024,1026

iptables 状态

iptables -A INPUT -m state --state 状态

    -m iptables模块 state: 状态模块 mac: 

    --state: 数据包的状态 INVALID: 无效 ESTABLISHED: 已经成功连接 NEW: 想要新建立连接 RELATED: 表示数据包与发出去的数据包有关

三 常见配置

1)允许所有的本机发出去的相关请求的相关数据包可以进入

iptables -A INPUT -i lo -j ACCEPT 

iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

针对mac开放

iptables -A INPUT -m mac --mac--source aa:bb:cc:dd:ee:ff -j ACCEPT

2)nat 设置

echo 1 > /proc/sys/net/ipv4/ip_forward

snat

如果有多个ip断,可以如下设置

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to 61.61.61.61

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to 61.61.61.62

如果只是简单的内网外网,可以如下设置

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

dnat

外部80端口到内部192.168.1.100的端口转换

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 80 -j DNAT --to 192.168.1.100:80

将本机的80端口重定向到8080端口

iptables -t nat -A PREROUTING -p tcp  --dport 80 -j REDIRECT --to-ports 8080

ip对ip的转换

iptables -A FORWARD -s 192.168.1.1 -j ACCEPT

iptables -A FORWARD -d 192.168.1.1 -j ACCEPT

iptables -t nat -P PREROUTING  ACCEPT

iptables -t nat -P POSTROUTING ACCEPT

iptables -t nat -P OUTPUT      ACCEPT

iptables -t nat -A PREROUTING -d 1.1.1.2 -j DNAT --to-destination 192.168.1.1

iptables -t nat -A POSTROUTING -s 192.168.1.1 -j SNAT --to-source 61.61.61.63

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • netperf常用命令参数套餐

    netperf -H 10.18.201.3 -l 60 -- -S 87380 -s 16384 -M 16384 -m 16384

    力哥聊运维与云计算
  • KVM虚拟化开源高可用方案(七)GLUSTERFS搭建及常见故障处理

    为了充分保证系统的稳定性和性能,要求所有glusterfs服务器硬件配置尽量一致,尤其是硬盘数量和大小。机器的RAID卡需要带电池,缓存越大,性能越好。一般情况...

    力哥聊运维与云计算
  • 如何学习一项新的IT技术

    本文总结新技术学习经验和方法,探讨如何能更高效的更成体系的完成一项IT技术的学习和提升。如何评价掌握了一项IT新技术?可以分为以下三个阶段:

    力哥聊运维与云计算
  • 微信小程序服务器配置基础教程

    微信小程序的服务器配置需要域名备案和上https的。我用的域名是腾讯学生认证的免费域名,腾讯云也可以申请https证书https证书申请好了以后会有一个证书文件...

    flytam
  • 2014-2018全球SCARA机器人市场预测

    TechNavio发布2014-2018全球SCARA机器人市场预测报告,分析师预测,2014-2018年全球SCARA机器人市场将以4.38%的复合年增长率增...

    机器人网
  • 学习|Unity3D使用协程实现减速停车效果

    上一篇《学习|Unity3d的导航实现循环线路移动》讲了一下定制循环行驶路线的方法,在视频中还有一个就是非会员的车辆需要人工收费,所以就要有一个减速停车等待的动...

    Vaccae
  • 不修漏洞触犯刑法——一个int类型引发的游戏漏洞

    下面转载原文:“网络服务提供者不履行法律、行政法规规定的信息网络安全管理义务,经监管部门责令采取改正措施而拒不改正……处三年以下有期徒刑、拘役或者管制”。

    WeTest质量开放平台团队
  • jquery 模态窗口 弹出窗 simpleModal

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/h...

    用户5760343
  • 程序员的核心竞争力是什么?为什么?

    姚冬回答的非常好,我狗尾续貂的说几句。 我们都知道学习能力很重要,那么学习能力从何而来,除了去看书上课这种,如何在实践工作中学习成长? 我之前微博说了一个笼统...

    逸鹏
  • 麒麟芯片成为绝唱之后,华为手机真的太难了

    “由于(特朗普政府)第二轮制裁,台积电只接受了我们芯片5月15号之前的订单,到9月16号生产就停止了,所以今年可能是全球最领先的、华为麒麟高端芯片的绝版、最后一...

    镁客网

扫码关注云+社区

领取腾讯云代金券