iptables使用测试指令

===============iptables-filter.sh==================

#!/bin/bash
#iptables [-t filter][-AI INPUT,OUTPUT,FORWARD][-io interface][-p tcp,udp,icmp,all][-s IP/network]/
#[--sport ports][-d IP/network][--dport ports] -j [ACCEPT,DROP]
#-A:在原规则后新增加条规则
#I插入条规则,默认插入后为第一条
#-i:设定封包进入的网络介质
#-o:设定封包留出的网络介质
#interface :网络介质如:ppp0,eth0,..
#-p :封包的协议 如tcp udp icmp ; all表示所有封包
#-s :来源封包的ip或网域
#-d:目标主机ip或网域(network)
# --sport ,--dpord分别是来源封包端口号和目标主机端口号
#-j:动作
#ACCEPT:接收该封包
#DROP:丢弃封包
#LOG:记录下该封包的信息(默认在/var/log/messages中)

#所有来自lo介质的封包都接收
/sbin/iptables -A INPUT -i lo -j ACCEPT

#来自特定ip的封包都接收
/sbin/iptables -A INPUT -i eth0 -p tcp -s 211.67.190.8 -j ACCEPT

#来自特定网域(段)的都接收
/sbin/iptables -A INPUT -i eth0 -p tcp -s 211.67.190.0/24 -j ACCEPT

#来自特定的ip的封包都丢掉! 主意下边这条和前边的规则的顺序,下边这条应该不会不起作用
#原因是211.67.190.106在上边211.67.190.0/24这个网段内,iptables在上边的规则里已经让106
#通过啦! 所以定义规则时还要考虑规则顺序这个基本问题...!
/sbin/iptables -A INPUT -i eth0 -p tcp -s 211.67.190.106 -j DROP


#丢掉所有进入本机80端口的封包
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 80 -j DROP


#丢掉特定主机到本地主机端口80到65535的所有封包
/sbin/iptables -A INPUT -i eth0 -p tcp -s 211.67.190.200 --dport 80:65535 -j DROP


#记录本地特定端口的访问连接
/sbin/iptables -A INPUT -p tcp --dport 110 -j LOG

###########################LEVEL 2###################################

#将来自特定主机的主动连接丢掉
/sbin/iptables -A INPUT -p tcp -i eth0 -s 211.67.190.9 --syn -j DROP


#不回应其他主机的ping探测
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j DROP


#将来自特定网卡的所有封包丢掉
/sbin/iptables -A INPUT -p all -m mac --mac-source 01:01:01:01:02:01 -j DROP


#让已建立或与本地主机有关的回应封包通过,让不合法的,以及想要尝试新建立的封包被抵挡在外
/sbin/iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m state --state INVALID,NEW -j DROP


########################nat 80---------------60003port################

#将要求与80端口的封包传递到60003端口
/sbin/iptables -t nat -A PREROUTING -p tcp --dprot 80 -j REDRIRECT --to-ports 60003

#将来自特定的ip或网域的封包ip伪装成本地eth0:1的ip
/sbin/iptables -t nat -A POSTROUTING -s 211.67.190.8 -o eth0:1 -j MASQUERADE


==================iptables-define.sh ==================

#!/bin/bash
#/sbin/iptables [-t tables] [-P] [INPUT.OUTPUT.FORWARD][PREROUTING,OUTPUT,POSTROUTING][ACCEPT,DROP]
#定义Policy(默认规则)

#-P :定义Policy.
#INPUT :封包输入本地主机
#OUTPUT:封包输出本地主机
#FORWARD:封包不进入本地主机而是向外再传输出
#FREROUTING:在进入路由之前进行的工作
#OUTPUT:封包输出本地主机
#POSTROUTING:在进入路由之后进行的工作

/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P  PREROUTING ACCEPT
/sbin/iptables -t nat -P  OUTPUT     ACCEPT
/sbin/iptables -t nat -P  POSTROUTING ACCEPT

 

=====================iptables-clear.sh ==============

#!/bin/bash
#清除防火墙规则
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
/sbin/iptables -t nat -F

===============iptables-save-restore.sh =============

#!/bin/bash
/sbin/iptables-save >iptables-rule.txt
/sbin/iptables-restore < iptables-rule.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值