码迷,mamicode.com
首页 > 其他好文 > 详细

iptable和nat表应用

时间:2018-05-10 00:08:08      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:iptable   nat表   

iptables小案例
  • 需求:把80,22,21端口放行,22端口只有某个IP段可以访问。

    [root@aminglinux-02 ~]# vim /usr/local/sbin/iptables.sh
    #! /bin/bash
    ipt="/usr/sbin/iptables"    #变量
    $ipt -F                     #清空规则
    $ipt -P INPUT DROP          #定义默认策略
    $ipt -P OUTPUT ACCEPT
    $ipt -P FORWARD ACCEPT
    $ipt -A INPUT -m state --state RELATED(额外的连接),ESTABLISHED(保持连接) -j ACCEPT    #-m state检测数据包状
    态,--state 指定状态,这条命令为了使通信更顺畅
    $ipt -A INPUT -s 192.168.133.0/24 -p tcp --dport 22 -j ACCEPT
    $ipt -A INPUT -p tcp --dport 80 -j ACCEPT
    $ipt -A INPUT -p tcp --dport 21 -j ACCEPT  
    # 增加规则
  • icmp示例
    • iptables -I INPUT -p icmp --icmp-type 8 -j DROP //禁止其他机器ping本机,本机可以ping其他机器

nat表的应用

  • A机器两块网卡ens33(192.168.133.130)、ens37(192.168.100.1),ens33可以上外网,ens37仅仅是内部网络,B机器只有ens37(192.168.100.100),和A机器ens37可以通信互联。
  • 准备:创建两个虚拟机,A机器配置两块网卡,ens33设置ip:192.168.133.130,ens37设置Ip:192.168.100.1。B机器配置一块网卡ens37ip:192.168.100.100。这里虚拟机的两个内网卡需要选择LAN区段模式
    • ifconfig ens37 192.168.100.1/24可以临时设置ip,永久要修改配置文件
  • 需求1:可以让B机器连接外网
    • A机器上打开路由转发 echo "1">/proc/sys/net/ipv4/ip_forward //该命令是更改内核设置,打开路由转发功能,默认值是0
      [root@akuilinux01 ~]# cat /proc/sys/net/ipv4/ip_forward
      0
      [root@akuilinux01 ~]# echo "1" > !$
      echo "1" > /proc/sys/net/ipv4/ip_forward
      [root@akuilinux01 ~]# cat /proc/sys/net/ipv4/ip_forward
      1
    • A上执行 iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE //把100网段伪装成ens33网卡
    • B上设置网关为192.168.100.1,命令为route add default gw 192.168.100.1 。route -n查看网关
    • B配置DNS
      vim /etc/resolv.conf
      # Generated by NetworkManager
      nameserver 119.29.29.29
  • 需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口,不同网段机器通信
    • A上打开路由转发echo "1">/ proc/sys/net/ipv4/ip_forward
    • A上执行iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22 //把B的22端口,映射到A的1122端口上
    • A上执行iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130 //端口转发
    • B上设置网关为192.168.100.1

扩展

iptable和nat表应用

标签:iptable   nat表   

原文地址:http://blog.51cto.com/akui2521/2114635

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!