pfsense, proxmox 1x IPv4
-
Hallo
ich habe einen Hetzner root-Server mit Debian und Proxmox eingerichtet wie hier beschrieben:
Mit dem Ziel, dass ich nur eine öffentliche IPv4 benötige und mehrere VM's hosten kann.
Die pfsense ist als VM auf Proxmox installiert und eingerichtet. Die VM's kommen ins Internet und sind, wenn ich Port Forwarding einrichte, auch per SSH übers Internet erreichbar.Ein Diagramm vom Netzwerk ist auf obigem Link oder als Bild:
https://schroederdennis.de/wp-content/uploads/2020/06/proxmox-root-server-architektur-1024x595.png
Wo ich aktuell nicht weiterkomme sind die Firewallregeln in der pfsense, ich möchte zB. dass ich vom Host aus (192.168.1.1) auf alle VM's per SSH Port 22 komme. Dafür habe ich folgende Regel unter LAN angelegt:
und unter WAN:
Port Weiterleitungen:
Theoretisch müsste damit doch alles offen sein? In der Log steht:
Installierte Pakete sind acme, bind und squid.
Ich teste mit:
root@server ~ # nmap -p22 -A 192.168.1.6|grep ssh 22/tcp filtered ssh root@server ~ #
bzw auch mit ssh user@192.168.1.6. Witzigerweise kann ich zur 192.168.1.3 connecten, das ist die erste VM mit Debian. SSH ist natürlich auf allen entsprechenden VM's eingerichtet und getestet.
-
@BerndHu said in pfsense, proxmox 1x IPv4:
ich möchte zB. dass ich vom Host aus (192.168.1.1) auf alle VM's per SSH Port 22 komme.
Was ist denn der "Host"?
-
@Bob-Dig Sorry. Der "Host" ist das Debian auf dem Proxmox installiert ist und auf dem alle anderen VM-Gäste installiert wurden.
Die Verbindung sollte so sein:
Host (Debian, kein virtuelles System 192.168.1.1) -> pfsense (VM mit der IP 192.168.1.2) -> VM (192.168.1.6)
Hier die Netzwerkkonfiguration von Proxmox:
-
@BerndHu said in pfsense, proxmox 1x IPv4:
Hier die Netzwerkkonfiguration von Proxmox:
Wenn du den Host eh schon ins VM-Netz aufgenommen hast (hab ich nicht so gemacht, Dennis S. aber wohl), dann bist du doch eh schon in diesem Netz. Da spielt die pfSense dann auch keine Rolle mehr, weil sie gar nicht als Gateway genutzt wird. Dein Problem liegt daher woanders. Frage mich aber, warum du vom Host in alle VMs willst.
-
@Bob-Dig Wie hast du es eingerichtet? Hast du eine Idee woran es liegen könnte?
Meine /etc/network/interfaces ist vielleicht noch wichtig:
auto lo iface lo inet loopback auto enp3s0 iface enp3s0 inet static address 144.7xx.xxx.xxx/26 gateway 144.7bb.bbb.bbb up route add -net 144.7cc.ccc.ccc netmask 255.255.255.192 gw 144.7bb.bbb.bbb dev enp3s0 post-up iptables -t nat -A PREROUTING -i enp3s0 -p tcp -m multiport ! --dport 22222 -j DNAT --to-destination 10.1.1.2 post-up iptables -t nat -A PREROUTING -i enp3s0 -p udp -j DNAT --to-destination 10.1.1.2 auto vmbr0 iface vmbr0 inet static address 144.7xx.xxx.xxx/32 bridge-ports none bridge-stp off bridge-fd 0 auto vmbr1 iface vmbr1 inet static address 10.1.1.1/30 bridge-ports none bridge-stp off bridge-fd 0 post-up iptables -t nat -A POSTROUTING -s '10.1.1.0/30' -o enp3s0 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '10.1.1.0/30' -o enp3s0 -j MASQUERADE #PfSense auto vmbr2 iface vmbr2 inet static address 192.168.1.1/24 bridge-ports none bridge-stp off bridge-fd 0 #VM-Netzwerk
Warum ich vom Host zu den VM's will ist einfach, ich muss dann nur einen SSH-Port nach außen öffnen und kann trotzdem auf alle Gäste per SSH drauf, nachdem ich mich im Host eingeloggt habe.
-
@BerndHu Von meinem Verständnis her, wenn du vom Host auf eine deiner VMs verbindest, dann wird der Host automatisch über die vmbr2 gehen, da die im selben Subnetz wie die VMs ist, damit ist die pfSense außen vor, weil nicht involviert. Warum dann aber der Port bei dir nicht offen ist, kann ich nicht sagen. Bin aber selber nur Laie und nutze ssh und Proxmox erst seit kurzem.
-
Lösung gefunden, es war eine falsche netmask in der /etc/network/interfaces bei der VM die nicht erreichbar war:
Falsch: netmask 255.255.255.255
Richtig: netmask 255.255.255.0damit klappt es jetzt.
Danke!