Routeur et VLAN sur ZeroShell

Fermé
MP - 2 janv. 2018 à 19:28
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 - 29 sept. 2018 à 19:03
Bonjour,

Je ne suis qu'amateur averti et je suis chargé, par défaut, de l'informatique d'une petite association. Mais on me demande un peu trop… J'ai quand même fait un peu de programmation (bash, php, sql…). Je travaille surtout sur linux.

Le réseau: une trentaine de PC et plusieurs imprimantes multifonctions répartis sur des switchs administrables TPlink («Wysiwyg…»).

Les buts:
1.
La majorité des ports physiques peuvent accéder à internet et aux multifonctions. [VLAN 10]
Quelques ports cependant devraient avoir un régime à part, sans accès à internet.[VLAN 20]
- au moins avoir accès aux multifonctions.
- un peu mieux: avoir accès à tout le réseau interne.
- le top: avoir accès au réseau interne et aux protocoles de messageries.

[2. option: j'aimerais un contrôle du contenu pour certains postes ouverts un peu à tous vents, mais je ne sais pas si ZeroShell sait gérer les blacklists de Toulouse, et si je peux filtrer différemment les divers VLAN]

Le moyen: ZeroShell (À moins qu'on me conseille autre chose de mieux et d'aussi peu cher).
J'ai pu l'installer et donner internet à tout le monde.
Mais je n'arrive pas à gérer ces fichus VLAN.

Je serai très reconnaissant à celui qui saurait me dire comment il faudrait faire? Je n'en peux plus de tâtonner comme un fichu béotien… Au moins que quelqu'un me dise ce que je dois demander à ZéroShell, même si je dois chercher moi-même comment lui faire faire.

[Voilà tout ce que j'ai tâtonné:

J'ai créé des VLAN taggés sur les switchs. Par exemple le port 15 était taggé pour le VLAN 20.
Pour ce qui est des ports «trunk» (je crois que c'est comme ça qu'on dit: par exemple le port 1 du switch 2 qui relie ce dernier au switch 1 qui est relié au routeur)… j'ai donc laissé ces ports trunk tels quels (VLAN natif 1 pas taggé).
Dans ZeroShell j'ai créé un VLAN 10 et un VLAN 20 dans mon ETh0 (carte du réseau interne),
et dans Setup>Web, j'ai autorisé le VLAN 10 mais non le VLAN 20. Résultat… le port 15 avait toujours internet.

Dans ces switch TPLink il y a deux onglets VLAN 801.
Dans le premier on peut tagger ou non, et un port peut appartenir à plusieurs VLAN.
Dans le deuxième, appelé VLAN 801 PVID, chaque port ne peut recevoir qu'un seul id.
Alors là, si j'attribue l'id 20 au port 15, celui-ci ne voit plus rien au-delà de son switch.

Je me demande si je ne devrais pas paramétrer sur ZeroShell des sous-réseaux distincts pour chaque VLAN (ça, a priori je sais faire), puis router correctement les uns sur les autres selon mon humeur… (ça, je sais pas faire…!)]





A voir également:

3 réponses

brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618
Modifié le 2 janv. 2018 à 23:16
Salut,
bien sûr qu'il faut un réseau IP distinct pour chaque vlan.
je n'ai pas tout compris ce que tu as fait, mais les règles sont les suivantes:
un seul vlan non taggé sur un port.
autant de vlans taggés que l'on souhaite (max 4000), mais les mêmes doivent être taggés aux deux extrémités.
"un port peut appartenir à plusieurs VLAN"
si ils sont taggés seulement, donc, et encore, le port n'appartient à aucun vlan, c'est plutôt les vlans qui sont présent sur le port ou non, sauf pour le PVID (vlan par défaut si pas de tag ou tag inconnu, quoique le comportement peut varier sur le tag inconnu).
je ne sais pas comment tplink gère la notion de port trunk, elle varie suivant les constructeurs, reste que si le même vlan est présent sur deux switchs, il faut qu'il soit présent et taggé sur le port trunk entre les deux.
Après, je ne connais pas non plus le firewall zeroshell, mais je suppose que l'on peut choisr entre un mode routé et un mode bridgé, Si c'est routé, il faut que les réseaux ip correspondant aux vlan connectés soient présents.
Enfin,
il doit exister des forums spécifiques pour zeroshell non ?
En tout cas,
plutôt que limiter au niveau routage, il vaut mieux que tu crées des règles en fonction des plages IP


et ... Voili  Voilou  Voila !
2
Merci beaucoup Brupala,
C'est sûr que ce que j'ai essayé n'est pas très compréhensible puisque c'est du tâtonnement.
Tes indications m'éclairent, spécialement le fait que ce sont les vlan qui sont présents sur le port et non l'inverse.

Mais il reste encore un point un peu obscur pour moi quant aux vlan et aux ip.
Je crée donc un vlan 10 (adresse IP en 192.168.10.xxx) et un 20 (en 192.168.20.xxx), c'est bien ça?
Disons que le port 15 (imprimante) appartienne aux deux vlan (ce qui permet aux pc appartenant à ces deux vlan d'accéder à l'imprimante?). Je ne peux activer le dhcp sur les deux vlans, autrement il y aura conflit?

Quant au routage et aux plages ip, si je comprends bien tu me conseille d'attribuer à chaque vlan une plage ip d'un même sous réseau.
Exp: vlan 10 : 192.168.1.10 => 192.168.1.30 et vlan 20 : 192.168.1.40 => 192.168.1.60 ?
Puis attribuer des règles en fonctions des adresses ip. De cette manière, plus de routage?

Encore merci, il y avait des choses que je n'avais vraiment pas comprises. J'approche du déblocage après lequel je comprendrai mieux la documentation.
Quant à ZeroShell, le forum est anglophone… Mon anglais me permet juste de lire de la doc pas trop complexe, non pas de m'expliquer avec du vocabulaire pointu.
0
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618 > MP
3 janv. 2018 à 10:34
Houla,
on a encore du boulot ....
Je crée donc un vlan 10 (adresse IP en 192.168.10.xxx) et un 20 (en 192.168.20.xxx), c'est bien ça?
ça, ça va,
bien que tu crées un réseau IP sur un vlan, un vlan en lui même n'a pas d'adresse IP.

Disons que le port 15 (imprimante) appartienne aux deux vlan (ce qui permet aux pc appartenant à ces deux vlan d'accéder à l'imprimante?). Je ne peux activer le dhcp sur les deux vlans, autrement il y aura conflit?
là ça ne va plus:
tu l'as reconnu plus haut: on met des vlan (taggés) sur un port et non l'inverse.
les imprimantes ne peuvent pas faire partie de deux vlan, généralement, on ne peut pas configurer de sous interfaces dessus, comme sur la plupart des PC, seuls certains serveurs et les routeurs le permettent.
Qui dit vlan dit sous interfaces, chaque sous interface étant dans un réseau IP différent.
Donc tes imprimantes dans le le réseau IP 10.x si tu veux vlan 10 en l'occurence, les autres devront passer par le routage et le firewall pour y accéder.

Quant au routage et aux plages ip, si je comprends bien tu me conseille d'attribuer à chaque vlan une plage ip d'un même sous réseau.
Exp: vlan 10 : 192.168.1.10 => 192.168.1.30 et vlan 20 : 192.168.1.40 => 192.168.1.60 ?
Puis attribuer des règles en fonctions des adresses ip. De cette manière, plus de routage?

non, pas du tout.
Les réseaux IP restent des réseaux IP, bien que tu puisse réduire leur taille (en puissance de deux toujours) à des /28 (16 adresses, 13 utiles) si besoin.
Encore une fois, ce n'est pas le routage qui doit filtrer le traffic, mais les règles du parefeu, un parefeu peut bloquer ou autoriser une adresse ou une plage d'adresses sans tenir compte du routage (il s'applique aussi au traffic bridgé).

Pour zeroshell,
je l'ai découvert, je l'ai installé sur une VM de mon PC, c'est très simple et efficace, c'est tout à fait souple comme logiciel et très ouvert, superbement formateur aussi.
Si tu arrives à le maitriser, tu seras un demi dieu en réseau.
Si tu as des questions, je peux me servir de ma VM, je peux même m'en faire deux pour les faire communiquer ensemble et mieux les tester.
0
Oui, tu as encore du boulot pour me faire tout comprendre!!! Tu es tombé sur un béotien. Désolé! Merci pour le temps que tu prends pour étudier mon problème et m'expliquer.
Mais là, j'y vois nettement plus clair. J'ai l'impression d'avoir passé un mur…

Pourtant il y a un point qui me semble un peu contradictoire, avant de pouvoir faire la synthèse: dans ta première réponse tu me dis: «autant de vlans taggés que l'on souhaite » par port. Et dans ta dernière tu me dis que les seuls les serveurs et les routeurs peuvent être dans plusieurs sous interfaces…
0
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618 > MP
3 janv. 2018 à 19:42
Et dans ta dernière tu me dis que les seuls les serveurs et les routeurs peuvent être dans plusieurs sous interfaces…
ce n'est pas tout à fait ça que j'ai voulu dire:
je dis qu'il n'y a que sur les serveurs et routeurs que l'on peut configurer des sous interfaces et donc amener plusieurs réseaux sur une carte réseau via les vlan.
C'est rare qu'un simple PC autre que sous linux permette de le faire.
sur une sous interface, après, pour peu qu'il y ait un switch en face capable de retirer les tags on peut connecter toutes sortes de machines.
0
Bon, je tente une deuxième copie. Tu vas sans doute râler et me mettre une mauvaise note. J'assume!

1.
1.1 Je crée deux Vlan :
VLAN 10 en 192.168.10.xxx (VLAN internet, très ouvert)
VLAN 20 en 192.168.20.xxx (VLAN pour les PC bloqués)

1.2 Je tagge en 10 les ports de la plupart des PC et des imprimantes.

1.3 Je tagge en 20 les ports des PCs bloqués.

1.4 Je tagge en 10 et en 20 les ports trunk des switch [Quand j'y pense, c'est sans doute ce qui me bloquait quand je bidouillais uniquement des witch].

2.
2.1 Je route le VLAN 20 (ou plutôt la plage d'adresses en 20.xxx) pour qu'ils trouvent les imprimantes (ou bien même toutes les machines en 10.xxx). [Là, il faut que je tatonne sur ZeroShell]

2.2 Sur le pare-feu j'interdis au VLAN 20 (ou bien aux adresses correspondantes) l'accès à internet [Idem, il va falloir que je découvre]

Bon courage et merci!
0
1. Je dois interdire aux adresses 192.168.20 l'accès à internet. Les règles du pare-feu me laissent perplexe… Je tatonne quand même un coup pour voir mais je serai heureux que tu m'indique ce qu'il faut faire.
[2. J'aimerais leur autoriser l'accès aux mails, mais je pense savoir faire une fois que je saurai faire le 1.]
3. Je dois interdire à un pc branché sur un port Vlan 20 de se connecter en manuel. Mais j'ai l'impression que ça bloque de toute façon s'il n'est pas dans la plage DHCP?

4. ??? Pourquoi est-ce que connecté au vlan 20, je vois le switch 192.168.1.2 mais non le 192.168.1.3 ?
En passant en manuel, en prenant une adresse en 192.168.1.10 avec route 192.168.1.1, j'accède aux deux switchs, mais pas à zéroshell ni internet. Parce que je ne respecte pas mon Vlan?

Merci!
0
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618
8 janv. 2018 à 15:38
Bien, on v essayer,
mais il ya des réponse que je n'ai pas toutes faites, il faut que je teste avant.
pour le 1 et le 2,
la principale règle sur un parefeu est de tout bloquer et de n'autoriser que ce que l'on veut qui passe au lieu de chasser un par un et forcément en oublier ce qui ne doit pas passer.
suivant les parefeu, on met ce bloque tout en premier ou en dernier.
tu peux déjà tout bloquer (drop, rejec est contreproductif à ce niveau).
entrée donc sur eth01, source tout (0.0.0.0/0) destination tout en tant que new
pareil en entrée eth00,
il faudra implanter les règles d'autorisation au dessus par exemple vers les serveurs mails depuis le réseau ip 20.x vers tout depuis les adresses 10.x
Pour le 3,
bloquer toutes les ip sources sur le vlan 20 et autoriser auparavant la plage dhcp en source.
ça me surprend qu'il y ait un blocage par défaut des adresses hors plage dhcp.
Pour le 4, il faut vérifier le routage du switch 1.3, si il a bien une passerelle par défaut comme 1.2
Mais il me faut des détails sur ton plan de numérotation, car il manque des éléments, surtout quand tu dis que tu mets des adresses IP en 1.x dans le vlan 20.
j'espère que zeroshell ne fait pas du proxy arp par défaut.
0
Pour le 3: sur le port 15 j'ai testé en manuel avec une adresse comme 192.168.1.20 je n'avais accès à rien d'autre que le switch 2…

Pour le 4: justement, l'adresse IP en 1.x dans le vlan 20 c'était le test du 3.
Dans le vlan 10 je prévois du dhcp 10.10 à 10.200 et il y aura des machines avec IP fixes.
Dans le vlan 20 je prévois du dhcp 20.10 à 20.200

Pour le 1… Du coup je me suis suicidé. Du genre sudo rm -R / ! J'ai choisi drop pour input et je n'arrivais plus à accéder à ZeroShell. J'ai réinstallé pour la quatrième fois. Il faut que j'y aille plus doucement…
0
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618 > MP
8 janv. 2018 à 16:26
Pour le 1… Du coup je me suis suicidé. Du genre sudo rm -R / ! J'ai choisi drop pour input et je n'arrivais plus à accéder à ZeroShell. J'ai réinstallé pour la quatrième fois. Il faut que j'y aille plus doucement…
j'ai oublié, sur la table forward, pas input ou output ...
0
: ) Ça m'a permis de répéter une fois de plus les paramétrages de base. Ainsi ça rentre mieux dans ma caboche.
J'ai testé voir si je parvenais à contourner les vlan en me connectant en manuel, en précisant même les DNS: rien à faire, le routeur me refuse tout accès. C'est très bien ainsi. Le 3. est donc réglé.
Bravo pour le 4. Tu as bien deviné: j'avais laissé le switch avec une route par défaut à 192.168.1.2…
Reste ces questions de firewall.
Je continue donc à tâtonner, en essayant d'éviter de me prendre un mur cette fois-ci.
0
Sur ZeroShell on peut d'abord fixer la «policy» par défaut pour toute la table. Ça marche très bien: j'ai droppé Forward, et il n'y a plus rien qui passe.
J'ai essayé ensuite de tout autoriser par dessus, pour tester:
j'ai fait une règle pour l'entrée: «ACCEPT all opt -- in ETH01 out ETH00 0.0.0.0/0 -> 0.0.0.0/0 state NEW»
Idem pour la sortie en inversant eth01 et eth00.
Ça marche pas…
0
Quelques mois après, et après de multiples tentatives à intervalles réguliers, j'ai fini par trouver le ; qui manquait...
Il s'agit de l'histoire de pare feu: autoriser à un sous-réseau l'accès au réseau interne et aux messages, mais non à internet.
Les deux choses qui bloquaient:

1. La plus stupide : dans zeroshell c'est la dernière règle qui est exécutée en premier. Ça donne donc ceci:
Chain FORWARD (policy ACCEPT 9638 packets, 1769K bytes)
pkts bytes target prot opt in out source destination
607 76654 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:25
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:110
297 108K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:143
65 18709 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:587
5343 7504K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:993
35 8820 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:995
119 6197 ACCEPT all -- ETH00 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- ETH00.20 * 0.0.0.0/0 192.168.1.1
0 0 ACCEPT all -- * ETH00.20 192.168.1.1 0.0.0.0/0
2412 139K DROP all -- ETH00.5 ETH00.20 0.0.0.0/0 0.0.0.0/0

La toute dernière règle drop tout pour le réseau concerné. Les précédentes autorisent ce qui doit être autorisé.

2. Mais pour autant comment la messagerie se connecterait-elle sans connaître l'adresse IP du serveur? Il faut autoriser l'accès au serveur DNS. Heureusement ceux-ci utilisent un port udp et non tcp. On peut donc autoriser pleinement l'accès à udp (première règle ci-dessus) sans que cela autorise l'accès au contenu du Web.

Résolu donc.
Et un vrai grand merci à Brupala qui m'a ouvert la porte de la gestion réseau, et qui a répondu avec patience à mes questions de béotien.
0
brupala Messages postés 109416 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 19 avril 2024 13 618
29 sept. 2018 à 19:03
Merci à toi aussi du retour :-)
0