Ce billet décrit comment j’ai procédé pour installer Vyatta sur un Soekris 4801 avec un carte d’extension 4 ports lan1741


[MAJ 05/10/2014] La société ayant racheté Vyatta, ne met plus à disposition le code. Je vous conseille de prendre le fork Vyos

 Matériel nécessaire

Le matériel utilisé:

 Vyatta

Pourquoi avoir choisi Vyatta? En fait c’est «la puissance» de la machine et son utilisation qui ont guidé le choix. Je souhaite mettre cette machine comme firewall entre mon réseau et ma box. Coté débit, comme c’est la misère (coucou Free) cela ne devrait pas poser de problème au Soekris.

Donc pourquoi Vyatta?

  • Voyage Linux fonctionne très bien sur ce genre de matériel, mais il faut vraiment configurer son firewall à la main
  • Je ne suis pas un fan de M0n0wall
  • Mon firewall préférait pfSense se traîne vraiment sur ce type de matériel (notamment la version 2.1). Il vaut mieux dans ce cas utiliser une Alix 2d3 ou 2d13 (plus de RAM, un CPU un peu plus gros, …)
  • Mettre un *bsd, pourquoi pas, mais à ce moment là autant mettre une Voyage Linux

Donc reste Vyatta que je n’ai jamais utilisé, et qui semble adapté pour ce que je veux faire avec des commandes dédiées à la gestion du réseau. Pas d’IHM web pour configurer ce qui fait que l’on gagne de la mémoire vive.

 

Obtenir Vyatta

Pour cela il suffit de se rendre dans la section downloads du site de Vyatta, et de prendre l’image du Live CD 32 bits.
Pour cela il suffit de se rendre sur le site de Vyos dans la section « Get Software ». Prendre l’image du Live CD 32 bits.

Installer Vyatta

Branchez votre lecture de carte compact flash, et y mettre la carte. Identifiez le device associé avec la commande dmseg qui doit avoir une ligne du style sd 7:0:0:1: [sdd] 3940272 512-byte logical blocks: (2.01 GB/1.87 GiB). Donc pour ma part la carte compact flash est associée à /dev/sdd

Si une des partitions contenues sur la carte flash est montée, il faut la démonter avec la commande umount

A partir d’ici j’ai effectué toutes les commandes en root (oui je suis une grosse feignasse, et je n’avais pas envie de me battre avec les permissions).

On va maintenant associer la carte compact flash à un fichier pour VirtualBox:


VBoxManage internalcommands createrawvmdk -filename rawdisk.vmdk -rawdisk /dev/sdd

Cette commande associe le fichier rawdisk.vmdk à la compact flash.

Ensuite sur VirtualBox, créer une nouvelle VM avec les paramètres suivants:

Paramètres Virtualbox pour l'installation de Vyatta

VirtualBox installation de Vyatta

  • Système d’exploitation: Linux 2.6
  • Mémoire vive: 128 Mo
  • Ordre d’amorçage: Disquette, Disque CD/DVD, Disque dur
  • Port SATA 0: rawdisk.vmdk – ici on utilise la carte compact flash
  • Maître secondaire IDE: [CD/DVD] vyatta_licecd – le live CD de vyatta, la machine virtuelle va booter dessus
  • Réseau: désactivé – ça simplifie la configuration ultérieure car vyatta n’aura pas mémorisé l’adresse MAC de la VM

Pour mettre cela en place, dans le menu Configuration

  • Stockage > Contrôleur IDE > Le menu en dessous (normalement vide) > Cocher « Live CD/DVD » et choisir l’image ISO de Vyatta en cliquant sur l’icône du CD
  • Stockage > Contrôleur SATA > Le menu en dessous > Cliquer sur l’icône du disque dur et choisir le fichier rawdisk.vmdk

Voila la VM est prête à être lancer.

Installer Vyatta sur la compact flash

Une fois la VM avec Vyatta lancée, il y a quelques petites modifications à effectuer. En premier lieu il faut se connecter avec l’utilisateur vyatta et le mot de passe vyatta. Ensuite il faut passer root. Au choix un sudo -i ou sudo su -.

Une fois root, il faut modifier le script d’installation pour que le filesystem utilisé sur la compact flash soit de l’ext2 et non pas de l’ext4 afin de ne pas diminuer sa durée de vie.

ATTENTION: le layout du clavier par défaut est qwerty


vi /opt/vyatta/sbin/install-system

rechercher les lignes suivantes:

if [ "$MANUF" = "Xen" ]; then
  ROOT_FSTYPE="ext3"
else
  ROOT_FSTYPE="ext4"
fi

et changer ext4 par ext2

if [ "$MANUF" = "Xen" ]; then
  ROOT_FSTYPE="ext3"
else
  ROOT_FSTYPE="ext2"
fi

Lancer l’installation sur la compact flash avec la commande: /opt/vyatta/sbin/install-system

Répondre aux questions, et une fois l’installation terminée, le prompt root s’affiche.

Mais se n’est pas fini, maintenant il faut faire les modifications pour booter sur la carte compact flash.
On va créer un répertoire pour monter la compact flash et faire les modifications:

mkdir /mnt/temp
mount /dev/sda1 /mnt/temp
cd /mnt/temp

N’oubliez pas que vue de votre VM la compact flash est sur sda.
Les éditeurs disponibles sont vi et nano

Il faut éditer le fichier fstab:
vi etc/fstab
Changer le début de la ligne UUID=… par /dev/sda1.

Ensuite il faut éditer le fichier grub.cfg:
vi boot/grub/grub.cfg
Changer toutes les occurrences de UUID=… par /dev/sda1.

Et enfin il faut éteindre la VM: halt

Et voilà, mettre la compact flash dans le soekris, branchez le câble null modem, configurer minicom ou screen en 9600 8N1, brancher le soekris. Voila plus qu’a être (très) patient pour avoir le prompt.