Upload files to "/"
This commit is contained in:
21
client.py
Normal file
21
client.py
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import xmlrpc.client, argparse
|
||||||
|
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument(
|
||||||
|
"--enable",
|
||||||
|
action="store_true",
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--disable",
|
||||||
|
action="store_true",
|
||||||
|
)
|
||||||
|
|
||||||
|
args = parser.parse_args()
|
||||||
|
proxy = xmlrpc.client.ServerProxy("http://localhost:6767/")
|
||||||
|
|
||||||
|
if args.enable:
|
||||||
|
result = proxy.enable()
|
||||||
|
print(result)
|
||||||
|
elif args.disable:
|
||||||
|
result = proxy.disable()
|
||||||
|
print(result)
|
||||||
57
server.py
Normal file
57
server.py
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
import os, subprocess
|
||||||
|
from xmlrpc.server import SimpleXMLRPCServer
|
||||||
|
|
||||||
|
def firewall_rule():
|
||||||
|
rule_name = "Inetaccess"
|
||||||
|
|
||||||
|
check_cmd = f'''
|
||||||
|
$rule = Get-NetFirewallRule -DisplayName "{rule_name}" -ErrorAction SilentlyContinue
|
||||||
|
if ($rule) {{ Write-Host "exists" }} else {{ Write-Host "not_exist" }}
|
||||||
|
'''
|
||||||
|
|
||||||
|
try:
|
||||||
|
result = subprocess.run(
|
||||||
|
['powershell', '-Command', check_cmd],
|
||||||
|
capture_output=True,
|
||||||
|
text=True,
|
||||||
|
check=True
|
||||||
|
)
|
||||||
|
|
||||||
|
if "exists" in result.stdout:
|
||||||
|
return True
|
||||||
|
|
||||||
|
create_cmd = f'''
|
||||||
|
New-NetFirewallRule -DisplayName "{rule_name}" -Direction Outbound -Action Block -Protocol TCP -RemotePort 80,443 -Enabled False
|
||||||
|
'''
|
||||||
|
|
||||||
|
subprocess.run(
|
||||||
|
['powershell', '-Command', create_cmd],
|
||||||
|
capture_output=True,
|
||||||
|
text=True,
|
||||||
|
check=True
|
||||||
|
)
|
||||||
|
return True
|
||||||
|
|
||||||
|
except Exception:
|
||||||
|
return False
|
||||||
|
|
||||||
|
def enable():
|
||||||
|
try:
|
||||||
|
firewall_rule()
|
||||||
|
os.system("netsh advfirewall firewall set rule name=Inetaccess new enable=yes")
|
||||||
|
return 0
|
||||||
|
except Exception:
|
||||||
|
return 1
|
||||||
|
|
||||||
|
def disable():
|
||||||
|
try:
|
||||||
|
firewall_rule()
|
||||||
|
os.system("netsh advfirewall firewall set rule name=Inetaccess new enable=no")
|
||||||
|
return 0
|
||||||
|
except Exception:
|
||||||
|
return 1
|
||||||
|
|
||||||
|
server = SimpleXMLRPCServer(("localhost", 6767))
|
||||||
|
server.register_function(enable, "enable")
|
||||||
|
server.register_function(disable, "disable")
|
||||||
|
server.serve_forever()
|
||||||
Reference in New Issue
Block a user