Win平台Web访问白名单设置脚本(IP安全性原则)

最近老是有用户申请开通某网站的访问权限,我接手之前浏览权限的设置方法是修改tomcat下的server.xml配置文件,通过定义allow="IP.."的访问规则来控制浏览权限。这种方法有个很不好的地方,每加一次权限,你就得重启一次tomcat,用户老是挤牙膏一样,一次一两个IP的发邮件来申请开通,不但很烦人,而且对正在使用的用户体验也非常的糟糕!于是我决定要改善这个糟糕的局面。

在Linux下,我们都是通过配置防火墙iptables来控制80端口的访问的,结果到了windows下,估计前面的人也没深究如何进行类似的设置,于是就使用了那个蹩脚的方法!

我在接手WEB运维之前,做过一段时间的PC维护,当时公司为了安全考虑需要封堵一些后门端口,我也因此编写过相关的封端口的脚本,所以看到windows平台的WEB防火墙问题,自然而然就想到了通过封堵80端口来控制浏览权限的方法。

在非Server(windows XP/7等)的环境下,要通过命令行来设置IP安全性原则是需要用到一个叫做ipseccmd.exe的命令行工具的,而今天是Windows Server平台,就完全支持使用netsh ipsec static add filter命令来设置IP安全性规则!命令行的用法我也就先不说了,有时间再来补充,直接上代码:

简单说明:此脚本的功能主要是省去了IP安全性原则繁琐的手动设置步骤,直接粘贴IP即可导入白名单!通过3个for循环(可能有点冗余,暂时未考虑优化)将整行多个IP依次分离导入到规则中。这里说的整行的意思是,你只需要将你的IP粘贴进来,不论是单个IP还是IP段,不论是空格隔开还是,逗号隔开,都能实现依次分离导入。

注意事项:
1.由于编写时间很短,所以暂未实现多个C的IP段的判断,若是多个C,比如10.*.*.*/22请拆分为4个段输入(待改进).
2.输入的IP需要使用空格或逗号隔开,不要直接连接在一起,否则就会傻傻分不清楚拉;
3.支持单个IP和IP段的混输,能够判断IP类型来执行不同的语句;
4.默认定义一个C的IP段结尾为0或1,即如果你是192.168.1.1或192.168.1.0,脚本会将其作为相同的IP段处理,也就是直接判断为192.168.1.0/24。

以上脚本为今天下午应急之作,可能存在BUG,仅供参考~若有问题留言请联系,希望能帮到您!

发表评论

gravatar

:?::razz::sad::evil::!::smile::oops::grin::eek::shock::???::cool::lol::mad::twisted::roll::wink::idea::arrow::neutral::cry::mrgreen:

刷新评论

加载中,请稍候...