1

このセットアップは、proxmox を保護し、ファイアウォール、プライベート LAN、および DHCP/DNS を VM に提供し、すべての VM にアクセスするために LAN への IPsec 接続を提供する Proxmox 自体でホストされる opnsense VM の背後にある proxmox に基づく必要があります。 /NATされていないProxmox。サーバーは典型的な Hetzner サーバーであるため、NIC のみですが、この NIC には複数の IP またはサブネットがあります。

PCIパススルー設定のクラスターブロッカーのため、これが私の代替手段です

  1. 1 NIC (eth0) を備えた Proxmox サーバー
  2. 3 つのパブリック 1IP、IP2/3 はデータセンターの MAC によって (eth0 に) ルーティングされます
  3. KVM ブリッジ設定 (eth0 no ip、ip1 で eth0 にブリッジされた vmbr0)
  4. vmbr30、10.1.7.0/24 上のプライベート LAN
  5. proxmox サーバーのショアウォール

セットアップの概要をより明確にするために、この図を作成します: (完璧かどうかわからないので、改善点を教えてください)

ここに画像の説明を入力

テキストの説明:

Proxmox のネットワーク インターフェイス

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual
    pre-up sleep 2

auto vmbr0
# docs at  
iface vmbr0 inet static
    address  External-IP1(148.x.y.a)
    netmask  255.255.255.192

    # Our gateway is reachable via Point-to-Point tunneling
    # put the Hetzner gateway IP address here twice
    gateway  DATACENTER-GW1
    pointopoint DATACENTER-GW1

    # Virtual bridge settings
    # this one is bridging physical eth0 interface
    bridge_ports eth0
    bridge_stp off
    bridge_fd 0
    pre-up sleep 2
    bridge_maxwait 0
    metric 1

    # Add routing for up to 4 dedicated IP's we get from Hetzner
    # You need to

    # opnsense
    up route add -host External-IP2(148.x.y.b)/32 dev vmbr0
    # rancher
    up route add -host External-IP2(148.x.y.c)/32 dev vmbr0

    # Assure local routing of private IPv4 IP's from our
    # Proxmox host via our firewall's WAN port
    up ip route add 10.1.7.0/24 via External-IP2(148.x.y.b) dev vmbr0

auto vmbr30
iface vmbr30 inet static
    address  10.1.7.2
    netmask  255.255.255.0
    bridge_ports none
    bridge_stp off
    bridge_fd 0
    pre-up sleep 2
    metric 1

Proxmox のショアウォール

インターフェイス

wan     eth0            detect          dhcp,tcpflags,nosmurfs
wan     vmbr0           detect          bridge
lan     vmbr30          detect          bridge

ポリシー:

lan             lan             ACCEPT          -               -
fw              all             ACCEPT          -               -
all             all             REJECT          INFO               -

OPNセンス

  1. WAN は ExternalIP2 で、MAC-XX で vmbr0 に接続されています
  2. LAN は 10.1.7.1 で、vmbr30 に接続されています

何が機能していますか:

  • 基本的なセットアップは正常に機能し、IP2 で opnsense にアクセスでき、IP1 で proxmox にアクセスでき、ip3 で rancher-VM にアクセスできます。これはルーティングを必要としないものです。
  • IPSec モバイル クライアントを使用して OPNsense に接続し、仮想 IP 範囲 172.16.0.0/24 から LAN (10.1.7.0/24) へのアクセスを提供できます
  • OpenVPN 接続中に 10.1.7.1 (opnsense) にアクセスできます
  • OPNsense(10.1.7.1) (シェル) から 10.1.7.11 / 10.1.7.151 にアクセスできます
  • othervm(10.1.7.151) (シェル) から 10.1.7.11 / 10.1.7.1 にアクセスできます

機能していないもの:

a) IPsec クライアントから 10.1.7.11/10.1.7.151 または 10.1.7.2 に接続する

b) [アップデート 1 で解決] 10.1.7.1 から 10.1.7.2 に接続する (opnsense)

c) 非同期ルーティングを使用しているようですが、たとえば 10.1.7.1:8443 にアクセスできますが、if エントリがたくさん表示されます

c) 規範

d) IPSec LAN 共有には、IPSEC チェーンに「from * to LAN ACCEPT」というルールが含まれますが、それはうまくいきませんでした。「from * to * ACCEPT」を追加する必要がありました。ここに画像の説明を入力


質問:

I) もちろん、a)b)c)d) を修正したいのですが、おそらく c) と d) を理解することから始めます。

II) このセットアップで、2 番目の NIC を追加すると役に立ちますか?

III) proxmox ホストで net.ipv4.ip_forward を有効にしたことが問題である可能性があります (むしろルーティングされるべきではありませんか?)

この問題が解決したら、Proxmox でプライベート ネットワークを備えたアプライアンスとして OPNsense を実行し、HAproxe+LE を使用して一部のサービスを外界に渡し、IPsec を使用してプライベート LAN にアクセスする方法に関する包括的なガイドを掲載したいと思います。

更新1:

proxmox で vmbr0 から削除するup ip route add 10.1.7.0/24 via IP2 dev vmbr0と、proxmox が 10.1.7.0/24 にアクセスできず、LAN ネットワークからアクセスできなかったという問題が修正されました。

更新 2:

pci-passthrough を使用する更新/変更されたセットアップを作成しました。目標は同じです-複雑さが軽減されます-こちらを参照してください

4

1 に答える 1