Configurer un routeur basé sur GNU/Linux

Table des matières
L'accès à Internet (ou à d'autres réseaux si vous préférez) dans un réseau local est le point de sortie des réseaux domestiques, d'entreprise, gouvernementaux, etc. Que ce soit à la maison, au travail ou dans un laboratoire, la bonne administration des ressources joue un rôle fondamental dans le bon déroulement des activités. L'accès à Internet et les services basés sur le Web représentent des points critiques dans la gestion des ressources informatiques.
Un réseau LAN possède un point d'interconnexion où toutes les communications sont "routées" vers d'autres réseaux, et donc via Internet. Normalement, dans les connexions domestiques, le fournisseur de services Internet (FAI) installe un périphérique qui agit comme un modem et un routeur pour le réseau, permettant à tous les ordinateurs du réseau local d'accéder aux services Internet.
Qu'est-ce qu'un routeur ?« C'est un appareil qui fournit une connectivité au niveau de la couche réseau du modèle ISO/OSI. Sa fonction principale est d'envoyer ou d'acheminer des paquets de données d'un réseau à un autre, c'est-à-dire d'interconnecter des sous-réseaux, en comprenant par sous-réseau un ensemble de machines IP pouvant communiquer sans l'intervention d'un routeur (via des ponts), et donc elles ont un réseau différent préfixes. "
Les routeurs interconnectent alors les réseaux; par exemple, si Bob est dans le sous-réseau 10.0.0.0/24 et Alice est dans le sous-réseau 20.0.0.0/24, puisqu'ils appartiennent à des sous-réseaux différents, ils ne peuvent pas communiquer directement. Si un routeur est installé avec accès aux deux sous-réseaux (par exemple avec 2 cartes réseau, chacune configurée sur chaque sous-réseau), Bob pourrait utiliser le routeur pour envoyer des données à Alice et vice versa.

AGRANDIR

Chaque hôte maintient une table de routage, où il pointe essentiellement vers l'adresse IP du routeur qui peut l'acheminer vers une adresse IP (réseau ou hôte). Dans le cas du même sous-réseau, chaque hôte « sait » qu'il peut communiquer directement avec d'autres systèmes sur le sous-réseau lui-même (car ils sont « voisins » sur le même sous-réseau et n'ont pas besoin de routeurs pour communiquer).
Dans un réseau local typique, les hôtes configurent une adresse IP et un masque de sous-réseau qui déterminent l'espace d'adressage qu'ils peuvent contacter sans avoir besoin de routeurs. Si les hôtes doivent accéder à Internet, une passerelle par défaut est en outre configurée, qui indique l'adresse IP du routeur utilisé pour l'accès à Internet.
La configuration des serveurs de noms ou DNS est également importante, mais pour ce guide, nous utiliserons Internet DNS, par exemple 8.8.8.8 (le DNS public de Google).
Dans le cas de la passerelle par défaut sur un réseau local, le routeur fournit non seulement des services de routage mais également de masquage. Le masquage est nécessaire pour que les paquets soient envoyés à Internet avec l'adresse IP wan du routeur, c'est-à-dire l'adresse IP que le routeur possède dans le sous-réseau du fournisseur d'accès Internet, afin que les systèmes intermédiaires puissent acheminer le chemin du routeur indépendamment du LAN. Adresse IP qui a envoyé le paquet. De cette façon, chaque sous-réseau LAN peut être configuré avec n'importe quelle adresse, que d'autres clients l'utilisent ou non, puisque le routeur modifie l'adresse IP source avec la sienne avant d'envoyer les paquets. Lorsqu'un paquet « revient » d'Internet, le routeur utilise un journal de connexion et « sait » à quel hôte livrer le paquet.
Dans un réseau local typique, le modem ADSL agit comme un routeur et une passerelle par défaut pour le réseau local. Le fait est que l'adresse IP publique est attribuée au périphérique ADSL et qu'elle fournit un accès via le réseau LAN configurable (généralement un réseau 192.168.1.0/24).
Le même périphérique ADSL attribue normalement des configurations réseau au réseau local via DHCP, il suffit donc de configurer l'ordinateur pour qu'il prenne une configuration automatiquement et tout fonctionne.
Selon le modèle de modem et le type d'accès Internet, il est possible que le modem n'agisse qu'en tant que tel, étant donné que l'hôte qui lui est connecté initie la connexion Internet (par exemple via PPPoE). Dans d'autres cas, il est possible de "router" le modem pour qu'il agisse en tant que modem-routeur, établissant lui-même la connexion Internet. Certains fournisseurs fournissent un accès direct au réseau public en indiquant au client l'adresse IP publique fixe qui lui a été attribuée, la passerelle par défaut et le DNS. Que l'adresse IP soit publique, détermine essentiellement que tout hôte dans le monde connecté à Internet (sans restrictions) pourra nous contacter directement.
C'est généralement le cas pour les réseaux d'entreprise, et c'est pourquoi ce guide est présenté sous un tel scénario.
Systèmes impliquésLAN :
Bob:
Adresse MAC : AA : BB : CC : 22 : 33 : 44
Adresse IP : 192.168.1.2/24 (attribuable via DHCP)
Système d'exploitation : Windows XP
Passerelle réseau (DNS + DHCP) :
Adresse MAC (LAN) : AA : BB : CC : 44 : 55 : 66
Adresse IP du réseau local : 192.168.1.1/24
Adresse IP WAN : 200.51.2.1/30
Chemin par défaut utilisant 200.51.2.2/30
Système d'exploitation : GNU/Linux Ubuntu
L'INTERNET:
Routeur Internet :
Adresse IP1 : 200.51.2.2/30
Adresse IP2 : 180.0.0.2/16

Système d'exploitation : GNU/Linux Ubuntu 14.04
Alice (serveur Web) :
Adresse IP : 180.0.0.1/16

AGRANDIR

Dans le graphique, les systèmes à droite du cloud Internet sont des systèmes connectés au réseau public. Bob est sur un réseau local et le routeur agissant comme passerelle par défaut (ou passerelle par défaut du réseau local de Bob) est le système sur lequel nous allons nous concentrer.
Ce dernier doit fournir des services DHCP au LAN de Bob et un service de passerelle (routeur avec mascarade).
1) Dans un premier temps, les interfaces réseau du routeur doivent être configurées, afin qu'il dispose d'une connexion sur le LAN (192.168.1.1/24) et sur Internet (WAN, 200.51.2.1/30); Pour cela, éditez le fichier de configuration réseau :

 # vim / etc / réseau / interfaces 

2) En supposant que eth0 est l'interface LAN et eth1 est l'interface WAN, spécifiez les paramètres comme suit :

A noter qu'il était indiqué au départ que les interfaces réseau devaient se lever automatiquement avec l'interface de bouclage, au moyen de la directive "auto"
Ensuite, pour chaque interface, LAN ou eth0 et WAN ou eth1, la configuration réseau a été spécifiée de manière statique.
Pour ce cas, nous supposons que le FAI ou le FAI de Bob lui a attribué l'adresse IP publique et corrige 200.51.2.1/30 et que sa passerelle est 200.51.2.2.
3) Configurez le nom de la Gateway en éditant les fichiers "/etc/hostname" et "/etc/hosts"
Remplacez le nom qui apparaît actuellement en prenant soin de mettre le même dans les deux. Pour ce tutoriel, j'ai sélectionné "Gateway" comme nom.
Cours:

 # vim / etc / nom d'hôte 

Insérez le nouveau nom :

Puis lancez dans le terminal :

 # vim / etc / hôtes 

Et spécifiez le nom du routeur comme indiqué ci-dessous :

4) La fonctionnalité de transfert de paquets doit être activée dans la passerelle que nous configurons, afin qu'elle agisse comme un routeur. Exécuter dans un terminal Gateway :

 # vim /etc/sysctl.conf 

5) Décommentez ensuite la ligne "net.ipv4.ip_forward = 1”Et redémarrer (pour des raisons de test)

Pour tester la configuration, exécutez dans le terminal :

 # cat / proc / sys / net / ipv4 / ip_forward 

Si la sortie est "1", cela signifie que la fonction de transfert de paquets est activée :

6) Une fois le système configuré en tant que routeur, ajoutez une fonctionnalité de masquage. Avec iptables Il est possible d'indiquer que le trafic sortant du LAN vers n'importe quel réseau (internet) est masqué par cette passerelle.
Exécutez la commande suivante :

 # echo "iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE" >> /etc/init.d/rules-fw.sh 

Cela génère le fichier "/etc/reglas-fw.sh". Accordez maintenant les autorisations d'exécution :

 # chmod + x /etc/init.d/rules-fw.sh 

Ensuite, avec update-rc.d, indiquez d'exécuter rules-fw.sh au démarrage :

 # update-rc.d rules-fw.sh start 90 2 3 4 5. 

Enfin redémarrez et testez si la règle a été appliquée. Pour cela, après redémarrage, exécutez :

 # iptables -t nat -L -n 

Et la sortie doit afficher les règles appliquées, dans lesquelles celle de masquage doit apparaître :

7) Pour que le routeur attribue des paramètres réseau aux hôtes sur le réseau local, installez un serveur DHCP avec la commande suivante :

 # apt-get install isc-dhcp-server 

8 ) Configurez le service DHCP pour qu'il utilise uniquement l'interface réseau LAN (nous ne voulons pas distribuer d'IP sur Internet !). Pour ce faire, modifiez le fichier de configuration :

 # vim / etc / default / isc-dhcp-server 

Spécifiez l'interface LAN :

9) Modifiez le fichier de configuration du serveur DHCP pour déterminer le pool d'adresses IP, la passerelle à attribuer, etc. Exécuter sur une terminaison :

 # vim /etc/dhcp/dhcpd.conf 

Saisissez la configuration du sous-réseau, le DNS à attribuer et la passerelle. Pour l'hôte de Bob, nous avons forcé l'attribution de l'adresse IP 192.168.1.2 :

 sous-réseau 192.168.1.0 masque de réseau 255.255.255.0 {option routeurs 192.168.1.1; option domain-name-servers 8.8.8.8; option nom de domaine "lan" ; faisant autorité; } hôte Bob {matériel ethernet AA: BB: CC: 22: 33: 44; adresse fixe 192.168.1.2; } 

Redémarrez le service :
 # /etc/init.d/isc-dhcp-server restart 

Vérifiez dans le syslog du système si un client demande une affectation IP :
AGRANDIR

Comme vu dans le tutoriel DHCP Spoofing Simple, l'attribution d'IP via DHCP attribue à Bob l'adresse que nous avons spécifiée avec son adresse MAC.

10) Si tout est configuré correctement, Bob pourrait envoyer un ping à Alice :

12) Enfin, Bob accède au site Web d'Alice :

Il est important de noter que bien que ce guide soit basé sur un scénario simple, les commandes et méthodes de configuration ne varient pas d'un scénario à l'autre puisque les composants et logiciels impliqués sont les mêmes. Il existe des distributions Linux spécialement préparées pour agir en tant que routeur sur un réseau local, telles que OpenWRT, DD-WRT et Pfsense (freeBSD). Ces distributions offrent une interface de configuration conviviale et ne nécessitent pas de commandes saisies manuellement sur les terminaux. Il s'agit d'une proposition simple pour mettre en place notre propre passerelle basée sur GNU/Linux sans l'aide d'assistants de configuration, c'est-à-dire "faite entièrement à la main".
Dans des tutoriels ultérieurs, la possibilité de configurer un DNS local, un pare-feu complet et le service Proxy seront ajoutés à ce guide, pour gérer l'accès à Internet, alors soyez prudent.Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave