Proxmox,如果转发到 LoadBalancer,则来自不同节点的端口 443 上的 iptables 连接被拒绝

Proxmox,如果转发到 LoadBalancer,则来自不同节点的端口 443 上的 iptables 连接被拒绝

在运行 Proxmox 的专用机器上,端口转发存在一些问题。我为 LoadBalancing 创建了一个 LXC-Container,并将端口 80 和 443 上的所有传入请求转发到它。如果我从此设置中的任何节点通过 https 使用 curl 或 git clone,则会在端口 443 上拒绝连接。这是一个问题,我的 GitLab Runners 无法连接到 GitLab。所以我需要一种方法来仅转发来自外部 IP 的端口 80 和端口 443 的请求。

例如:

外部 IP:88.88.88.88、88.88.89.88

负载均衡器 IP:10.10.10.20

如果我尝试通过端口 443 从 10.10.10.10 或 10.10.10.20 进行连接,则会收到连接被拒绝错误。

我的配置在 /etc/network/interfaces

auto lo
iface lo inet loopback

iface enp2s0 inet manual

auto vmbr0
iface vmbr0 inet static
    address 88.88.88.88/24
    gateway 88.88.88.1
    bridge-ports enp2s0
    bridge-stp off
    bridge-fd 0

auto vmbr1
iface vmbr1 inet static
    address  10.10.10.1
    netmask  255.255.255.0
    bridge_ports none
    bridge_stp off
    bridge_fd 0

    post-up   echo 1 > /proc/sys/net/ipv4/ip_forward
    post-up   iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
    post-up   iptables -t raw -I PREROUTING -i fwbr+ -j CT --zone 1
    post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
    post-down iptables -t raw -D PREROUTING -i fwbr+ -j CT --zone 1

    # Nameserver
    post-up   iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 53 -j DNAT --to 10.10.10.10:53
    post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 53 -j DNAT --to 10.10.10.10:53
    post-up   iptables -t nat -A PREROUTING -i vmbr0 -p udp --dport 53 -j DNAT --to 10.10.10.10:53
    post-down iptables -t nat -D PREROUTING -i vmbr0 -p udp --dport 53 -j DNAT --to 10.10.10.10:53

    # Load Balancer
    post-up   iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 10.10.10.20:80
    post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 10.10.10.20:80
    post-up   iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 10.10.10.20:443
    post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 10.10.10.20:443

iface vmbr0:0 inet static
    address 88.88.89.88/24
    gateway 88.88.89.1
    bridge-ports enp2s0
    bridge-stp off
    bridge-fd 0

非常感谢您的帮助。

相关内容