Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python在Windows防火墙中读取和添加规则_Windows_Python 2.7_Firewall_Windows Firewall - Fatal编程技术网

如何使用Python在Windows防火墙中读取和添加规则

如何使用Python在Windows防火墙中读取和添加规则,windows,python-2.7,firewall,windows-firewall,Windows,Python 2.7,Firewall,Windows Firewall,我正在创建一个需要不断监控防火墙的服务,以防止不知情的用户移除服务的门。我的意图是使用python实现这一点 所以,我寻找它,没有思考 我可以使用python阅读并向Windows防火墙添加规则吗?以管理员身份打开python IDLE或以管理员身份打开CMD并加载python。目的是在运行程序时,您应该具有管理员权限 def blockrule(): import os c=input('Enter Directory in the format "C:\Program Files (x8

我正在创建一个需要不断监控防火墙的服务,以防止不知情的用户移除服务的门。我的意图是使用python实现这一点

所以,我寻找它,没有思考


我可以使用python阅读并向Windows防火墙添加规则吗?

以管理员身份打开python IDLE或以管理员身份打开CMD并加载python。目的是在运行程序时,您应该具有管理员权限

def blockrule():
 import os
 c=input('Enter Directory in the format "C:\Program Files (x86)\Common Files\"(without ""): \n')
 d=input('Enter prefix: ')
 e=input('Enter \n"1" for inbound \n"2" for outbound \n"3" for both \nWithout ""\n')
 a=[];b=[]
 for root, dirs, files in os.walk(c):
  for name in files:
   a=a+[[(os.path.join(root,name))]]
 for i in range(len(a)):
  if a[i][0][-3:]=='exe':
   b=b+a[i]
 print('Number of files: '+str(len(a))+'\nNumber of .exe files: '+str(len(b)))
 for i in range (len(b)):
  name=d+str(i)
  if e=='1':
   os.popen('netsh advfirewall firewall add rule name="'+name+'" dir=in action=block program= "'+ b[i]+'" enable=yes profile=any')
  if e=='2':
   os.popen('netsh advfirewall firewall add rule name="'+name+'" dir=out action=block program= "'+ b[i]+'" enable=yes profile=any')
  if e=='3':
   os.popen('netsh advfirewall firewall add rule name="'+name+'" dir=in action=block program= "'+ b[i]+'" enable=yes profile=any')
   os.popen('netsh advfirewall firewall add rule name="'+name+'" dir=out action=block program= "'+ b[i]+'" enable=yes profile=any')

在将源代码添加到您的帖子时,请使用所需的修饰,以便将文本标记为代码,并将段落分隔为代码行。请阅读“降价帮助”以获取完整的规格。另外,请准确地写下你的代码的目标。