|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!网上有如今的防端口工具,如psad、portsentry,但以为设置有点贫苦,且办事器不想再装一个分外的软件。以是本人就写了个shell剧本完成这个功效。基础思绪是:利用iptables的recent模块纪录下在60秒钟内扫描凌驾10个端口的IP,并分离inotify-tools工具及时监控iptables的日记,一旦iptables日记文件有写进新的ip纪录,则利用iptables***源ip,起到了避免端口扫描的功效。
1、iptables划定规矩设置
新建剧本iptables.sh,实行此剧本。
IPT="/sbin/iptables"
$IPT--delete-chain
$IPT--flush
#DefaultPolicy
$IPT-PINPUTDROP
$IPT-PFORWARDDROP
$IPT-POUTPUTDROP
#INPUTChain
$IPT-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
$IPT-AINPUT-ptcp-mtcp--dport80-jACCEPT
$IPT-AINPUT-ptcp-mtcp--dport22-jACCEPT
$IPT-AINPUT-ilo-jACCEPT
$IPT-AINPUT-picmp-micmp--icmp-type8-jACCEPT
$IPT-AINPUT-picmp-micmp--icmp-type11-jACCEPT
$IPT-AINPUT-ptcp--syn-mrecent--nameportscan--rcheck--seconds60--hitcount10-jLOG
$IPT-AINPUT-ptcp--syn-mrecent--nameportscan--set-jDROP
#OUTPUTChain
$IPT-AOUTPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
$IPT-AOUTPUT-pudp-mudp--dport53-jACCEPT
$IPT-AOUTPUT-olo-jACCEPT
$IPT-AOUTPUT-picmp-micmp--icmp-type8-jACCEPT
$IPT-AOUTPUT-picmp-micmp--icmp-type11-jACCEPT
#iptablessave
serviceiptablessave
serviceiptablesrestart
注重:17-18行的两条划定规矩务必在INPUT链的最上面,别的划定规矩本人能够增补。
2、iptables日记地位变动
编纂/etc/syslog.conf,增加:
kern.warning/var/log/iptables.log
重启syslog
/etc/init.d/syslogrestart
3、防端口扫描shell剧本
起首装置inotify:
yuminstallinotify-tools
保留以下代码为ban-portscan.sh
btime=600#封ip的工夫
whiletrue;do
whileinotifywait-q-q-emodify/var/log/iptables.log;do
ip=`tail-1/var/log/iptables.log|awk-F"[=]"{print$13}|grep([0-9]{1,3}.){3}[0-9]{1,3}`
iftest-z"`/sbin/iptables-nL|grep$ip`";then
/sbin/iptables-IINPUT-s$ip-jDROP
{
sleep$btime&&/sbin/iptables-DINPUT-s$ip-jDROP
}&
fi
done
done
实行下令入手下手启用端口防扫描
nohup./ban-portscan.sh&
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|