标签:filter lte 笔记 实验 ash input 80端口 icmp drop
10.15 iptables filter表案例iptables filter表小案例
实现放行21,80端口和对源IP属于133.168.133.0的IP段请求放行22端口:
vi /usr/local/sbin/iptables.sh //加入如下内容
#! /bin/bash
ipt="/usr/sbin/iptables"
$ipt -F #清空之前的规则(filter表)
$ipt -P INPUT DROP
$ipt -P OUTPUT ACCEPT
$ipt -P FORDARD ACCEPT
$ipt -A INPUT -m stat --state RELATED,ESTABLISHED -j ACCEPT #放行状态为RELATED,ESTABLISHED的请求
$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
备注:
上述脚本第7行要加RELATED的原因是客户端和服务端建立了连接后,还有一些额外连接需要建立,这时状态就变成了
RELATED,为了能通信不受到影响,所以此处需加上RELATED.
icmp示例:
实现本机能ping通其他机器,但其他机器不能ping通本机:
iptables -I INPUT -p icmp --icmp -type 8 -j DROP
实验背景:
A机器两块网卡ens33(192.168.133.130),ens37(192.168.100.1),ens33可以上外网,ens37仅仅是内部网络,B机器只有
ens37(192.168.100.100),和A机器ens37可以通信互连.
* 需求1: 让B机器可以连接外网
(1)A机器上打开路由转发(1表示打开路由转发,默认为0,关闭状态)
echo "1" > /proc/sys/net/ipv4/ip_forward
(2)A机器上执行
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
(3)B机器上设置网关为192.168.100.1
* 需求2: C机器只能和A通信,让C机器可以直接连通B机器的22端口
(1)A机器上打开路由转发(1表示打开路由转发,默认为0,关闭状态)
echo "1" > /proc/sys/net/ipv4/ip_forward
(2)A机器上执行
iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130
(3)B机器上设置网关为192.168.100.1
备注:
标签:filter lte 笔记 实验 ash input 80端口 icmp drop
原文地址:http://blog.51cto.com/13517946/2065112