10.15iptablesfilter表案例10.16/10.17/10.18iptablesnat表应用

coding

15 iptables filter表案例

iptables小案例

vi /usr/local/sbin/iptables.sh //加入如下内容

#! /bin/bash

ipt="/usr/sbin/iptables"

$ipt -F 清空规则

$ipt -P INPUT DROP 更改input链的默认规则为drop, 以下2个链为accept

$ipt -P OUTPUT ACCEPT

$ipt -P FORWARD ACCEPT

$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -m 指定状态放行 //除了以下几条规则外也需加上这条规则,否则不能正常通信

$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

执行: sh /usr/local/sbin/iptables.sh

icmp示例

iptables -I INPUT -p icmp --icmp-type 8 -j DROP 外网禁ping本机地址

10.16/10.17/10.18 iptables nat表应用

• nat表应用

• A机器两块网卡ens33(192.168.133.130)、ens37(192.168.100.1),ens33可以上外网,ens37仅仅是内部网络,B机器只有ens37(192.168.100.100),和A机器ens37可以通信互联。

• 需求1:可以让B机器连接外网

A虚拟机上增加一块网卡, 选van区段, 配置ip, netmask B机器网卡也选van区段, 设置ip,netmask , 让互相ping通

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

• A上执行 iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE

• B上设置网关为192.168.100.1

route add default gw 192.168.100.1

• 需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口(端口映射)

先清除nat表的规则

• 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

• A上执行iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130

• B上设置网关为192.168.100.144

以上是 10.15iptablesfilter表案例10.16/10.17/10.18iptablesnat表应用 的全部内容, 来源链接: utcz.com/z/508673.html

回到顶部