Come configurare Nat su Ubuntu

Come configurare Nat su Ubuntu

Traduzione di Nat o Indirizzo di rete Consente a più computer su una rete privata di condividere un IP comune per accedere a Internet. Un set di indirizzi IP viene utilizzato all'interno dell'organizzazione e l'altro set viene utilizzato per presentarsi a Internet. Questo aiuta a conservare lo spazio IP pubblico limitato. Allo stesso tempo, fornisce anche sicurezza nascondendo la rete interna dall'accesso diretto dal mondo esterno.

Come funziona il NAT?

Nat converte semplicemente l'indirizzo di origine del pacchetto in uscita in un indirizzo IP pubblico per renderlo instradabile su Internet. Allo stesso modo, l'indirizzo di origine dei pacchetti di risposta proveniente dall'esterno (Internet) viene convertito in indirizzo IP locale o privato.

Cosa copriremo?

In questa guida impareremo a impostare Ubuntu 20.04 come router Nat. Per questo useremo una VM Ubuntu come router Nat e un'altra VM Ubuntu come VM client ai fini del test. Per testare l'installazione, stiamo utilizzando VirtualBox per la creazione e la gestione delle macchine virtuali (VM).

Controllo preflight

  1. Due VM Ubuntu con una con due interfacce di rete (NICS).
  2. Ubuntu 20.04 installato su entrambe le macchine virtuali.
  3. Accesso amministrativo (sudo) su entrambe le macchine virtuali.

Setup sperimentale

Abbiamo usato la seguente configurazione per le due VM sopra menzionate:

1. VM1 (router Nat): La nostra macchina per router ha due interfacce di rete: ENP0S3 ed ENP0S8 (questi nomi possono variare a seconda del sistema). L'interfaccia ENP0S3 funge da interfaccia WAN (Internet) ed è accessibile dal mondo esterno (Internet). Il suo indirizzo IP è assegnato tramite DHCP e nel nostro caso è 192.168.11.201.

L'interfaccia ENP0S8 è un'interfaccia locale o LAN ed è accessibile solo sulla rete locale in cui il nostro client verrà distribuito. Abbiamo impostato manualmente l'indirizzo IP per questa interfaccia come 10.10.10.1/24 e "l'indirizzo del gateway è lasciato vuoto".

2. VM2 (macchina client): La macchina client ha solo un'interfaccia locale o LAN i.e. enp0s3. È collegato alla rete locale della macchina sopra (VM2) con l'indirizzo IP impostato su 10.10.10.3/24. L'unica cosa da prendersi cura è che il gateway in questo caso è l'indirizzo IP dell'interfaccia locale (ENP0S8) della macchina sopra (VM2) i.e., 10.10.10.1

Il riepilogo della configurazione delle due macchine virtuali è riportato nella tabella seguente:

Nome dell'interfaccia → enp0s3 enp0s8
Nome VM ↓ indirizzo IP Gateway IP indirizzo IP Gateway IP
VM1 (router NAT) 192.168.11.201/24 Via DHCP 10.10.10.1/24
VM2 (client) 10.10.10.3/24 10.10.10.1

Cominciamo…

Ora che abbiamo impostato gli indirizzi IP richiesti sulla nostra macchina, siamo impostati per configurarli. Controlliamo prima la connettività tra queste macchine. Entrambe le macchine dovrebbero essere in grado di ping a vicenda. VM1, che è la nostra macchina per router Nat, dovrebbe essere in grado di raggiungere Internet globale in quanto è collegato a WAN tramite ENP0S3. VM2, che è la nostra macchina client locale, non dovrebbe essere in grado di raggiungere Internet fino a quando non configuriamo il router NAT su VM1. Ora, segui i passaggi seguenti:

Passo 1. Controlla prima gli indirizzi IP su entrambe le macchine con il comando:

$ ip aggiungi | grep enp

Passo 2. Controllare anche la connettività delle macchine prima di configurare il router NAT come menzionato sopra. Puoi usare il comando ping come:

$ ping 8.8.8.8

O

$ ping www.Google.com

Il risultato per VM1 (router NAT VM) è mostrato di seguito:

Il risultato per VM2 (clientVM) è mostrato di seguito:

Entrambi i VM stanno funzionando come ci aspettavamo che fossero. Ora inizieremo a configurare VM2 (NAT Router).

Passaggio 3. Su VM2 Apri il sysctl.conf file e imposta la "rete.IPv4.Parametro IP_Forward ”a uno rimborsandolo:

$ sudo nano /etc /sysctl.conf

Passaggio 4. Ora abilita le modifiche al file sopra usando il comando:

$ sudo syscctl -p

Passaggio 5. Ora, installa il pacchetto Iptables-Persistent (Caricatore di avvio per Regole NetFilter, plug-in iptables) utilizzando:

$ sudo apt installare iptables-permanente

Passaggio 6. Elenca le politiche iptable già configurate emettendo il comando:

$ sudo iptables -l

Passaggio 7. Ora maschera le richieste dall'interno della LAN con l'IP esterno di Nat Router VM.

$ sudo iptables -t nat -a postrouting -j mascherade
$ sudo iptables -t nat -l

Passaggio 8. Salva le regole iptable usando:

$ sudo sh -c “iptables -save>/etc/iptables/regole.v4 "

Testare l'installazione

Ora, per verificare se tutto funziona bene, eseguire il ping di qualsiasi IP pubblico dal VM2 (client):

Nota: Se lo desideri, puoi aggiungere manualmente un server DNS nella configurazione della rete client per la risoluzione del nome di dominio. Ciò sopprimerà il "fallimento temporaneo nella risoluzione del nome". Abbiamo usato Google DNS IP I.e. 8.8.8.8 nel nostro VM1.

Possiamo vedere che Ping ora funziona come previsto su VM1 (macchina client).

Conclusione

Nat è uno strumento molto essenziale per preservare lo spazio degli indirizzi IPv4 pubblico limitato. Sebbene IPv6 stia emergendo il protocollo IP di prossima generazione che dovrebbe completare le limitazioni IPv4, ma questo è un processo di lunga durata; Quindi fino ad allora Nat è molto importante per le organizzazioni.