Configuration réseau · 8 min read · Oct 28, 2025

Passerelle NAT, Iptables, Redirection de Port, Configuration DNS et DHCP - Serveur Ubuntu 8.10

Passerelle NAT, Iptables, Redirection de Port, Configuration DNS et DHCP - Serveur Ubuntu 8.10

Alors vous êtes trop pauvre pour vous permettre un autre routeur coûteux et voulez faire les choses vous-même. Vous avez trouvé le bon tutoriel ! Ce tutoriel vous montrera comment configurer un routeur Ubuntu 8.10 avec NAT, redirection de port, un serveur DNS et un serveur DHCP.

Pourquoi Ubuntu, demandez-vous ?

Non seulement Ubuntu est un excellent système d’exploitation, mais il est également très flexible et suffisamment puissant pour vous permettre de démarrer rapidement ! Remarque : Veuillez redémarrer votre ordinateur après chaque étape. Cela garantira que tout fonctionne correctement.

Certaines des choses de base dont nous aurons besoin sont…

DHCP – dhcp3-server
DNS – bind9
iptables – inclus /w ubuntu

D’abord les choses d’abord

Vous allez avoir besoin de 2 cartes réseau. Prenez votre première carte réseau et branchez votre connexion WAN dessus. Vous devriez savoir quelle carte réseau c’est, eth0 eth1 etc… Si vous ne savez pas ce que c’est, essayez par essais et erreurs, mon ami.

Disons simplement que votre carte WAN sera eth0 ( si c’est eth1, faites tout de la même manière mais ajustez votre configuration en conséquence). Nous voulons localiser le fichier /etc/network/interfaces. Faites un VI sur le fichier comme ceci

sudo vi /etc/network/interfaces

Vous devriez voir dans le fichier ( si vous n’avez rien configuré encore) :

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, voir interfaces(5).
# L'interface réseau de boucle
auto lo
iface lo inet loopback

Nous allons ajouter ceci au fichier. En passant, si vous ne savez pas comment utiliser VI, utilisez nano ou apprenez VI.

auto eth0
iface eth0 inet dhcp

Le code auto eth0 indique à eth0 de démarrer au démarrage, similaire à l’exécution de

sudo ifconfig eth0 up

Le code iface eth0 inet dhcp indique à l’interface eth0 de rechercher un serveur DHCP et d’obtenir ses informations à partir de là. C’est important si vous êtes connecté à un modem câble, car vous voudrez obtenir une IP publique de votre FAI.

La prochaine étape consiste à configurer votre carte réseau eth1. Ce sera votre carte “LAN”.

Si vous vous souvenez, notre configuration /etc/network/interfaces ressemblait à

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, voir interfaces(5).
# L'interface réseau de boucle
auto lo
iface lo inet loopback
# L'interface réseau principale
auto eth0
iface eth0 inet dhcp

Nous allons faire un VI dans le fichier interfaces à nouveau et ajouter quelques lignes supplémentaires :

sudo vi /etc/network/interfaces

Ajoutez ces lignes en bas du fichier.

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

Cela vous donne simplement une adresse IP statique pour votre serveur sur votre carte LAN.

Votre fichier devrait maintenant ressembler à ceci.

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, voir interfaces(5).
# L'interface réseau de boucle
auto lo
iface lo inet loopback
# L'interface réseau 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

Maintenant, avant d’oublier, éditons votre fichier /etc/hosts.

sudo vi /etc/hosts

Faites en sorte que le fichier ressemble au mien, bien que si vous appelez votre serveur userve ou myserver, vous puissiez le changer.

Notez également le nom de domaine asus.local, c’est une bonne idée d’utiliser le vôtre comme mydomain.local mais vous pouvez utiliser ce que j’ai pour des raisons d’apprentissage.

Nous utilisons .local car c’est facile à retenir et ce n’est pas public, donc nous n’interférerons avec rien.

127.0.0.1       localhost server.localhost
172.17.207.121  server.asus.local server asus.local

Maintenant que nous avons configuré nos interfaces, nous allons installer et configurer un serveur DHCP. Pour installer le serveur DHCP, exécutez la commande

sudo apt-get install dhcp3-server

Éditons le fichier dhcpd.conf. Commencez par exécuter la commande

sudo vi /etc/dhcp3/dhcpd.conf

Maintenant, s’il y a quoi que ce soit dans ce fichier, SUPPRIMEZ-LE.

Copiez et collez ceci dans votre fichier, puis écrivez et quittez.

ddns-update-style none;
option domain-name "whatever.local"; //changez ceci en quelque chose que vous voulez.local comme mydomain.local
option domain-name-servers 172.17.207.121, 24.92.226.41; //vous voudrez peut-être également changer ce deuxième serveur DNS en celui de votre FAI
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; //vous pouvez étendre la plage simplement en changeant .100 en .254 ou quelque chose comme ça
}

Maintenant exécutez la commande

sudo /etc/init.d/dhcp3-server start

Cela démarrera votre serveur DHCP et nous pouvons étiqueter cette partie COMPLÈTE.

Passons à… DNS

Bind est le paquet DNS que nous allons utiliser. Pour l’installer, il suffit d’exécuter

sudo apt-get install bind9

Cela téléchargera et installera notre serveur bind.

Commencez par exécuter la commande

vi /etc/bind/named.conf

Puis supprimez tout dans le fichier et cherchez mes commentaires, généralement indiqués par //.

// Ceci est le fichier de configuration principal pour le serveur DNS BIND nommé. // Veuillez lire /usr/share/doc/bind9/README.Debian.gz pour des informations sur la // structure des fichiers de configuration BIND dans Debian, *AVANT* de personnaliser // ce fichier de configuration. // Si vous ajoutez simplement des zones, veuillez le faire dans /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; // prime le serveur avec la connaissance des serveurs racines zone "." { type hint; file "/etc/bind/db.root"; }; // soyez autoritaire pour les zones de transfert et inverse localhost, et pour // les zones de diffusion selon la RFC 1912 zone "asus.local" { //changez asus.local en ce que vous avez nommé votre domaine comme mydomain.local type master; file "/etc/bind/zones/asus.local.db"; //ce fichier ou dossier n'existe pas donc nous devrons le créer }; zone "207.17.172.in-addr.arpa" { type master; file "/etc/bind/zones/rev.207.17.172.in-addr.arpa";//ce fichier n'existe pas donc nous devrons également le créer }; 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";

Avant de pouvoir créer les deux fichiers asus.local.db et rev.207.17.172.in-addr.arpa, nous devons éditer un autre fichier. Donc

sudo vi /etc/bind/named.conf.options

Supprimez tout dans le fichier et utilisez ceci…

options {
        directory "/var/cache/bind";
        // S'il y a un pare-feu entre vous et les serveurs de noms que vous voulez
        // contacter, vous devrez peut-être corriger le pare-feu pour permettre à plusieurs
        // ports de communiquer.  Voir http://www.kb.cert.org/vuls/id/800113
        // Si votre FAI a fourni une ou plusieurs adresses IP pour des serveurs de noms stables,
        // vous voudrez probablement les utiliser comme serveurs de transfert.
        // Décommentez le bloc suivant, et insérez les adresses en remplaçant
        // le placeholder de tous les 0.
         forwarders {
          24.92.226.41; //très important, changez ceci en votre serveur DNS LOCAL de votre FAI
      24.92.224.40;
         };
        auth-nxdomain no;    # conforme à la RFC1035
        listen-on-v6 { any; };
};

Faites attention aux commentaires, ils vous disent de CHANGER notre adresse(s) de serveurs de transfert en celle(s) de votre FAI LOCAL.

Ensuite, cd dans votre répertoire bind :

cd /etc/bind/
sudo mkdir zones
cd zones
sudo vi asus.local.db

(ou utilisez votre nom de domaine comme mydomain.local.db.)

Une fois que vous êtes dans le fichier asus.local.db ou mydomain.local.db (quel que soit le nom que vous lui avez donné), copiez et collez ceci, en apportant les modifications appropriées à votre nom de domaine.

$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 exemple
server          IN      A       172.17.207.121 //un exemple
macpro          IN      A       172.17.207.4   //un exemple

Si vous faites un nslookup macpro, vous obtiendrez 172.17.207.4 en réponse, donc changez les noms de domaine et les IP selon vos paramètres.

Ensuite, nous allons vi le fichier rev.207.17.172.in-addr.arpa qui n’existe pas encore. Mais il existera une fois que nous l’aurons enregistré. Donc, en supposant que vous êtes toujours dans le dossier zones :

vi rev.207.17.172.in-addr.arpa

Copiez et collez ce que j’ai ici, en apportant les modifications appropriées.

$ORIGIN .
$TTL 28800      ; 8 heures
207.17.172.IN-ADDR.ARPA IN SOA server.asus.local. admin.asus.local. (
                                2008110601 ; serial
                                28800      ; refresh (8 heures)
                                7200       ; retry (2 heures)
                                604800     ; expire (1 semaine)
                                86400      ; minimum (1 jour)
                                )
                        NS      server.asus.local.
$ORIGIN 207.17.172.IN-ADDR.ARPA.
4                     PTR    macpro.asus.local.

Donc maintenant, si vous faites une recherche inversée sur 172.17.207.4, vous obtiendrez macpro.asus.local.

Maintenant exécutez la commande pour démarrer named :

sudo /etc/init.d/named start

S’il ne démarre pas, vérifiez les journaux dans /var/logs.

Dernier mais non le moindre, IPTABLES

La première chose à faire est d’éditer sysctl.conf dans le dossier /etc/, donc :

sudo vi /etc/sysctl.conf

Décommentez la ligne 28. Cela signifie enlever le # devant. La ligne devrait être net.ipv4.ip_forward=1

Ensuite, allons dans rc.local :

sudo vi /etc/rc.local

Ajoutez ces deux lignes en bas du fichier :

/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE

Cela configurera votre passerelle en utilisant iptables. Vous pouvez utiliser iptables pour rendre cela plus sécurisé que cette configuration de base.

Pour rediriger des ports, vous pouvez ajouter quelque chose comme ceci à la fin du fichier 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:3389

La longue ligne ci-dessus redirigera tout le trafic entrant sur le port 3389 vers l’IP 172.17.207.4, afin que je puisse accéder à distance à ma machine Windows depuis l’extérieur de mon réseau.

Vous pouvez faire cela avec n’importe quel port que vous souhaitez.

RESTARTEZ !

De plus, signalez tout problème et je mettrai à jour ce tutoriel. Merci, Jeremy utilisateur gibbsj.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.