Proxmox Netzwerkkonfiguration zweite IP einrichten

MrOhlson

Cadet 3rd Year
Registriert
Okt. 2015
Beiträge
49
Hallo,

bin gerade am Verzweifeln, da ich mit der Netzwerkkonfiguration von Proxmox nicht zurecht komme. Folgendes Problem:

Habe einen Rootserver und habe dort Proxmox nach dieser Anleitung installiert: https://www.howtoforge.com/tutorial/how-to-install-proxmox-ve-4-on-debian-8-jessie/ Dementsprechend sieht auch meine Netzwerkkonfiguration aus:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address <Haupt-IP>
netmask 255.255.255.0
network 89.163.220.0
broadcast 89.163.220.255
gateway 89.163.220.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 62.141.32.5 62.141.32.4 62.141.32.3
dns-search moonshot.servdiscount-customer.com

auto eth0:1
iface eth0:1 inet static
address 10.155.6.**
netmask 255.255.252.0

auto vmbr0
iface vmbr0 inet static
address 192.168.2.9
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 '192.168.2.0/24' -o eth0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.2/24' -o eth0 -j MASQUERADE

Das funktioniert auch alles und ist hauptsächlich nach dem Tutorial eingerichtet. Jetzt habe ich mir eine zusätzliche IP beantragt und würde die gerne komplett unabhängig von den anderen mit einer Separaten VM in Proxmox laufen lassen

Mein Ansatz war zunächst dies hinzuzufügen:

auto vmbr1
iface vmbr1 inet static
address <Zusätzliche-IP>
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0

Leider bin ich mir nicht sicher, ob das auf diese Weise funktioniert. Jedenfalls habe ich mir dann eine VM mit vmbr1 als Bridge angelegt. Nun weiß ich allerdings auch nicht, was ich in der VM (Debian 9) in der Netzwerkkonfiguration eintragen soll. Könnte mir jemand vielleicht erklären, wie ich das einrichten kann?

Das ist mein erster Server und hauptsächlich zum Experimentieren, deswegen habe ich leider noch nicht so viel Ahnung.

Viele Grüße

MrOhlson
 
Ob die Konfiguration jetzt so im einzelnen stimmt müsste man nochmal überprüfen. Aber eigentlich gibst du der neuen VM eine beliebige IP-Adresse im gewählten Adressbereich und die Bridge setzt du als Gateway in die Freiheit.

Ein simpler ISC-DHCP-Server mit Schnittstellen in sämtlichen Netzen ist auch immer praktisch.
 
Warum hast du eht0.1 angelegt? Denn du schreibst du hast die Anleitung befolgt, davon finde ich aber nix in dieser übrigens veralteten Anleitung. Dies bezieht sich auf Proxmox 4, aktuell ist inzwischen Version 5.

Wenn deine zweite IP exklusiv einer VM zur Verfügung gestellt werden soll könntest du folgendes probieren:
Ein weiteres virtuelles Interface anlegen, z.B. eth0.2, und dieses per passthrough exklusiv der VM zuweisen. Müsste man aber testen ob dies funktioniert, das ist nur eine Vermutung von mir.

Dein Interesse in allen Ehren aber muss es für Testzwecke und rumspielen ein öffentlich erreichbarer Server sein? Tut es da nicht auch Virtualbox? Ich will dir das nicht ausreden was du da tust aber bevor du dich an so eine erweiterte Netzwerkkonfiguration wagst solltest du dich mit der Absicherung des bestehenden Systems beschäftigen. Verschlüsselung des (Management-)Traffics, Verwendung sicherer Kennwörter, SSH am besten nur per public key auth, kein Remotezugriff für Root, Host-Firewall, usw usf.
Denn ein eigener Server bedeutet nicht nur Freiheit bei der Konfiguration sondern auch Verantwortung was mit dem System passiert.
 
Hallo,

die eth0:1 und eth0 wurden schon vom Hoster angelegt und um ehrlich zu sein bin ich mir gar nicht sicher wozu eth0:1 da ist, wird aber wohl benötigt. Ich habe natürlich Proxmox 5 installiert aber trotzdem nach dieser Anleitung die Einrichtung vollzogen.

Exakt die zweite IP soll exklusiv für eine neue VM zur Verfügung stellen. Kannst du mir sagen wie genau ich das mit dem eth0:2 und passthrough in die Interfacesdatei eintragen müsste?

Gerade um die Sicherheit zu testen nutze ich auch diesen Server. Keine Sorge SSH ist mit Keys abgesichert, meine Kennwörter sind mindestens 40 Zeichen lang und ufw und fail2ban verwende ich auch und sonst verwende ich auch DANE, DNSSEC und HPKP ich dachte eigentlich immer, dass ich ganz gut abgesichert bin. Mein Problem ist halt, dass ich bei den Netzwerkkonfigurationen nicht ganz durchblicke, und deswegen um Hilfe frage.

Viele Grüße

MrOhlson
 
Das klingt ja schon mal wesentlich besser als die meisten öffentlich erreichbaren Server :)
Ich persönlich bin kein Freund von ufw da zuviel von alleine bereits freigegeben ist und würde dies eher klassisch per iptables absichern.
Die Weboberfläche von proxmox würde ich noch per SSL/TLS absichern und den Webserver per WAF (z.B. mod_security) absichern.

Die Einrichtung der zweiten IP erfolgt in zwei getrennten Abschnitten:
1. Einrichtung eines virtuellen Interfaces mit der zweiten IP: https://www.debian.org/doc/manuals/debian-reference/ch05.de.html#_the_virtual_interface
2. Passthrough des virtuellen Interface an die neu erstellte IP. Dazu musst die PCI Bus Number herausbekommen des virtuellen Interface und diese in die Config-File eintragen. https://pve.proxmox.com/wiki/Pci_passthrough

Der gesamte Aufbau ist halt schon eine etwas fortgeschrittene Konfiguration und die beschriebene Weg kann klappen, muss aber nicht.
 
Hallo,

leider kann ich die Methode mit dem PCI Passthrough nicht anwenden, da kein interrupt remapping support vorhanden ist. Zumindest habe ich inzwischen erfahren, dass mit diesem Eintrag:

auto eth0:2
iface eth0:2 inet static
address <Zweite-IP>
netmask 255.255.255.255

die zweite IP eingerichtet werden kann. Allerdings schaffe ich es jetzt nicht, diese IP exklusiv für die eine VM zur Verfügung zu stellen. Gibt es noch eine Alternative zum PCI Passthrough?
Ergänzung ()

Nachdem ich die zweite IP eingerichtet habe habe ich dann ein Bridge hinzugefügt:

auto vmbr1
iface vmbr1 inet static
address 192.168.3.9
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 '192.168.3.0/24' -o eth0:2 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.3.0/24' -o eth0:2 -j MASQUERADE

Und auch entsprechend die Netzwerkeinstellungen in der VM vorgenommen. Von der VM funktioniert Ping 192.168.3.9 jedoch komme ich nicht ins Internet aus der VM. Wo liegt der Fehler?

Vielen Dank im voraus.

Viele Grüße

MrOhlson
 
Zuletzt bearbeitet:
Ich habe mal versucht eine Skizze zu machen, wie ich mir das ganze Vorgestellt habe.
Der Zugriff über die Haupt-IP über vmbr0 zu dem VM funktioniert. Der Zugriff von VM4,5,6 zu vmbr1 (zum Host) funktioniert auch. Wie ist es möglich, dass ich die zweite IP ausschließlich für den Zugriff auf VM4,5,6 einrichte während die Haupt IP nur Zugriff auf VM1,2,3 hat, wie es bereits jetzt der Fall ist?

Viele Grüße

MrOhlson
 

Anhänge

  • ServerConfig.png
    ServerConfig.png
    19,8 KB · Aufrufe: 893
Hast du jetzt zwei öffentliche IPs? Könntest du noch die restlichen Daten posten, welche dir dein Hoster zur zweiten IP geschickt hat (Gateway etc.)? Hast du auf einem Host zwei Default Gateways, dann kann das so ohne weiteres nicht funktionieren. Denn woher soll der Host wissen, an welches Gateway er welche Pakete versenden soll. Das geht nur über Policy-Based Routing (unter Proxmox z.b. iptables2) funktionieren. Du musst also festlegen, von welchem Netz Pakete zu welchem Gateway geschickt werden. Im Netz gibt es dazu haufenweise Anleitungen.

Was dir noch fehlt sind die Routing-Einträge und Routing-Regeln bei Schnittstellen Startup/Shutdown.
Was ich auch nicht ganz verstehe was jetzt die private IP-Adresse bei vmbr1 zu suchen hat, wenn du doch eine zweite öffentliche bekommen hast?

Schau mal hier herein:
https://www.thomas-krenn.com/de/wiki/Zwei_Default_Gateways_in_einem_System

und hier:
https://linux-club.de/wiki/opensuse/Policy_Based_Routing
 
Durch Verwendung von Shorewall ist das Problem gelöst worden.

Viele Grüße

MrOhlson
 
Zuletzt bearbeitet: (Problem gelöst)
Aha und wenn der nächste ein ähnliches Problem hat findet er ggf. irgendwann diesen Thread und liest nur: Problem gelöst aber eben nicht wie. Daher wäre es doch nett wenn du die Lösung zumindest grob skizzieren könntest.
 
Hi,

wir ich sagte lässt sich das Problem durch die Nutzung von Shorewall (NAT findet dann darüber statt) beheben. Dank verschiedener Tutorials im Internet, die man direkt über Google finden kann, sollte die Einrichtung wenig Probleme bereiten.

Viele Grüße

MrOhlson
 
Zurück
Oben