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

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche
Ligne 23 : Ligne 23 :


== Créer les partitions LVM ==
== Créer les partitions LVM ==
Créer 2 partitions LVM sur capbreton pour y rattacher, par la suite /home et /var :
Créer 2 partitions LVM sur capbreton pour y rattacher, par la suite /home et /var :
*<code>lvcreate -L10G -n kiev-home storage</code>
*<code> lvcreate -L10G -n kiev-home storage </code>
*<code>lvcreate -L10G -n kiev-var storage</code>
*<code> lvcreate -L10G -n kiev-var storage </code>
Lister les LVM :
 
*<code>lsblk</code>
Dans '''/etc/xen/kiev.cfg''', ajouter les 2 partitions :
Dans '''/etc/xen/kiev.cfg''', ajouter les 2 partitions :
*<code> phy:/dev/virtual/kiev-home, xvdb, w', </code>
*<code>phy:/dev/virtual/kiev-home, xvdb, w',</code>
*<code> phy:/dev/virtual/kiev-var, xvdc, w', </code>
*<code>phy:/dev/virtual/kiev-var, xvdc, w',</code>
   #  Disk device(s).
   #  Disk device(s).
  #
  #
Ligne 40 : Ligne 40 :
                 'phy:/dev/virtual/kiev-var,xvdc,w',
                 'phy:/dev/virtual/kiev-var,xvdc,w',
             ]
             ]
Eteindre la VM :
Eteindre la VM :
*<code>xen shut kiev</code>
*<code> xen shut kiev </code>
Redémarrer la VM, s'y connecter et vérifier les 2 partitions sur la VM ???


*Ensuite sur la VM :
Redémarrer la VM, s'y connecter et vérifier que les 2 LVM ont bien été créées.
*<code> lsblk  // Lister les LVM </code>


</br>


ur la VM :
Sur la VM, on crée 2 répertoires dans lesquels on va placer le contenu de /var et /home pour ensuite monter notre disque dans /home et /var :
<li><code> mkfs /dev/xvdc                   // formater et créer un système de fichier</code>
Formater les partitions LVM au format ext4 et y créer un système de fichier
<li><code> mkfs /dev/xvdb </code>  
*<code> mkfs /dev/xvdc </code>
<li><code> mkdir new-var                    // créer un dossier </code>  
*<code> mkfs /dev/xvdb </code>
<li><code> mount /dev/xvdc new-var/ </code>  
Créer un dossier new-var et
<li><code> cp -r /var/* new-var/            // on copie dans le fichier new-var</code>  
*<code> mkdir new-var                    // créer un dossier </code>  
<li><code> mkdir /mnt/new_home </code>  
*<code> mount /dev/xvdc new-var/ </code>  
<li> <code>mount /dev/xvdb /mnt/new-home </code>  
*<code> cp -r /var/* new-var/            // on copie dans le fichier new-var</code>  
*<code> mkdir /mnt/new_home </code>  
*<code>mount /dev/xvdb /mnt/new-home </code>  


<li> <code>cp -r /home/* /mnt/new_home </code>
<li> <code>cp -r /home/* /mnt/new_home </code>

Version du 8 novembre 2023 à 20:40

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 :
xen create /etc/xen/kiev.cfg
  • Lister les VM :
xen list
  • se connecter à la VM depuis capbreton:
xen console

Nom de domaine : kievgg.lol

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

Redémarrer la VM, s'y connecter et vérifier que les 2 LVM ont bien été créées.

  • lsblk // Lister les LVM


Sur la VM, on crée 2 répertoires dans lesquels on va placer le contenu de /var et /home pour ensuite monter notre disque dans /home et /var : Formater les partitions LVM au format ext4 et y créer un système de fichier

  • mkfs /dev/xvdc
  • mkfs /dev/xvdb

Créer un dossier new-var et

  • mkdir new-var // créer un dossier
  • mount /dev/xvdc new-var/
  • cp -r /var/* new-var/ // on copie dans le fichier new-var
  • mkdir /mnt/new_home
  • mount /dev/xvdb /mnt/new-home
  • cp -r /home/* /mnt/new_home
  • vi /etc/fstab // ajout dans le fichier des lignes suivantes : /dev/xvdb  /home ext4 defaults 0 2 /dev/xvdc  /var ext4 defaults 0 2

    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
    

    Installer le serveur ssh, le serveur Web apache2 et le serveur DNS bind.

    Créer la mascarade

    • Créer un bridge balltrap dans /etc/network/interfaces :
    • 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 la VM et, dans /etc/network/interfaces, lui 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 :
    ifup -a
    
    • Vérifier qu'elle est bien montée :
    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.10.0/24
    apt install iptables-persistant
    iptables-save
    iptables-save >> /etc/iptables/rules.v4
    

    Vérifier dans /etc/iptables les nouvelles règles de routage.

    • Se connecter en ssh depuis capbreton à ma machine de service en utilisant la machine mandataire comme jump :
    ssh -J root@193.48.57.163 root@192.168.163.2
    
    • Activer le routage (autoriser la redirection d'IP) (en mode définitif) sur notre machine mandataire : (dans quel dossier ???)
    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
    

    Configurer le serveur DNS