« Atelier SysRes SE2a5 2023/2024 E9 » : différence entre les versions

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche
Ligne 158 : Ligne 158 :
*DNS principal (machine de service) -> IPv6
*DNS principal (machine de service) -> IPv6
*DNS secondaire (machine mandataire) -> IPv4
*DNS secondaire (machine mandataire) -> IPv4
Véifier qu'il n'y a pas d'erreur de conf DNS :
+AllowTransfer ???
Vérifier qu'il n'y a pas d'erreur de conf DNS :
*<code> cat /var/log/daemon.log </code>
*<code> cat /var/log/daemon.log </code>
Sur Gandi.net (mettre screen) :




Vous allez réserver un nom de domaine pour associer un nom DNS à chacune de vos adresses IP (les zones inverses devraient, elles aussi, être gérées mais nous n'avons pas la délégation pour ce faire). Il est suggéré d’utiliser le registrar Gandi [http://www.gandi.net}. Une fois le nom de domaine reservé, configurez bind (paquetage bind9) sur votre serveur virtuel de services pour donner les adresses IPv4 et IPv6 correspondant à vos noms de machines. Utilisez l’interface web de votre fournisseur pour paramétrer votre machine comme serveur DNS principal. Utilisez ns6.gandi.net comme serveur DNS secondaire.
Vous allez réserver un nom de domaine pour associer un nom DNS à chacune de vos adresses IP (les zones inverses devraient, elles aussi, être gérées mais nous n'avons pas la délégation pour ce faire). Il est suggéré d’utiliser le registrar Gandi [http://www.gandi.net}. Une fois le nom de domaine reservé, configurez bind (paquetage bind9) sur votre serveur virtuel de services pour donner les adresses IPv4 et IPv6 correspondant à vos noms de machines. Utilisez l’interface web de votre fournisseur pour paramétrer votre machine comme serveur DNS principal. Utilisez ns6.gandi.net comme serveur DNS secondaire.

Version du 10 novembre 2023 à 12:18

Créer la VM

Se connecter au serveur en tant que root :

  • ssh root@capbreton.plil.info

Créer le fichier de config de la VM :

  • xen-create-image --hostname=kiev --ip=172.26.145.103 --netmask=255.255.255.0 --gateway=172.26.145.254 --bridge=bridgeStudents --dir=/usr/local/xen --password=glopglopglop

Démarrer la VM :

  • < code> xen create /etc/xen/kiev.cfg

Lister les VM :

  • xen list

Se connecter à la VM depuis capbreton:

  • xen console


Configurer le SSH

Modifier le fichier /etc/ssh/sshd_config: Autoriser la connexion en root :

  • PermitRootLogin yes

Redémarrer le service SSH :

  • service ssh restart

Se connecter en root via SSH :

  • ssh root@172.26.145.103


Créer les partitions LVM

Créer 2 partitions LVM sur capbreton pour y rattacher, par la suite /home et /var :

  • lvcreate -L10G -n kiev-home storage
  • lvcreate -L10G -n kiev-var storage

Dans /etc/xen/kiev.cfg, ajouter les 2 partitions :

  • phy:/dev/virtual/kiev-home, xvdb, w',
  • phy:/dev/virtual/kiev-var, xvdc, w',
 #  Disk device(s).
#
root        = '/dev/xvda2 ro'
disk        = [
                'file:/usr/local/xen/domains/HG/disk.img,xvda2,w',
                'file:/usr/local/xen/domains/HG/swap.img,xvda1,w',
                'phy:/dev/virtual/kiev-home,xvdb,w',
                'phy:/dev/virtual/kiev-var,xvdc,w',
            ]

Eteindre la VM :

  • xen shut kiev

La redémarrer et s'y connecter.


Sur la VM, créer 2 répertoires, y placer le contenu de /var et /home pour ensuite monter notre disque dans /home et /var :

 mkdir /new_home
 mkdir /new_var
 mkfs /dev/xvdb //Formater les partitions LVM au format ext4 et y créer un système de fichier
 mkfs /dev/xvdc
 mount /dev/xvdb /new_home
 mount /dev/xvdc /new_var
 cp -r /var/* /new_var/ 
  • lsblk // Lister les LVM
 xvda1 202:1    0  512M  0 disk [SWAP]
 xvda2 202:2    0   10G  0 disk /
 xvdb1 202:17   0   10G  0 disk /new-home
 xvdb2 202:18   0   10G  0 disk /new-var

Dans /etc/fstab, ajouter :

 /dev/xvdb  /home ext4 defaults 0 2 *
 /dev/xvdc  /var ext4 defaults 0 2 *

Reboot la VM

 umount /new_var
 umount /new_home
 mount -a // Monter tous les systèmes de fichiers spécifiés dans le fichier "/etc/fstab".
  • lsblk // Lister les LVM
 xvda1 202:1    0  512M  0 disk [SWAP]
 xvda2 202:2    0   10G  0 disk /
 xvdb1 202:17   0   10G  0 disk /home
 xvdb2 202:18   0   10G  0 disk /var


Créer la machine mandataire

  • xen-create-image --hostname=balltrap --ip=193.48.57.163 --netmask=255.255.255.240 --bridge=SE2a5 --dir=/usr/local/xen --password=glopglop --gateway=193.48.57.161
  • xen create balltrap.cfg

Se connecter à la VM

  • xen console balltrap

Vérifier qu'on ping google

  • Dans /etc/network/interfaces, obtenir une IPv6 par dhcp :
  • iface eth0 inet6 auto


Créer la mascarade

Sur capbreton, créer un bridge balltrap (pour ponter la carte réseau virtuelle de la VM à une carte réseau physique). Dans /etc/network/interfaces :

 #balltrap_bridge
 iface balltrap inet manual
 bridge_ports none
 post-up ip link set $IFACE up
 post-down ip link set $IFACE down

Up l'interface du bridge

  • ifup balltrap

Ajouter le bridge dans le fichier de config de chaque VM (dans vif):

  • ip=192.168.163.1, bridge=balltrap'

Redémarrer les VM et, dans /etc/network/interfaces, leur déclarer une nouvelle interface réseau (eth1) avec une IP privée statique :

  • balltrap = 192.168.163.1
  • kiev = 192.168.163.2
  • Riga = 192.168.163.3

Monter l'interface réseau eth1 nouvellement créée (et vérifier qu'elle est bien montée) :

 ifup -a
 ip a

Ping les autres IP dans ce réseau privé.

Créer une redirection de l'interface routée et notre interface privée sur la machine mandataire :

iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.163.0/24
apt install iptables-persistant
iptables-save
iptables-save >> /etc/iptables/rules.v4

Vérifier dans /etc/iptables/rules.v4 les nouvelles règles de routage. Ping google.com depuis la machine mandataire et les machines de service.

Se connecter en ssh depuis capbreton à la machine de service en utilisant la machine mandataire comme jump :

  • ssh -J root@193.48.57.163 root@192.168.163.2

Supprimer l'IPV4 sur l'interface eth0 sur les machines de service :

 auto eth0
 iface eth0 inet6 auto


Activer le routage (autoriser la redirection d'IP en mode définitif) sur notre machine mandataire. Dans le dossier /etc/sysctl.conf :

  • sysctl net.ipv4.ip_forward=1

Créer maintenant des règles de routages pour se connecter en ssh aux machines de service en utilisant un port différent.

iptables -A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 2201 -j DNAT --to-destination 192.168.163.2:22
iptables -A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 2202 -j DNAT --to-destination 192.168.163.3:22

Se connecter en ssh à la machine de service depuis capbreton en utilisant sur le port 2201 :

 ssh root@193.48.57.163 -p 2201
 ssh root@193.48.57.163 -p 2202


Configurer le serveur DNS

Sur la machine de service, ajouter le serveur DNS de google (8.8.8.8) dans /etc/resolv.conf (nameserver) Maintenant on peut télécharger bind9 sur la machine de service.

Sur http://www.gandi.net, acheter un nom de domaine : kievjeje.lol Configurer le DNS :

  • DNS principal (machine de service) -> IPv6
  • DNS secondaire (machine mandataire) -> IPv4

+AllowTransfer ??? Vérifier qu'il n'y a pas d'erreur de conf DNS :

  • cat /var/log/daemon.log


Sur Gandi.net (mettre screen) :



Vous allez réserver un nom de domaine pour associer un nom DNS à chacune de vos adresses IP (les zones inverses devraient, elles aussi, être gérées mais nous n'avons pas la délégation pour ce faire). Il est suggéré d’utiliser le registrar Gandi [http://www.gandi.net}. Une fois le nom de domaine reservé, configurez bind (paquetage bind9) sur votre serveur virtuel de services pour donner les adresses IPv4 et IPv6 correspondant à vos noms de machines. Utilisez l’interface web de votre fournisseur pour paramétrer votre machine comme serveur DNS principal. Utilisez ns6.gandi.net comme serveur DNS secondaire.