CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : Configurer le rpi comme dhcp

DébutPage précedente
1
Page suivantePage suivante
mrpsicopate mrpsicopate
MP
Niveau 9
13 août 2016 à 20:58:42

Hello !

Comme je souhaitais le faire dans mon précédent post ( https://www.jeuxvideo.com/forums/42-38-47671653-1-0-1-0-ou-placer-le-rpi.htm ) j'ai commencé à configurer le rpi comme on me l'avais dis mais je me heurte à 2 3 problèmes ( en gros le mettre en ruture de trafic entre la box et le switch et y installer un NIDS ).

Voilà actuellement mon réseau :
https://www.noelshack.com/2016-32-1471114250-rpi.png

En gros le rpi est entre la box et le switch.
L'interface connecté à la box ( eth0 ) à comme adresse 192.168.1.41
et celle du côté du switch ( eth1 ) à comme adresse 169.254.53.46.

Du coup j'ai installé isc-dhcp-server sur le petit rpi mais à partir de là j'ai pas mal de problème de configuration.

En fait je ne sais pas trop vers où il faut que je pointe quoi, par exemple le serveur DNS etc faut-il que ce soit le rpi ou la box ? Et pour tout le reste ? Le rpi doit il être le centre de tout puis simplement repointer vers la box ou faut-il que je fasse tout pointer vers la box directement ?

Ps : actuellement avec la configuration que j'ai mise aucun ds pcs connectés au switch n'ont internet.

Si vous avez besoins du tail /var/log/syslog ou de n'importe quoi je reste là.

Merci d'avance.

Google_Bot Google_Bot
MP
Niveau 12
13 août 2016 à 21:24:23

Avant de tout traiter j'aimerais savoir: tu veux aussi intercepter le trafic des machines connectées en WiFi (donc via l'AP WiFi de la box?), ou pas?

mrpsicopate mrpsicopate
MP
Niveau 9
13 août 2016 à 21:29:25

Je voudrai si possible mais j'ai peur que le rpi soit un peu faible pour s'occuper du wifi en plus.

Sinon pourquoi pas si ça tient le coup.

Google_Bot Google_Bot
MP
Niveau 12
13 août 2016 à 22:30:41

Bah fondamentalement ça ne devrait pas plus le charger (il ne gèrera pas "le WiFi", il assurera juste le rôle de passerelle par défaut auprès du réseau côté box aussi).

Bon par contre autant la config pour faire DHCP + routage (feat. SNAT) côté switch c'est pas trop complexe à faire, autant dévier le trafic depuis le LAN côté box ça demande un petit bricolage un poil plus tricky. (car en gros il s'agit de natter le trafic émanant de 192.168.1.0/24 en IP source 192.168.1.41, histoire que ta box achemine les réponses au bon endroit...)
Je peux te filer la conf mais c'est moche :hap:

mrpsicopate mrpsicopate
MP
Niveau 9
13 août 2016 à 23:44:04

Pour le bricolage pas de problème j'ai du temps :)

Je veux bien la conf si ça te dérange pas :)

Sinon côté du dhcp je rentre quoi comme subnet, ... ?

Merci en tout cas !

Google_Bot Google_Bot
MP
Niveau 12
14 août 2016 à 11:28:49

Bien, alors on peut commencer:

Désactive le DHCP de ta box. Ainsi, la seule configuration qu'elle aura à faire, c'est de se placer en 192.168.1.1/24 d'elle-même, et de router les paquets de 192.168.1.0/24 vers le monde extérieur (avec son mécanisme de SNAT, qui change l'origine des paquets en plaçant sa propre adresse WAN à la place).

Configure une IP statique à ton RPi du côté de la box (hé oui, s'il n'y a plus de DHCP, il peut en demander une longtemps... 192.168.1.41 c'est mignon mais c'est une IP assignée dynamiquement par DHCP ça :hap:). En général je place mes routeurs home-made en x.x.x.1, et je fous les périphériques dédiés (genre box, switch manageable) en x.x.x.254 mais c'est une préférence personnelle. Je te conseille juste d'utiliser le même suffixe d'hôte pour le RPi sur les deux réseaux (s'il est en .254 sur le réseau de la box, fous-le aussi en .254 sur le réseau du switch). Donc je le mentionne au cas où mais ça va de soi: configure une IP statique au RPi sur l'interface côté switch aussi.
Dans ton périple de configuration (qui rappelons-le, se déroule dans le fichier /etc/network/interfaces), n'oublie pas d'indiquer l'option gateway 192.168.1.1 dans le bloc de config de la carte réseau du RPi côté Box: le RPi doit router tout ce qu'il ne sait pas acheminer lui-même vers la Box (=trafic vers Internet).

Pense aussi à activer le routage au niveau du RPi: sysctl -w net.ipv4.ip_forward=1 (cette commande active le routage à la volée, sans reboot, et rend le réglage permanent normalement. Dans le cas contraire, cherche #net.ipv4.ip_forward=1 vers la ligne 28 du fichier /etc/sysctl.conf et décommente).

Tu vas pouvoir configurer ton DHCP, je te donne un exemple de config:

authoritative;

option domain-name-servers 208.67.222.222, 208.67.220.220;

subnet 192.168.1.0 netmask 255.255.255.0
{
default-lease-time 600;
max-lease-time 7200;

range 192.168.1.2 192.168.1.253;

option routers 192.168.1.254;
option broadcast-address 192.168.1.255;
}

subnet 192.168.2.0 netmask 255.255.255.0
{
default-lease-time 600;
max-lease-time 7200;

range 192.168.2.1 192.168.1.253;

option routers 192.168.2.254;
option broadcast-address 192.168.2.255;
}

Cet exemple n'est pas exhaustif mais tu as la base: 192.168.1.0/24 est le subnet côté box, 192.168.2.0/24 est le subnet côté switch. Note que le range du premier subnet commence avec le suffixe d'hôte .2: c'est pour éviter de filer à une machine la même IP que ta box (shitstorm ahead, sinon). Tu pourrais même ajouter un bail statique avec l'option host pour ta box, mais je ne connais pas de box opérateur qui accepte d'acquérir son IP LAN via DHCP donc ça ne servirait pas à grand-chose (juste à clarifier la situation).
Ha et, j'ai assumé dans cet exemple que tu donnes à ton RPi les IPs 192.168.1.254 et 192.168.2.254 sur les réseaux respectifs, si tu changes ça, n'oublie pas d'ajuster les options routers et range en conséquence.

Maintenant, il reste un peu de config iptables à ajouter:

iptables -t nat -A POSTROUTING -s 192.168.1.1/32 -j ACCEPT -m comment --comment "Ne pas se SNATer soi-meme..."

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 192.168.1.1 -m comment --comment "SNAT des paquets issus du subnet Box"

iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 192.168.1.1 -m comment --comment "SNAT des paquets issus du subnet Switch"

Pour sauvegarder l'état de ton pare-feu, tu peux utiliser iptables-save > /un/fichier/rules, et ajouter un script nommé 01-iptables dans /etc/network/if-pre-up.d avec comme contenu:

#!/bin/sh
iptables-restore < /un/fichier/rules

(en utilisant un vrai chemin de préférence, pour ma part j'ai créé un répertoire /var/firewall dans lequel je stocke le fichier iptables.rules)
Ce script sera lancé à chaque démarrage avant la configuration des cartes réseau, évite donc d'y ajouter des règles foireuses qui te foutent dehors :hap:

Essaie de bien comprendre l'utilité de chaque commande / fichier de config avant de tout copier. Si quelque chose ne fonctionne pas, j'ai peut être oublié un morceau (ça fait plus d'un an que mon routeur est automatisé, j'ai plus tout en tête :hap:)

Google_Bot Google_Bot
MP
Niveau 12
14 août 2016 à 11:35:17

Ha et, j'émets des doutes sur l'utilité de la commande iptables -t nat -A POSTROUTING -s 192.168.1.1/32 -j ACCEPT: je n'ai jamais testé cette bidouille sans ce garde-fou mais il se pourrait que je loupe une étape, et qu'iptables ne soit pas débile au point de faire une boucle de SNAT.
Au pire si tu as la main sur ton RPi facilement, essaie sans cette première règle et dis-moi si tu arrives à visualiser le trafic d'un client connecté en WiFi sans problèmes avec un soft comme tshark.

mrpsicopate mrpsicopate
MP
Niveau 9
15 août 2016 à 16:12:00

Pas mal la config à faire !

Merci beaucoup en tout cas !

Je vais me documenter un peu histoire de comprendre ce que je fais ( sinon ça va pas m'aider à m’améliorer ) et j’installe tout ça :)

Merci encore :) !

mrpsicopate mrpsicopate
MP
Niveau 9
16 août 2016 à 16:28:45

Ok j'ai désactivé le dhcp de la box et config /etc/network/interfaces comme suit :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.254
netmask 255.255.255.0
gateway 192.168.1.1

auto eth1
iface inet static
address 192.168.2.254
netmask 255.255.255.0

Je me demandais, faut-il un gateway pour eth1 ?

Sinon quand je fais ifconfig les 2 sont bien avec les ips assignés mais mon interface graphique me dit que eth0 est en 169.254.168.238 et eth1 en 169.254.53.46.

J'ai d'ailleurs testé via angryipscanner et le logiciel m'indique que cette ip est bien active.

Du coup je me retrouve avec eth0 et eth1 avec 2 ips chacune sur le réseau ....

Une idée d'où ça peut venir ?

Sinon j'ai fais la commande sysctl -w net.ipv4.ip_forward=1.

De plus je n'ai pas accès à internet via le rpi je ne sais pas si cela est normal.

Merci encore :)

Message édité le 16 août 2016 à 16:30:01 par mrpsicopate
mrpsicopate mrpsicopate
MP
Niveau 9
18 août 2016 à 18:26:30

Bon je viens de faire toute la config mais impossible d'avoir internet que ça soit sur le switch, sur le rpi ou via wifi. ( j'ai aussi enlever l'autre config avec ses assignassions d'ips aléatoires ).

Voici les configs actuelles :

root@raspberrypi:/home/pi# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether b8:27:eb:44:c9:0a brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.254/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::ba27:ebff:fe44:c90a/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:13:3b:9b:ef:65 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.254/24 brd 192.168.2.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::213:3bff:fe9b:ef65/64 scope link 
       valid_lft forever preferred_lft forever
root@raspberrypi:/home/pi# iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere            

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere  

Avec le fichier qui ressemble à ça :

root@raspberrypi:/home/pi# cd /etc/init.d
root@raspberrypi:/etc/init.d# nano firewall

!/bin/sh 
 
# Réinitialise les règles
sudo iptables -t filter -F 
sudo iptables -t filter -X 
 
# Bloque tout le trafic
sudo iptables -t filter -P INPUT DROP 
sudo iptables -t filter -P FORWARD DROP 
sudo iptables -t filter -P OUTPUT DROP 
 
# Autorise les connexions déjà établies et localhost
sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
sudo iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
sudo iptables -t filter -A INPUT -i lo -j ACCEPT 
sudo iptables -t filter -A OUTPUT -o lo -j ACCEPT 

sudo iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 192.1$

sudo iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 192.1$

sudo iptables -t nat POSTROUTING -s 192.168.1.1/32 -j ACCEPT -m --comment "BRUH"

J'ai fait un teste avec et sans iptables -t nat -A POSTROUTING -s 192.168.1.1/32 -j ACCEPT mais aucun changement vu à l'horizon ;'(

Je vois pas vraiment d'où ça viens ... Il me semble que tout est ok.

Merci encore ! :)

mrpsicopate mrpsicopate
MP
Niveau 9
18 août 2016 à 18:32:30

Ps : J'ai reprit ta config pour le fichier /etc/dhcp/dhcpd.conf sans rien modif.

Google_Bot Google_Bot
MP
Niveau 12
19 août 2016 à 20:39:29

Le 19 août 2016 à 19:47:42 chilli_dog a écrit :
Après je ne comprends pas pourquoi faire tout ça si c'est juste pour mettre un ids.
En laissant la box par défaut (avec dhcp et tout), tu la connecte au rpi et tu branche le rpi à ton switch. Tu active bien l'ipv4 forwarding, tu change la config dhcp de ta box pour qu'elle distribue l'adresse de ton rpi en tant que passerelle et voila :oui:

Ca reste qu'un simple mitm (en dehors du fait qu'on spécifie la passerelle au lieu d'empoisonner le cache arp).

Et que fais-tu des appareils connectés en WiFi (=via la box, sur le schéma logique de couche Liaison) ? L'auteur veut aussi surveiller ces machines.

Pour l'auteur:
Manque un ip route sur le RPi pour vérifier que ce dernier dispose d'une route par défaut.
Ensuite, il manque un -A dans la dernière règle du fichier de config d'iptables.
Aussi, la règle avec la cible ACCEPT pour la table nat doit être insérée en premier, pour exempter le RPi de son propre SNAT.

Que se passe-t-il lors d'un ping 192.168.1.1 ? ping 8.8.8.8 ?

Google_Bot Google_Bot
MP
Niveau 12
20 août 2016 à 00:38:30

Tu connais beaucoup de box d'opérateurs qui permettent de configurer une passerelle autre que la box elle-même dans les params DHCP ? :hap:
(hint: chez les trois quarts, impossible)

Google_Bot Google_Bot
MP
Niveau 12
20 août 2016 à 11:52:34

T'es mignon hein, mais ça ça change juste l'adresse IP LAN de ta box, donc le problème reste le même: les clients connectés en WiFi considèreront la Box comme leur route par défaut, et pas le RPi.
Faut savoir s'arrêter à un moment :hap:

mrpsicopate mrpsicopate
MP
Niveau 9
20 août 2016 à 15:56:35

Ok du coup j'ai rajouté le -A dans la ligne et je l'es remonté ( je savais pas si je devais le mettre tout en haut juste en dessous de #!/bin/sh ou juste au dessus des 3 règles que tu m'a donnés, du coup je l'es juste placé au dessus des 3 règles ).

Pour ip route :

default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.254
192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.254

Et quand je ping 192.168.1.1 ou 8.8.8.8 avec mon pc connecté sur le switch je recois ca :

PING : échec de la transmission. Défaillance générale.
PING : échec de la transmission. Défaillance générale.
PING : échec de la transmission. Défaillance générale.
PING : échec de la transmission. Défaillance générale.

Statistiques Ping pour 192.168.1.1
Paquets : envoyés = 4, recus = 0, perdus = 4 <perte 100%>

Et j'ai bien vérifier j'ai dé-commenté la ligne 28 de /etc/sysctl.conf.

D'ailleurs petite question en plus, à quoi sert exactement une DMZ ?

Merci ! :)

Google_Bot Google_Bot
MP
Niveau 12
20 août 2016 à 20:31:07

D'ailleurs petite question en plus, à quoi sert exactement une DMZ ?

En gros ça "simplifie" l'admin à distance en redirigeant toutes les requêtes issues de l'extérieur vers la machine placée en DMZ. Ça t'évite d'avoir à configurer 156 redirections de port vers la même machine, mais ça demande aussi un bon paquet de mesures de sécurité pour éviter que ton système devienne un énième relais à spam.

Bon sinon pour le ping, commence déjà par faire les tests depuis le RPi. Avec la config actuelle, tu devrais au moins pouvoir atteindre 8.8.8.8.
Pour les règles de Firewall on verra après, d'autant que ton script est un peu crade (utilise plutôt les scripts que je t'ai filés, càd un truc pour charger les règles depuis un fichier dans /etc/network/if-pre-up.d/ et un fichier avec les règles en format iptables-save sur ton disque).
Pense à changer la politique par défaut de tes tables pour tester "à vide" (donc uniquement depuis le RPi, vu que le SNAT ne sera pas activé), mets en ACCEPT. Une fois que t'auras des réponses de 8.8.8.8 tu pourras reprendre ta conf.

mrpsicopate mrpsicopate
MP
Niveau 9
24 août 2016 à 19:59:32

Ok merci

Je fais ça dés que je rentre chez moi ( cest à dire dans quelques jours )

Merci encore

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
La vidéo du moment