From dbe5336a8e23235ab7d14a0c3dd40ebc024fe402 Mon Sep 17 00:00:00 2001 From: Schemen Date: Thu, 3 Mar 2022 11:58:17 +0100 Subject: [PATCH] Add accept iptables rule for out interface --- logic/gateway.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/logic/gateway.go b/logic/gateway.go index ccb62867..215f33eb 100644 --- a/logic/gateway.go +++ b/logic/gateway.go @@ -26,8 +26,8 @@ func CreateEgressGateway(gateway models.EgressGatewayRequest) (models.Node, erro } node.IsEgressGateway = "yes" node.EgressGatewayRanges = gateway.Ranges - postUpCmd := "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" - postDownCmd := "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" + postUpCmd := "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -A FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" + postDownCmd := "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -D FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" if gateway.PostUp != "" { postUpCmd = gateway.PostUp } @@ -89,8 +89,8 @@ func DeleteEgressGateway(network, nodeid string) (models.Node, error) { node.PostUp = "" node.PostDown = "" if node.IsIngressGateway == "yes" { // check if node is still an ingress gateway before completely deleting postdown/up rules - node.PostUp = "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + node.Interface + " -j MASQUERADE" - node.PostDown = "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + node.Interface + " -j MASQUERADE" + node.PostUp = "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -A FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" + node.PostDown = "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -D FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" } node.SetLastModified() @@ -125,8 +125,8 @@ func CreateIngressGateway(netid string, nodeid string) (models.Node, error) { } node.IsIngressGateway = "yes" node.IngressGatewayRange = network.AddressRange - postUpCmd := "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + node.Interface + " -j MASQUERADE" - postDownCmd := "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + node.Interface + " -j MASQUERADE" + postUpCmd := "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -A FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" + postDownCmd := "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -D FORWARD -o " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" if node.PostUp != "" { if !strings.Contains(node.PostUp, postUpCmd) { postUpCmd = node.PostUp + "; " + postUpCmd