Networking · 7 min read · Oct 28, 2025
Gateway NAT, Iptables, Port Forwarding, DNS E DHCP Setup - Server Ubuntu 8.10
Gateway NAT, Iptables, Port Forwarding, DNS E DHCP Setup - Server Ubuntu 8.10
Quindi sei troppo povero per permetterti un altro router costoso e vuoi fare le cose da solo. Hai trovato il tutorial giusto! Questo tutorial ti mostrerà come configurare un router Ubuntu 8.10 con NAT, port forwarding, un server DNS e un server DHCP.
Perché Ubuntu, chiedi?
Non solo Ubuntu è un ottimo sistema operativo, è anche molto flessibile e abbastanza potente da permetterti di avviarti e funzionare in pochissimo tempo! Nota: Riavvia il computer dopo ogni passaggio. Questo garantirà che tutto funzioni correttamente.
Alcune delle cose di base di cui avremo bisogno sono…
DHCP – dhcp3-server
DNS – bind9
iptables – incluso /w ubuntu
Prima di tutto
Avrai bisogno di 2 schede di rete. Prendi la tua prima scheda di rete e collega la tua connessione WAN ad essa. Dovresti sapere quale scheda di rete è, eth0, eth1, ecc… Se non lo sai, prova e sbaglia, amico mio.
Diciamo solo che la tua scheda WAN sarà eth0 ( se è eth1, fai tutto allo stesso modo ma adatta la tua configurazione di conseguenza). Vogliamo localizzare il file /etc/network/interfaces. Fai un VI sul file come
sudo vi /etc/network/interfacesDovresti vedere nel file ( se non hai ancora configurato nulla):
# Questo file descrive le interfacce di rete disponibili sul tuo sistema
# e come attivarle. Per ulteriori informazioni, vedere interfaces(5).
# L'interfaccia di rete di loopback
auto lo
iface lo inet loopback
Aggiungeremo questo al file. Come nota a margine, se non sai come usare VI, usa nano o impara VI.
auto eth0
iface eth0 inet dhcp
Il codice auto eth0 dice a eth0 di avviarsi all’avvio, simile a eseguire
sudo ifconfig eth0 upIl codice iface eth0 inet dhcp dice all’interfaccia eth0 di cercare un server DHCP e ottenere le sue informazioni da lì. Questo è importante se sei collegato a un modem via cavo, poiché vorrai ottenere un IP pubblico dal tuo ISP.
Il passaggio successivo è configurare la tua scheda di rete eth1. Questa sarà la tua scheda “LAN”.
Se ricordi, la nostra configurazione /etc/network/interfaces sembrava
# Questo file descrive le interfacce di rete disponibili sul tuo sistema
# e come attivarle. Per ulteriori informazioni, vedere interfaces(5).
# L'interfaccia di rete di loopback
auto lo
iface lo inet loopback
# L'interfaccia di rete principale
auto eth0
iface eth0 inet dhcpDobbiamo entrare di nuovo nel file delle interfacce e aggiungere alcune righe:
sudo vi /etc/network/interfacesAggiungi queste righe in fondo al file.
auto eth1
iface eth1 inet static
address 172.17.207.121
netmask 255.255.255.0
broadcast 172.17.207.255
network 172.17.207.0
Questo ti dà semplicemente un indirizzo IP statico per il tuo server sulla tua scheda LAN.
Il tuo file dovrebbe ora apparire così.
# Questo file descrive le interfacce di rete disponibili sul tuo sistema
# e come attivarle. Per ulteriori informazioni, vedere interfaces(5).
# L'interfaccia di rete di loopback
auto lo
iface lo inet loopback
# L'interfaccia di rete principale
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 172.17.207.121
netmask 255.255.255.0
broadcast 172.17.207.255
network 172.17.207.0
Ora, prima di dimenticarci, modifichiamo il tuo file /etc/hosts.
sudo vi /etc/hostsFai in modo che il file assomigli al mio, anche se chiami il tuo server userve o myserver puoi cambiarlo.
Nota anche il nome di dominio asus.local, è una buona idea usare il tuo come mydomain.local, ma puoi usare quello che ho per scopi di apprendimento.
Usiamo .local perché è facile da ricordare e non è pubblico, quindi non interferiremo con nulla.
127.0.0.1 localhost server.localhost
172.17.207.121 server.asus.local server asus.localOra che abbiamo configurato le nostre interfacce, installeremo e configureremo un server DHCP. Per installare il server DHCP esegui il comando
sudo apt-get install dhcp3-serverModifichiamo il file dhcpd.conf. Inizia eseguendo il comando
sudo vi /etc/dhcp3/dhcpd.confOra, se c’è qualcosa in quel file, RIMUOVILO.
Copia e incolla questo nel tuo file, poi scrivi e esci.
ddns-update-style none;
option domain-name "whatever.local"; //cambia questo in qualcosa che vuoi .local come mydomain.local
option domain-name-servers 172.17.207.121, 24.92.226.41; //potresti anche voler cambiare quel secondo server dns nel server DNS locale del tuo ISP
option routers 172.17.207.121;
default-lease-time 42300;
max-lease-time 84600;
authoritative;
log-facility local7;
subnet 172.17.0.0 netmask 255.255.255.0 {
range 172.17.207.1 172.17.207.100; //puoi espandere l'intervallo semplicemente cambiando .100 in .254 o qualcosa del genere
}
Ora esegui il comando
sudo /etc/init.d/dhcp3-server startQuesto avvierà il tuo server DHCP e possiamo etichettare questa parte COME COMPLETATA.
Passando a… DNS
Bind è il pacchetto DNS che utilizzeremo. Per installarlo, eseguiamo semplicemente
sudo apt-get install bind9Questo scaricherà e installerà il nostro server bind.
Inizia eseguendo il comando
vi /etc/bind/named.confPoi rimuovi tutto nel file e cerca i miei commenti, di solito indicati da //.
// Questo è il file di configurazione principale per il server DNS BIND chiamato. // Si prega di leggere /usr/share/doc/bind9/README.Debian.gz per informazioni sulla // struttura dei file di configurazione BIND in Debian, *PRIMA* di personalizzare // questo file di configurazione. // Se stai solo aggiungendo zone, ti preghiamo di farlo in /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; // prime il server con la conoscenza dei server root zone "." { type hint; file "/etc/bind/db.root"; }; // essere autorevole per le zone forward e reverse localhost, e per // zone broadcast come per RFC 1912 zone "asus.local" { //cambia asus.local in qualsiasi nome tu abbia dato al tuo dominio come mydomain.local type master; file "/etc/bind/zones/asus.local.db"; //questo file o cartella non esiste quindi dovremo crearla }; zone "207.17.172.in-addr.arpa" { type master; file "/etc/bind/zones/rev.207.17.172.in-addr.arpa";//questo file non esiste quindi dovremo anche crearlo }; zone "localhost" { type master; file "/etc/bind/db.local"; }; zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; }; zone "0.in-addr.arpa" { type master; file "/etc/bind/db.0"; }; zone "255.in-addr.arpa" { type master; file "/etc/bind/db.255"; }; include "/etc/bind/named.conf.local";
Prima di poter creare i due file asus.local.db e rev.207.17.172.in-addr.arpa, dobbiamo modificare un altro file. Quindi
sudo vi /etc/bind/named.conf.optionsRimuovi tutto nel file e usa questo…
options {
directory "/var/cache/bind";
// Se c'è un firewall tra te e i nameserver a cui vuoi
// parlare, potrebbe essere necessario sistemare il firewall per consentire a più
// porte di comunicare. Vedi http://www.kb.cert.org/vuls/id/800113
// Se il tuo ISP ha fornito uno o più indirizzi IP per nameserver stabili,
// probabilmente vorrai usarli come forwarders.
// Decommenta il blocco seguente e inserisci gli indirizzi sostituendo
// il segnaposto di tutti 0.
forwarders {
24.92.226.41; //molto importante, cambia questo con il tuo server DNS locale del tuo ISP
24.92.224.40;
};
auth-nxdomain no; # conformarsi a RFC1035
listen-on-v6 { any; };
};Fai attenzione ai commenti, ti dicono di CAMBIARE i nostri indirizzi dei forwarders nel DNS del tuo ISP LOCALE.
Successivamente, cd nella tua directory bind:
cd /etc/bind/
sudo mkdir zones
cd zones
sudo vi asus.local.db
(O usa il tuo nome di dominio come mydomain.local.db.)
Una volta che sei nel file asus.local.db o nel file mydomain.local.db (qualunque cosa tu l’abbia chiamato), copia e incolla questo, apportando le modifiche appropriate al nome del tuo dominio.
$ORIGIN .
$TTL 4000 ;
asus.local. IN SOA server.asus.local. admin.asus.local. (
2007031001 ; serial
28800 ; refresh
3600 ; retry
604800 ; expire
38400 ; min
)
NS server.asus.local.
$ORIGIN asus.local.
IN A 172.17.207.121
www IN A 172.17.207.121 //un esempio
server IN A 172.17.207.121 //un esempio
macpro IN A 172.17.207.4 //un esempioSe esegui un nslookup macpro, otterrai 172.17.207.4 come risposta, quindi cambia i nomi di dominio e gli IP secondo le tue impostazioni.
Successivamente, andremo a modificare il file rev.207.17.172.in-addr.arpa che non esiste ancora. Ma lo sarà una volta che lo salveremo. Quindi, supponendo che tu sia ancora nella cartella zones:
vi rev.207.17.172.in-addr.arpaCopia e incolla ciò che ho qui, apportando le modifiche appropriate.
$ORIGIN .
$TTL 28800 ; 8 ore
207.17.172.IN-ADDR.ARPA IN SOA server.asus.local. admin.asus.local. (
2008110601 ; serial
28800 ; refresh (8 ore)
7200 ; retry (2 ore)
604800 ; expire (1 settimana)
86400 ; minimum (1 giorno)
)
NS server.asus.local.
$ORIGIN 207.17.172.IN-ADDR.ARPA.
4 PTR macpro.asus.local.Quindi ora, se esegui un lookup inverso su 172.17.207.4, otterrai macpro.asus.local.
Ora esegui il comando per avviare named:
sudo /etc/init.d/named startSe non si avvia, controlla i log in /var/logs.
Ultimo ma non meno importante, IPTABLES
Prima di tutto, dobbiamo modificare sysctl.conf nella cartella /etc/, quindi:
sudo vi /etc/sysctl.confDecommenta la riga 28. Questo significa rimuovere il # davanti ad essa. La riga dovrebbe essere net.ipv4.ip_forward=1
Successivamente, andiamo a rc.local:
sudo vi /etc/rc.localAggiungi queste due righe in fondo al file:
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADEQuesto configurerà il tuo gateway utilizzando iptables. Puoi utilizzare iptables per rendere questo più sicuro di questa configurazione di base.
Per inoltrare le porte, puoi aggiungere qualcosa del genere alla fine del file rc.local.
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth0 -d jgibbs.dyndns.org --dport 3389 -j DNAT --to 172.17.207.4:3389La lunga riga sopra inoltrerà tutto il traffico in arrivo sulla porta 3389 all’IP 172.17.207.4, così posso accedere in remoto al mio computer Windows da fuori la mia rete.
Puoi farlo con qualsiasi porta tu desideri.
RIAVVIA!
Inoltre, segnala eventuali problemi e io aggiornerò questo tutorial con aggiornamenti. Grazie, Jeremy utente gibbsj.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.