#!/usr/bin/env/python3 import subprocess class wall: iface = "" def __init__(self, iface = "lan"): self.iface = iface def walu_init(self): subprocess.run(["iptables", "-A", "FORWARD", "-i", self.iface, "-j", "REJECT", "--reject-with", "icmp-host-prohibited"]) def walu_down(self): subprocess.run(["iptables", "-D", "FORWARD", "-i", self.iface, "-j", "REJECT", "--reject-with", "icmp-host-prohibited"]) def walu_block(self, mac): subprocess.run(["iptables", "-D", "FORWARD", "-i", self.iface, "-m", "mac", "--mac-source", mac, "-j", "ACCEPT"]) subprocess.run(["iptables", "-I", "FORWARD", "-i", self.iface, "-m", "mac", "--mac-source", mac, "-j", "REJECT", "--reject-with", "icmp-host-prohibited"]) def walu_unblock(self, mac): subprocess.run(["iptables", "-D", "FORWARD", "-i", self.iface, "-m", "mac", "--mac-source", mac, "-j", "REJECT", "--reject-with", "icmp-host-prohibited"]) subprocess.run(["iptables", "-I", "FORWARD", "-i", self.iface, "-m", "mac", "--mac-source", mac, "-j", "ACCEPT"])