root@wireguard:/# iptables -F FORWARD root@wireguard:/# iptables -t nat -F PREROUTING root@wireguard:/# wgctl restart => INFO: 🟢 🔒 Restarting WireGuard... => INFO: 🔒 Restoring rules from peer meta files... => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.100 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.105 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.102 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.103 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.200 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.101 => INFO: 🚫 🔒 Blocked 10.1.103.1 → 10.0.0.210:9000/tcp => DEBUG: 🔍 rule::apply: peer_name=guest-test ip=10.1.103.1 => DEBUG: 🔍 rule::apply: set meta rule=guest for guest-test => INFO: 📋 🔒 Applied rule 'guest' to: 10.1.103.1 => INFO: 🔒 Restored rule 'guest' for: guest-test (10.1.103.1) => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.100 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.105 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.102 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.103 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.200 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.101 => INFO: 🚫 🔒 Blocked 10.1.103.2 → 10.0.0.210:9000/tcp => DEBUG: 🔍 rule::apply: peer_name=guest-test2 ip=10.1.103.2 => DEBUG: 🔍 rule::apply: set meta rule=guest for guest-test2 => INFO: 📋 🔒 Applied rule 'guest' to: 10.1.103.2 => INFO: 🔒 Restored rule 'guest' for: guest-test2 (10.1.103.2) => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.100 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.105 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.102 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.103 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.200 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.101 => INFO: 🚫 🔒 Blocked 10.1.103.3 → 10.0.0.210:9000/tcp => DEBUG: 🔍 rule::apply: peer_name=guest-test3 ip=10.1.103.3 => DEBUG: 🔍 rule::apply: set meta rule=guest for guest-test3 => INFO: 📋 🔒 Applied rule 'guest' to: 10.1.103.3 => INFO: 🔒 Restored rule 'guest' for: guest-test3 (10.1.103.3) => INFO: 🚫 🔒 Blocked 10.1.2.1 → 10.0.0.100:8006/tcp => INFO: 🚫 🔒 Blocked 10.1.2.1 → 10.0.0.105:8007/tcp => INFO: 🚫 🔒 Blocked 10.1.2.1 → 10.0.0.210:9000/tcp => DEBUG: 🔍 rule::apply: peer_name=laptop-nuno ip=10.1.2.1 => DEBUG: 🔍 rule::apply: set meta rule=user for laptop-nuno => INFO: 📋 🔒 Applied rule 'user' to: 10.1.2.1 => INFO: 🔒 Restored rule 'user' for: laptop-nuno (10.1.2.1) => SUCCESS: ✅ 🔒 WireGuard restarted root@wireguard:/# iptables -L FORWARD -n Chain FORWARD (policy ACCEPT) target prot opt source destination DROP 6 -- 10.1.2.1 10.0.0.210 tcp dpt:9000 DROP 6 -- 10.1.2.1 10.0.0.105 tcp dpt:8007 DROP 6 -- 10.1.2.1 10.0.0.100 tcp dpt:8006 DROP 6 -- 10.1.103.3 10.0.0.210 tcp dpt:9000 DROP 0 -- 10.1.103.3 10.0.0.101 DROP 0 -- 10.1.103.3 10.0.0.200 DROP 0 -- 10.1.103.3 10.0.0.103 DROP 0 -- 10.1.103.3 10.0.0.102 DROP 0 -- 10.1.103.3 10.0.0.105 DROP 0 -- 10.1.103.3 10.0.0.100 DROP 6 -- 10.1.103.2 10.0.0.210 tcp dpt:9000 DROP 0 -- 10.1.103.2 10.0.0.101 DROP 0 -- 10.1.103.2 10.0.0.200 DROP 0 -- 10.1.103.2 10.0.0.103 DROP 0 -- 10.1.103.2 10.0.0.102 DROP 0 -- 10.1.103.2 10.0.0.105 DROP 0 -- 10.1.103.2 10.0.0.100 DROP 6 -- 10.1.103.1 10.0.0.210 tcp dpt:9000 DROP 0 -- 10.1.103.1 10.0.0.101 DROP 0 -- 10.1.103.1 10.0.0.200 DROP 0 -- 10.1.103.1 10.0.0.103 DROP 0 -- 10.1.103.1 10.0.0.102 DROP 0 -- 10.1.103.1 10.0.0.105 DROP 0 -- 10.1.103.1 10.0.0.100 ACCEPT 0 -- 0.0.0.0/0 0.0.0.0/0 ACCEPT 0 -- 0.0.0.0/0 0.0.0.0/0