Ceci est une ancienne révision du document !
VyOS
VyOS est un système d'exploitation réseau libre basé sur la distribution Debian. Il permet de concenvoir ses propres routeurs/pare-feux avec une simple machine virtuelle ou un PC physique.
Installation
Commencer par insérer le disque (ou l'image ISO) dans la machine (physique ou virtuelle), pour avoir au démarrage cet écran :
Séléctionner Live (amd64-vyos) (cela peut être différent en fonction de l'architecture utilisée) et patienter durant le lancement du système.
Ensuite, se connecter en mode console avec l'utilisateur vyos et le mot de passe correspondant vyos, en validant avec la touche ENTREE :
Pour installer le système, entrer la commande suivante :
Répondre aux différentes questions concernant le partitionnage et l'installation (rien de complexe) jusqu’à arriver à l'étape du changement de mot de passe du compte vyos (il faut le taper 2 fois de suite) :
Une fois ceci fait, le système va poser encore quelques questions puis VyOS sera installé. Il ne reste plus qu'a redémarrer la machine pour lancer VyOS.
Configuration de base
Configuration du clavier Azerty
Tout d'abord on peut reconfigurer le clavier en azerty pour que la machine soit plus simple à configurer avec la commande suivante :
sudo dpkg-reconfigure keyboard-configuration
Suivre les étapes et redémarrer la machine.
Le mode configuration
Le mode configuration de VyOS est l'environnement utilisateur qui permet de modifier la configuration du routeur. Hormis les commandes “show” qui servent seulement à afficher des informations sur la configuration de VyOS, toutes les commandes de paramétrage spécifiques à VyOS se font dans ce mode.
Pour entrer en mode de configuration :
configure
Pour appliquer les réglages effectués (toujours en mode de configuration) :
commit
Puis pour les sauvegarder (toujours en mode de configuration) :
save
Enfin pour sortir du mode configuration :
exit
Paramètres généraux
Afficher TOUTE la configuration de VyOS (en mode normal) :
show configuration | less
Afficher les interfaces de VyOS (en mode normal) :
show interfaces
Régler le fuseau horaire sur Paris :
set system time-zone Europe/Paris
Renommer la machine :
set system host-name <hostname>
Attribuer un nom de domaine à la machine :
set system domain-name <domaine>
Activer SSH
Activer le protocole SSH pour l'administration à distance sur le port 22 :
set service ssh port 22
Définir les adresses IP sur lesquelles le serveur SSH sera à l'écoute (il peut y en avoir plusieurs, mais pour cela il faut refaire la commande à chaque nouvelle IP ajoutée) :
set service ssh listen-address 192.168.1.254
Configuration des interfaces réseau
Ajouter une description à une interface Ethernet :
set interfaces ethernet eth0 description interface-WAN
Attribuer une adresse IP dynamiquement à une interface Ethernet :
set interfaces ethernet eth0 address dhcp
Attribuer une adresse IP statiquement à une interface Ethernet :
set interfaces ethernet eth0 address 192.168.1.254/24
Supprimer une adresse IP statique :
delete interfaces ethernet eth0 address 192.168.1.254/24
Désactiver une interface réseau :
set interface ethernet eth0 disable
Réactiver une interface désactivée :
delete interfaces eth0 disable
Sous-interfaces avec encapsulation dans un VLAN
Pour utiliser le protocole 802.1Q sur une interface physique de la machine avec VyOS, il faut activer une sous-interface de l'interface trunk physique pour chaque VLAN.
Activer une sous-interface avec encapsulation des paquets dans le VLAN 100 :
set interfaces ethernet eth3 vif 100
Changer l'adresse de la sous-interface dans le VLAN 100 :
set interfaces ethernet eth3 vif 100 address 192.168.100.254
Attribuer une description à cette même sous-interface :
set interfaces ethernet eth3 vif 100 description vlan100
Interfaces virtuelles (loopback)
VyOS permet aussi de gérer les interfaces IP logicielles (loopback chez Cisco), afin d'avoir une adresse toujours joignable en fonction de l'état des interfaces physiques. Chez VyOS, ces interfaces sont nommées Dummy interfaces et commencent toujours par dum suivies d'un chiffre.
Elles ne peuvent pas récupérer d'adresse IP de façon dynamique, il faut absolument leur en attribuer une statiquement :
set interfaces dummy dum0 address 2.2.2.2/22
On pourra aussi leur ajouter une description, comme pour les autres :
set interfaces dummy dum0 description loopback0
Routage
Routage statique
Afficher la table de routage :
show ip route
Définir le routeur 203.0.113.1 comme passerelle par défaut (route par défaut) :
set protocols static route 0.0.0.0/0 next-hop 203.0.113.1 distance '1'
Ajouter une route vers le réseau 20.30.0.0/16 via la passerelle 18.59.81.6 :
set protocols static route 20.30.0.0/16 next-hop 18.59.81.6 distance '1'
distance fait référence à la métrique de la route
Supprimer une route :
delete protocols static route 195.51.14.132/12
Routage dynamique
A rédiger
Translation d'adresses (NAT)
Créer une règle de NAT Source (basé sur la source des paquets) indiquant l'interface externe du NAT :
set nat source rule 10 outbound-interface 'eth1'
Définir le réseau source dont on va remplacer les adresses réseau (le LAN) :
set nat source rule 10 source address '192.168.1.0/24'
Activer la traduction de ces adresses sources :
set nat source rule 10 translation address 'masquerade'
Rappel : Pour annuler une commande, reprendre la commande et remplacer “set” par “delete”.
Services réseau
Serveur DHCP
Configuration de base
Déclarer une étendue DHCP pour un sous-réseau en spécifiant la passerelle par défaut :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 default-router 192.168.1.254
Configurer les serveurs DHCP de l'étendue précédemment créée :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 dns-server 1.1.1.1 1.0.0.1
Paramétrer la durée d'un bail DHCP (en secondes, par défaut 86400 si le paramètre n'est pas spécifié par l'utilisateur) :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 lease 3600
Spécifier un domaine aux clients de l'étendue :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 domain-name nocterie.fr
Plage dynamiquement adressable
Configurer la plage d'IP adressables dans le sous-réseau (à partir de l'adresse spécifiée en fin de ligne) :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 range 100 start 192.168.1.100
Ajouter une exclusion d'adresse dans une plage DHCP :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 exclude 192.168.1.104
Reservation d'adresse
Créer une reservation d'adresse IP pour l'adresse MAC FF:02:FC:FA:15:63 :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 static-mapping SRV1 mac-address FF:02:FC:FA:15:63
Associer une adresse IP à l'appareil identifié juste au dessus pour son adresse MAC :
set service dhcp-server shared-network-name DHCP1 subnet 192.168.1.0/24 static-mapping SRV1 ip-address 192.168.1.10
Découverte LLDP
Activer la découverte LLDP :
set service lldp
Désactiver la découverte LLDP :
unset service lldp
Activer un protocole de découverte réseau propriètaire (CDP=Cisco, EDP=Extreme Networks, etc…) :
service lldp legacy-protocols <cdp|edp|fdp|sonmp>



