Chinaunix首页 | 论坛 | 博客
  • 博客访问: 378459
  • 博文数量: 190
  • 博客积分: 50
  • 博客等级: 民兵
  • 技术积分: 125
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-12 14:05
文章分类

全部博文(190)

文章存档

2013年(190)

我的朋友

分类: LINUX

2013-05-14 10:12:11

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://blog.chinaunix.net/space.php?uid=9419692&do=blog&id=3184112

# BY kerryhu
# QQ:263205768
# MAIL:king_819@163.com
# BLOG:http://kerry.blog.51cto.com

因业务发展需要要阻止一些地区的IP访问服务器,在此将获取IP到用ipsec阻断的过程记录下来,以下就以香港地区为例

1、获取要阻止地区的IP信息
cat get_tw_ip.sh

#!/bin/sh
FILE=./ip_apnic
CNFILE=./hk_apnic
ipinfo=./ipfile.txt
rm -f $FILE
rm -f $CNFILE
wget
-O $FILE
grep 'apnic|HK|ipv4|' $FILE | while read text
do
echo $text>> $CNFILE
done
grep 'apnic|HK|ipv4|' $CNFILE | cut -f 4,5 -d'|'|sed -e 's/|/ /g' | while read ip cnt
do
echo $ip:$cnt
mask=$(cat << EOF | bc | tail -1
pow=32;
define log2(x) {
if (x<=1) return (pow);
pow--;
return(log2(x/2));
}
log2($cnt)
EOF
)

echo $ip/$mask>> ./hk.txt
echo $ip>> ./ip.txt
done

hk.txt为获取的香港地区IP信息

2、合并IP信息
使用subnettools.exe工具对获取的IP信息进行合并


3、利用shell脚本生成ipsec批处理
cat netsh_ipsec.sh

#!/bin/sh
file=./hk1.txt
cat $file | awk -F/ '{print $1,$2}'| while read ip mask
do
echo "rem 添加安全策略名称" >> ./deny_hk.bat
echo "netsh ipsec static add policy name=HK" >> ./deny_hk.bat

echo "rem 添加 IP筛选器列表" >> ./deny_hk.bat
echo "netsh ipsec static add filterlist name=No" >> ./deny_hk.bat

echo "rem 添加筛选器到IP筛选器列表(拒绝列表)" >> ./deny_hk.bat
echo "netsh ipsec static add filter filterlist=No srcaddr=$ip dstaddr=me srcmask=$mask description=拒绝香港IP访问 protocol=any" >> ./deny_hk.bat

echo "rem 添加筛选器操作" >> ./deny_hk.bat
echo "netsh ipsec static add filteraction name=deny action=block" >> ./deny_hk.bat

echo "rem 创建一个链接指定 IPSec 策略、筛选器列表和筛选器操作的规则(加入规则到我的安全策略)" >> ./deny_hk.bat
echo "netsh ipsec static add rule name=拒绝规则 policy=HK filterlist=No filteraction=deny" >> ./deny_hk.bat

echo "rem 激活我的安全策略" >> ./deny_hk.bat
echo "netsh ipsec static set policy name=HK assign=y" >> ./deny_hk.bat
done

执行deny_hk.bat自动生ipsec策略,这样就完成了对香港地区IP的屏蔽

本文出自 “聆听未来” 博客,请务必保留此出处http://blog.chinaunix.net/space.php?uid=9419692&do=blog&id=3184112

阅读(484) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~