TP sysres IMA2a5 2018/2019 G2 : Différence entre versions
(→Dockers) |
(→Dockers) |
||
Ligne 107 : | Ligne 107 : | ||
On crée un dossier ~/bind/ dans lesquels on met les fichiers suivants : | On crée un dossier ~/bind/ dans lesquels on met les fichiers suivants : | ||
+ | |||
'''/etc/bind/named.conf.options''' | '''/etc/bind/named.conf.options''' | ||
options { | options { | ||
Ligne 157 : | Ligne 158 : | ||
Lancer les containers | Lancer les containers | ||
+ | docker run -d --name=apache -v /root/httpd/index.html:/usr/local/apache2/htdocs/index.html \ | ||
+ | -v /root/httpd/httpd.conf:/usr/local/apache2/conf/httod.conf -p 8080:80 httpd | ||
+ | |||
+ | docker run --name=dns -dit --dns=8.8.8.8 --dns=8.8.4.4 -p 53:53/udp -p 53:53 \ | ||
+ | -v "$PWD"/bind/named.conf.local:/etc/bind/named.conf.local \ | ||
+ | -v "$PWD"/bind/named.conf.options:/etc/bind/named.conf.options \ | ||
+ | -v "$PWD"/bind/paix-dieu-fdjd-apima5.space:/etc/bind/paix-dieu-fdjd-apima5.space ventz/bind | ||
Version du 16 novembre 2018 à 11:22
Sommaire
Introduction
Ce projet consiste à réaliser une maquette de réseau permettant de manipuler les protocoles de redondance réseau ainsi que le protocole réseau IPv6.
Création du commutateur logiciel sur Zabeth10
On commence par configurer la Zabeth afin que lorsque l'on connecte un PC sur l'interface eth1 elle commute tous les paquets sur l'interface eth0.
On modifie le fichier /etc/network/interfaces :
auto lo iface lo inet loopback auto eth0 eth1 bridge iface eth0 inet manual up ip link set $IFACE up iface eth1 inet manual up ip link set $IFACE up iface bridge inet dhcp bridge_ports eth0 eth1 bridge_hw LADRESSEETHERNETDELAZABETH
On peut voir que le pont est bien configuré à l'aide de la commande :
brtcl showstp bridge
Les interfaces eth0 et eth1 sont à l'état "forwarding", ce qui signifie que tout fonctionne correctement.
Installation de Devuan sur PC Portable Thon
Cette étape simplissime nous a donné du fil à retordre car lors de l'installation, nous n'arrivions pas à contacter le serveur dhcp et obtenir le proxy de Polytech'Lille. Après une dizaine de tentative d'installation, cela a fini par marcher. Les comptes utilisateurs créés sont ceux habituels.
Machine virtuelle Xen sur Cordouan
Installation
On se connecte en ssh sur cordouan.insecserv.deule.net
Pour créer notre VM Devuan, on lance la commande suivante:
xen-create-image --hostname=PaixDieu --dhcp --dir=/usr/local/xen --dist=ascii --apt-proxy=http://proxy.polytech-lille.fr:3128 --mirror=http://fr.deb.devuan.org/merged/ --force
Nous avons ensuite modifié le mot de passe root et le fichier PaixDieu.cfg pour ajouter StudentsInfo. C'est un bridge qui nous permet d'avoir accès à internet.
vif = [ 'mac=LABELLEADRESSEMAC, bridge=StudentsInfo' ]
Lancer la machine virtuelle
On teste que l'installation s'est bien déroulée en lançant notre VM une première fois. Voici les commandes utilisées pour lancer notre VM PaixDieu :
xl create /etc/xen/PaixDieu.cfg xl console /etc/xen/PaixDieu
Montage /var et /home sur cordouan
Passons aux choses sérieuses avec le montage des dossiers /var et /home sur Cordouan.
Connectés à Cordouan, on a créé les volumes de 10Go correspondant aux répertoires:
lvcreate -L10G -n apIMA5-PaixDieu-home virtual lvcreate -L10G -n apIMA5-PaixDieu-var virtual
Ainsi que les systèmes de fichier
mke2fs /dev/virtual/apIMA5-PaixDieu-home mke2fs /dev/virtual/apIMA5-PaixDieu-var
On indique à notre VM les répertoires fraichement créés en éditant /etc/xen/PaixDieu.cfg :
disk = [ [...] 'phy:/dev/virtual/apIMA5-PaixDieu-home,xvdb1,w', 'phy:/dev/virtual/apIMA5-PaixDieu-var,xvdb2,w', ]
La commande fdisk -l
nous permet de vérifier que les volumes sont bien montés.
On modifie le fichier /etc/fstab
de la VM pour que les volumes soient pris en compte à chaque démarrage de la VM :
/dev/xvdb1 /home ext4 defaults 0 2 /dev/xvdb2 /var ext4 defaults 0 2
Pour le volume /var, nous devons procéder différemment et lançons les commandes suivantes depuis la VM :
mount /dev/xvdb2 /mnt mv /var/* /mnt umount /mnt mount -a
On vérifie que tout est OK avec df
.
Dockers
Docker est un outil permettant la création de containers contenant des services que nous pourrons moduler facilement en choisissant de démarrer ou non ces containers.
Nous avons rencontré un problème pour lancer la commande apt-get update
car la liste de clés de notre VM était celle d'une machine Debian et non Devuan. Nous l'avons résolu grâce à la commande apt-get install devuan-keyring
.
Pour installer les dockers on lance les commandes suivantes :
apt-get install apt-transport-https dirmngr echo 'deb https://apt.dockerproject.org/repo debian-stretch main' >> /etc/apt/sources.list apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys F76221572C52609D apt-get update apt-get install docker-engine service docker restart docker pull httpd docker pull ventz/bind
La commande docker images
nous permet de vérifier que nos images sont correctement installées.
Dans le dossier ~/httpd/ on crée les fichiers index.html et httpd.conf. On les liera par la suite comme point de montage. Ceci nous permet de créer et modifier notre page web à la racine de notre répertoire /root et les modifications se fassent directement dans le container.
On crée un dossier ~/bind/ dans lesquels on met les fichiers suivants :
/etc/bind/named.conf.options
options { directory "/var/cache/bind"; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; allow-transfer { "allowed_to_transfer"; }; }; acl "allowed_to_transfer" { 217.70.177.40/32; };
/etc/bind/named.conf.local
// // Do any local configuration here // // Consider adding the 1918 zone here, if they are not used in your // organization // include "/etc/bind/zones.rfc1918"; zone "paix-dieu-fdjd-apima5.space" { type master; file "/etc/bind/paix-dieu-fdjd-apima5.space"; };
/etc/bind/paix-dieu-fdjd-apima5.space
$TTL 259200 @ IN SOA dns.paix-dieu-fdjd-apima5.space. admin.paix-dieu-fdjd-apima5.space. ( 10 ; Version 7200 ; Refresh (2h) 3600 ; Retry (1h) 1209600 ; Expire (14j) 259200 ; Minimum TTL (3j) IN NS dns.paix-dieu-fdjd-apima5.space. IN NS ns6.gandi.net. IN MX 100 dns.paix-dieu-fdjd-apima5.space. IN A 193.48.57.162 www IN A 193.48.57.162 IN MX 100 dns.paix-dieu-fdjd-apima5.space. dns IN A 193.48.57.162
Lancer les containers
docker run -d --name=apache -v /root/httpd/index.html:/usr/local/apache2/htdocs/index.html \ -v /root/httpd/httpd.conf:/usr/local/apache2/conf/httod.conf -p 8080:80 httpd
docker run --name=dns -dit --dns=8.8.8.8 --dns=8.8.4.4 -p 53:53/udp -p 53:53 \ -v "$PWD"/bind/named.conf.local:/etc/bind/named.conf.local \ -v "$PWD"/bind/named.conf.options:/etc/bind/named.conf.options \ -v "$PWD"/bind/paix-dieu-fdjd-apima5.space:/etc/bind/paix-dieu-fdjd-apima5.space ventz/bind
On peut voir que tout fonctionne correctement avec la commande docker ps
Configuration du commutateur
Pour notre projet nous avons 2 commutateurs :
- Un en E304
- L'autre en E306
Nous sommes en charge de celui en E306. Ce sont deux Catalyst 4006. Chacun doit être relié aux 2 routeurs (un dans chaque salle). Chacun doit avoir un port permettant une connexion à un point d'accès WiFi.
On commence par se connecter au port console du commutateur à l'aide d'un câble série.
On accède à l'interface de configuration du switch grâce à :
minicom -o -D /dev/ttyUSB0 -b 9600
On peut connaitre l'état du commutateur à l'aide des commandes:
show interface summary show vlan show run
Déclaration des VLANs
On déclare 7 VLANs, un pour Xen, un pour interconnexion, et un pour chaque groupe pour le wifi dans minicom de la façon suivante :
config termi vlan 42 name Xen exit (x2 pour quitter) write
Supprimer un VLAN (au cas où):
no vlan 42
Branchements
Les branchements ont été réalisés avec soin par Français, Tarik et Yacine en amont de notre travail de configuration.
Affectation d'un port à un VLAN
Pour voir sur quels ports ils ont branché leurs câbles, on lance la commande
show interface summary
On aperçoit une étoile devant la ligne si le port est connecté à un autre dispositif.
On peut créer le tableau suivant :
Nom VLAN | Prise |
---|---|
Cordouan | GigabitEthernet2/2 |
Interconnexion (Routeur E306) | GigabitEthernet2/1 |
Borne Wifi | GigabitEthernet2/3 |
Routeur E304 (en fibre) | GigabitEthernet1/1 |
On lance la configuration pour Cordouan (Xen) :
interface GigabitEthernet 2/2 switchport mode access (rend accessible) switchport access vlan 42 (définit quel VLAN a accès au port) no shut (pré-sauvegarde la config) exit (x2) write
Pour le point d'accès on fait un trunk :
interface GigabitEthernet 2/3 switchport trunk encapsulation dot1q switchport mode trunk no shut exit write
De même pour l'interconnexion des VLANs et la connexion au routeur de la E304.
On vérifie que notre configuration est bonne à l'aide de la commande show int status
Tests
Nous avons modifié le bridge de la VM en remplaçant le StudentsInfo par IMA2a5. Pour réaliser nos tests, on a affecté le port GigabitEthernet 2/7 au VLAN42. On peut ping la machine virtuelle via notre PC Thon connecté en ethernet et vice-versa.
Divers
Réservation d'un nom de domaine
Réserver un nom de domaine est une étape facile et intuitive sur le registrar gandi.net.
Location du domaine
Nous avons pris le nom de domaine paix-dieu-fdjd-apima5.space étant donné que paix-dieu.space était déjà réservé. L'avantage des .space est leur coût très faible (1.20€/an)
Configuration
On ajoute un Glue Record avec l'IP de notre VM. On modifie les DNS et on met dns.paix-dieu-fdjd-apima5.space en première ligne.
Still to do
Dans machine virtuelle faire dockers pour FreeRadius, ssh et apache