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

5月9日

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

标签:linux

10.15 iptables filter表案例

1. iptables filter表案例

需求:只针对filter表,预设策略INPUTDROP,其他两个链ACCEPT,然后针对192.168.1.0/24开通22端口,对所有网段开放80端口,对所有网段开放21端口

需求有多条规则,最好写成脚本的形式比较好操作:

命令: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     $ipt -A INPUT -s 192.168.1.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  

说明:-m state –state 后加这两个状态可让通信更顺畅 RELATED , ESTABLISHED

技术分享图片 

1.1添加完shell脚本内容后就执行脚本,命令sh /usr/local/sbin/iptables.sh    //执行脚本

1.2查看添加后的规则, iptables -nvL     //查看规则

技术分享图片 

2.1 icmp示例场景: 

可以实现ping通外部机器,但是ping不通本机(你能ping通别人的机器,别人ping不通你的机器)

命令:iptables -I INPUT -p icmp –icmp-type 8 -j DROP 

技术分享图片 

解释:这里的--icmp-type选项要跟-p icmp一起使用,后面指定类型编号。这个8指的是本机能ping通其他机器,而其他机器不能ping通本机,请牢记。

2.1.2 删除规则后可以正常相互ping通:

命令:iptables -D INPUT -p icmp –icmp-type 8 -j DROP 

技术分享图片 

 

10.16-10.17-10.18 iptables nat表应用

iptables nat表应用场景:

linuxiptables功能规则是十分强大的,可以实现很多功能,路由器共享上网的功能就是通过由linuxiptables实现的,而iptables又是通过nat表作用而实现的。

 

1. 实验:A机器两块网卡ens33(192.168.133.130)ens37(192.168.100.1)ens33可以上外网,ens37仅仅是内部网络,B机器只有ens37192.168.100.100),和A机器ens37可以通信互联。

 

1.1 需求可以让B机器连接外网

A机器上打开路由转发 

 echo “1” > /proc/sys/net/ipv4/ip_forward   //echo 1到配置文件打开转发功能

A上执行: 

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

    //-o表表示出口的网卡,MASQUERA表示伪装。

 B上设置网关为192.168.100.1

解释:

 1..第一个命令涉及内核参数相关的配置文件,它的目的是打开路由转发功能,否则无法实现我们的应用。

 2. 第二个命令则是iptablesnat表做了一个IP转发的操作,-O选项后面跟设备名,表示出口的网卡,MASQUERADE表示伪装。

 

2 .需求:C机器只能和A通信,让C机器可以直接连通B机器的22端口(就是端口映射把A192.168.133.1301122 映射到B机器的192.168.100.10022

 2.1 A上打开路由转发echo "1">/ proc/sys/net/ipv4/ip_forward

 2.2 A上执行iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22    //进去的包

2.3 A上执行iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130    //回来的包

 2.4 B设置网关为192.168.100.1

 

 

 



5月9日

标签:linux

原文地址:http://blog.51cto.com/404006045/2114634

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