接到一个任务,对公司的多台web服务器,进行IPSEC访问控制,如果手工编辑N多条IPSEC策略,那简直太疯狂了。
为了减少编辑策略的时间及防止出现少开或错开端口的问题,于是编写了以下的批处理脚本:
一、首先,在新服务器上导入基础IP策略(基础策略包括:只允许公司IP远程访问该机器;允许访问到数据库端口;允许公司IP进行ICMP连接;允许本机HTTP访问等策略);
二、使用以下脚本生成一个名为"openport.bat"的脚本文件,该文件包含了服务器上所有业务侦听的端口,并进行一些必要的编辑,删除非业务类端口;
复制代码 代码示例:
@echo on
@rem by www.jb200.com
if exist PortLISTENING.log exit
netstat -na |find /i "LISTENING" > PortLISTENING.log
for /f "tokens=2 delims=:" %%a in (PortLISTENING.log) do echo %%a >> LISTENING.log
for /f "tokens=1" %%b in (LISTENING.log) do echo netsh ipsec static add filter filterlist=Yes srcaddr=any protocol=tcp dstport=%%b dstaddr=me >>
openport.bat
echo del open.bat /q >> open.bat
del LISTENING.log /q
del PortLISTENING.log /q
exit
三、执行编辑后的"openport.bat"文件,检查IPSEC中策略是否已经正常导入。
如此,便可以批量完成多台机器的ipsec安全端口设置,比一个一个编辑,效率高了许多啊。