Board logo

标题: [系统相关] ip安全策略管理批处理ipsec出错 [打印本页]

作者: smxzxw    时间: 2009-5-18 17:05     标题: ip安全策略管理批处理ipsec出错

这是我写的一个ipsec管理,在sever2003上使用!
当运行3/4/5时就提示名为'description'的策略已经丰存在!
当我在ip安全策略中将名为description删去,再按3直接提示执行完毕!
不知错在那,应该是2里面的description可能有问题!
请大家帮我调试下,找到错误在那!谢谢了!~~~
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. :again
  4. set num=
  5. set ippolicyname=
  6. set comment=
  7. set ismmpfs=
  8. set keytime=
  9. set newippolicyname=
  10. cls
  11. echo.
  12. echo.
  13. echo -----------------请选择要执行的操作-----------------
  14. echo ------1.创建一个ip安全策略
  15. echo ------2.创建自定义密钥交换安全措施的IP策略
  16. echo ------3.删除指定的安全策略
  17. echo ------4.修改指定ip安全策略的配置信息
  18. echo ------5.设置ip安全策略的存储位置
  19. echo ------6.退出
  20. echo.
  21. echo.
  22. set /p num=请输入你要执行的操作:
  23. if "!num!"=="1" (
  24. cls
  25. echo.
  26. set /p ippolicyname=请输入ip安全策略的名称:
  27. set /p comment=请输入ip安全策略的描述信息:
  28. set /p ismmpfs=若启用主密钥完全向前保密请输入yes,否则输入no:
  29. set /p keytime=请输入密钥生成时间:
  30. echo.
  31. netsh ipsec static add policy name=!ippolicyname! description=!comment! mmpfs=!ismmpfs! mmlifetime=!keytime!
  32. echo 执行完毕,请按任意键后返回
  33. pause > nul
  34. goto again
  35. )
  36. if "!num!"=="2" (
  37. cls
  38. echo.
  39. set /p ippolicyname=请输入IP安全策略的名称:
  40. set /p comment=请输入IP安全策略的描述信息:
  41. set /p ismmpfs=若启用主密钥完全向前保密请输入yes,否则输入no:
  42. set /p keytime=请输入密钥生成时间:
  43. set /p keyexpress=请输入密钥交换措施表达式(des-md5-3/2/1)
  44. echo.
  45. netsh ipsec static add policy name=!ippolicyname! description=!comment! mmpfs=!ismmpfs! mmlifetime=!keytime! mmsecmethods="!keyexpress!"
  46. echo 执行完毕,请按任意键后返回
  47. pause > nul
  48. goto again
  49. )
  50. if "!num!"=="3" (
  51. cls
  52. echo.
  53. set /p ippolicyname=请输入要删除的IP安全策略名称:
  54. echo.
  55. netsh ipsec static delete policy name=!ippolicyname!
  56. echo 执行完毕,请按任意键后返回
  57. pause > nul
  58. goto again
  59. )
  60. if "!num!"=="4" (
  61. cls
  62. echo.
  63. set /p ippolicyname=请输入IP安全策略的名称:
  64. set /p newippolicyname=请输入IP安全策略的新名称:
  65. set /p comment=请输入IP安全策略的描述信息:
  66. set /p ismmpfs=若启用主密钥完全向前保密请输入yes,否则输入no:
  67. set /p keytime=请输入密钥生成时间:
  68. set /p keyexpress=请输入密钥交换措施表达式:
  69. echo.
  70. netsh ipsec static set policy name=!ippolicyname! newname=!newippolicyname! description=!comment! mmpfs=!ismmpfs! mmlifetime=!keytime! mmsecmethods="!keyexpress!"
  71. echo 执行完毕,请按任意键后返回
  72. pause > nul
  73. goto again
  74. )
  75. if "!num!"=="5" (
  76. cls
  77. echo.
  78. set /p policylocation=请输入ip安全策略的存储位置:
  79. echo.
  80. netsh ipsec static set store location=!policylocation!
  81. echo 执行完毕,请按任意键后返回
  82. pause > nul
  83. goto again
  84. )
  85. if "!num!"=="6" (
  86. goto exit
  87. )
  88. if "!num!"=="" (
  89. goto again
  90. )
  91. if not "!num!"=="" (
  92. echo 输入有误,请按任意键后返回
  93. pause > nul
  94. goto again
  95. )
  96. :exit
复制代码

作者: Batcher    时间: 2009-5-18 17:30

把@echo off删除掉,看看执行过程是哪一步出错了。
作者: smxzxw    时间: 2009-5-18 21:25     标题: 回复 2楼 的帖子

是第二步中的netsh ipsec static add policy name=!ippolicyname! description=!comment! mmpfs=!ismmpfs! mmlifetime=!keytime! 有问题,可怎么改啊?
怎么热心的人这么少?
作者: Batcher    时间: 2009-5-18 22:22     标题: 回复 3楼 的帖子

能否详细描述一下“有问题”?
作者: qxhonker    时间: 2009-5-19 11:56

BATCHER是说楼主没说明白是什么出错现象
作者: smxzxw    时间: 2009-5-19 12:46     标题: 回复 4楼 的帖子

我第一次运行时执行3直接提示执行完毕!

第二次再运行时执行3提示名为'description'的策略已经存在

感觉好像运行2里面的这句指令netsh ipsec static add policy name=!ippolicyname! description=!comment! mmpfs=!ismmpfs! mmlifetime=!keytime! mmsecmethods="!keyexpress!"
我不知道具体是那出错了,是我变量没清空,还是那句不对!我不知道怎么改!
结果如图!
不好意思啊,是我说的不详细!
你的QQ号是?我们交个朋友吧!
我的:434829546
作者: Batcher    时间: 2009-5-19 15:41     标题: 回复 6楼 的帖子

请问你有没有按照2楼的建议测试一下呢?
欢迎加入论坛QQ群,我的签名中有群号。
作者: 愚无尽    时间: 2009-5-19 16:00

进来学习一下。。。。。。




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2