|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!因为新来的同事对剧本不是很熟习,为了便利办理办事器上的iptables,因而决意写上个复杂的剧本,如许对不是很熟习剧本的同事都能复杂办理。以下的剧本只是用一个轮回就弄定了!假如那里写的欠好,大概有更好的设法大概写法,贫苦接洽我!!!
[root@localhost~]#catiptables.sh
#!/bin/bash
while["1"=="1"]
do
clear
echo"----------------------menu----------------------"
echo"(1)serviceiptablesrestart"
echo"(2)iptablesadd"
echo"(3)iptablesdelete"
echo"(4)iptablesstop"
echo"(5)iptablessave(输完ACL后要记得保留和检察)"
echo"(6)iptablesstatus"
echo"(7)iptablesACLlist"
echo"(0)exit"
echo"-------------------------------------------------"
echo-n"enteryouchose[0-7]:"
readnum
if[${num}-lt0-o${num}-gt7]
then
echo"thisisnotbetween0-7"
else
if["${num}"=="1"]
then
serviceiptablesrestart&
else
if["${num}"=="2"]
#######################################################
then
while["1"=="1"]
do
clear
echo"----------------------addACL----------------------"
echo"(1)针对源IP放行增加"
echo"(2)针对办事器端口放行增加"
echo"(3)针对有端口和办事的ACL增加(这里要参数IP和端口比方0/080)"
echo"(4)自界说增加"
echo"(5)退回上一级"
echo"-------------------------------------------------"
echo-n"enteryouchose[0-4]:"
readaclnum
if["${aclnum}"=="1"]
then
readip
iptables-AINPUT-s${ip}-ptcp--dport22-jACCEPT
serviceiptablessave
elif["${aclnum}"=="2"]
then
radip
iptables-AINPUT-ptcp--dport${IP}-jACCEPT
serviceiptablessave
elif["${aclnum}"=="3"]
then
readipport
iptables-AINPUT-ptcp-s${ip}--dport${port}-jACCEPT
serviceiptablessave
elif["${aclnum}"=="4"]
then
readaddacl
`${addacl}`
serviceiptablessave
else
break
fi
echo-n"是不是想持续增加:[y/n]:"
readcontine
if["${contine}"=="n"-o"${contine}"=="N"]
then
break
fi
done
#######################################################
else
if["${num}"=="3"]
then
while["1"=="1"]
do
clear
echo"---------------------deleteACL----------------------"
echo"(1)针对源ip删除"
echo"(2)针对端口删除"
echo"(3)针对有端口和办事的ACL删除"
echo"(4)自界说删除"
echo"(5)退回上一级"
echo"-------------------------------------------------"
echo-n"enteryouchose[0-5]:"
readaclnum
if["${aclnum}"=="1"]
then
readip
iptables-DINPUT-s${ip}-ptcp--dport22-jACCEPT
serviceiptablessave
elif["${aclnum}"=="2"]
then
readport
iptables-DINPUT-ptcp--dport${port}-jACCEPT
serviceiptablessave
elif["${aclnum}"=="3"]
then
readipport
iptables-DINPUT-ptcp-s${ip}--dport${port}-jACCEPT
serviceiptablessave
elif["${aclnum}"=="4"]
then
readdeleteacl
`${deleteacl}`
serviceiptablessave
else
break
fi
echo-n"是不是想持续增加:[y/n]:"
readcontine
if["${contine}"=="n"-o"${contine}"=="N"]
then
break
fi
done
###################################################################
else
if["${num}"=="4"]
then
echo-e"`serviceiptablesstop&`"
else
if["${num}"=="5"]
then
echo-e"`serviceiptablessave&`"
else
if["${num}"=="6"]
then
echo-e"`serviceiptablesstatus&`"
else
if["${num}"=="7"]
then
while["1"=="1"]
do
clear
echo"---------------------listACL----------------------"
echo"(1)检察以后正在利用的划定规矩集"
echo"(2)检察每一个战略或每条划定规矩、每条链的复杂流量统计"
echo"(3)检察NAT表"
echo"(4)自界说检察"
echo"(5)退回上一级"
echo"-------------------------------------------------"
echo-n"enteryouchose[0-5]:"
readaclnum
if["${aclnum}"=="1"]
then
iptables-L
elif["${aclnum}"=="2"]
then
iptables-L-n-v
elif["${aclnum}"=="3"]
then
iptables-L-tnat
elif["${aclnum}"=="4"]
then
readlistacl
`${listacl}`
else
break
fi
echo-n"是不是想持续增加:[y/n]:"
readcontine
if["${contine}"=="n"-o"${contine}"=="N"]
then
break
fi
done
################################################
else
exit
fi
fi
fi
fi
fi
fi
fi
fi
echo-n"Doyoucontine[y/n]:"
readcontine
if["${contine}"=="n"-o"${contine}"=="N"]
then
exit
fi
done欢迎大家来到仓酷云论坛! |
|