Configurare Proxmox per fare NAT

Questo articolo è una traduzione di quanto scritto quì. Piu o meno adattata per Proxmox VE 6.x.

Proxmox utilizza i bridge per fornire connettività Internet alla macchine virtuali, ma in un bridge c’è bisogno di un indirizzo IP esterno per ognuna delle macchine virtuali. Se si ha a disposizione un numero limitato di indirizzi IP, si può utilizzare NAT per fornire accesso Internet alle proprie macchine. Tuttavia è preferibile avere un IP pubblico statico se si eseguono servizi pubblici come un web server. Oggi vediamo come impostare il NAT su Proxmox.

Passo 1: Creare un bridge

Entrare sull’host PVE via SSH ed editare il file /etc/network/interfaces

vi /etc/network/interfaces

Aggiungiamo un nuovo bridge, chiamato vmbr2 (quello creato da PVE di default si chiama vmbr0), come segue:

auto vmbr2
#private sub network
iface vmbr2 inet static
        address  192.168.1.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 '192.168.1.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
  • vmbr2 : Questo è il nome bridge per il NAT.
  • vmbr0 : Questo è il bridge di default già configurato nel file.
  • 192.168.1.0/24 : Questa sarà la rete interna che utilizzeremo nelle macchine virtuali. Gli IP interni utilizzabili in questa rete saranno: 192.168.1.2 – 192.168.1.254
  • bridge_ports none : Le bridge ports quì sono configurate su none, visto che non ci collegheremo all’esterno direttamente.

Salvate il file e chiudetelo: avete configurato il vostro nuovo bridge!

Passo 2: Attivare il Bridge NAT

Per attivare il bridge NAT si può utilizzare questo comando:

ifup vmbr2

adesso il bridge è attivo.

Passo 3: Configurazione delle VM

Il passaggio finale, consiste nel configurare le VM per usare un indirizzo IP statico, visto che DHCP non è presente. A seconda del sistema operativo che si utilizza, impostare (ad esempio) i seguenti parametri:

  • IP : 192.168.1.2
  • Gateway : 192.168.1.1
  • Netmask : 255.255.255.0

Per future VM, si possono usare gli indirizzi seguenti:

  • 192.168.1.3
  • 192.168.1.4
  • ..fino a 254

Passo 4: Utilizzare il bridge corretto

Per default, le nuove VM cercheranno di utilizzare il bridge vmbr0, ma così facendo non riusciranno ad uscire attraverso il NAT. Occorre impostare vmbr2 nella configurazione della VM:

Passo 5: (opzionale) Port-forwarding per fornire servizi all’esterno

Sull’host PVE, supponendo di voler inoltrare le richieste che arrivano sulle porte 80 e 443 ad un reverse proxy (guest) con indirizzo IP 192.168.1.2, facciamo in modo che i seguenti comandi vengano eseguiti all’avvio (es. tramite /etc/rc.local):

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 192.168.1.2:80
iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.1.2:443

Leave a Reply

Your email address will not be published. Required fields are marked *

© 2024 Bertorello.info | WordPress Theme : ScrollMe

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close