python实现ipsec开权限实例

yipeiwu_com6年前Python基础

本文实例讲述了python实现ipsec开权限的方法。分享给大家供大家参考。具体实现方法如下:

windows自带的命令行工具netsh ipsec static add filter不支持批量添加,还会添加重复的规则进去。我用python编写了ipsecset解决了上述问题,支持批量添加,同一个列表里避免重复的规则。

为了方便使用,已编译成exe,源码和程序在下面的链接里

语法:
参数和netsh ipsec static add filter的参数是一样的,不区分大小写

必要参数:
srcaddr=(me/any/特定ip/网段)
dstaddr=(me/any/特定ip/网段)
dstport=(0/特定端口)

默认参数:
srcport=0
srcmask=255.255.255.255
dstmask=255.255.255.255
protocol=TCP
mirrored=YES
filterlist="选用规则"
description="add by script {time_now}"

批量操作:
“-"和","两种操作符,可混合使用
支持批量操作的参数:srcport,dstport,srcaddr,dstaddr
其中srcaddr和dstaddr仅最后一个段支持
列如,srcport=1000-1003,1007,1009
srcaddr=1.1.1.10-13,15

示例如下:

复制代码 代码如下:
ipsecset srcport=1.1.1.1 dstport=2.2.2.2-30,31 dstport=8080 filterlist="基础规则"
ipsecset srcport=me dstport=any dstport=81-85,87
ipsecset srcport=me dstport=10.1.1.0 dstmask=255.255.255.0  dstport=6161 protocol=udp

 
代码保存在github上 https://github.com/fmnisme/ipsecset
编译后的文件保存在dist文件夹

或者点击此处本站下载

希望本文所述对大家的python程序设计有所帮助。

相关文章

python Socket之客户端和服务端握手详解

python Socket之客户端和服务端握手详解

简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据 1. 客户端socketClient.py代码 import socket s = socket.soc...

python使用marshal模块序列化实例

本文实例讲述了python使用marshal模块序列化的方法,分享给大家供大家参考。具体方法如下: 先来看看下面这段代码: import marshal data1 = ['abc'...

Windows平台Python编程必会模块之pywin32介绍

Windows平台Python编程必会模块之pywin32介绍

在Windows平台上,从原来使用C/C++编写原生EXE程序,到使用Python编写一些常用脚本程序,成熟的模块的使用使得编程效率大大提高了。 不过,python模块虽多,也不可能满足...

python操作oracle的完整教程分享

1. 连接对象 操作数据库之前,首先要建立数据库连接。 有下面几个方法进行连接。 >>>import cx_Oracle >>>db = cx_O...

详解Appium+Python之生成html测试报告

详解Appium+Python之生成html测试报告

思考:测试用例执行后,如何生成一个直观漂亮的测试报告呢? 分析: 1.unittest单元测试框架本身带有一个textTestRunner类,可以生成txt文本格式的测试报告,但是页面不...