« Atelier SysRes SE2a5 2023/2024 E6 » : différence entre les versions
Aucun résumé des modifications |
(→24/11:) |
||
(44 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 85 : | Ligne 85 : | ||
=== '''06/10:''' === | === '''06/10:''' === | ||
Dans capbreton ajout du bridge dans Tokyo.cfg:<syntaxhighlight lang="shell"> | |||
vim /etc/xen/Tokyo.cfg | vim /etc/xen/Tokyo.cfg | ||
#Networking | #Networking | ||
vif = [ ' | vif = [ 'mac=00:16:3E:45:AF:1E, bridge=muaythai' , 'mac=00:16:3D:46:AB:1D,bridge=SE2a5'] | ||
</syntaxhighlight>Dans muaythai.cfg:<syntaxhighlight lang="shell"> | </syntaxhighlight>Configuration de l'interface eth1 sur la machine mandataire pour communiquer avec nos machine de service (Tokyo et bogota):<syntaxhighlight lang="shell"> | ||
vim /etc/network/interfaces | |||
</syntaxhighlight>[[Fichier:Network-interfaces tokyo.png|vignette|centré|interfaces Tokyo]] | |||
Dans muaythai.cfg:<syntaxhighlight lang="shell"> | |||
vim /etc/xen/muaythai.cfg | vim /etc/xen/muaythai.cfg | ||
Ligne 109 : | Ligne 104 : | ||
vif = [ 'ip=193.48.57.164 , mac=00:16:3E:CD:47:4D,bridge=SE2a5', 'bridge=muaythai' ] | vif = [ 'ip=193.48.57.164 , mac=00:16:3E:CD:47:4D,bridge=SE2a5', 'bridge=muaythai' ] | ||
</syntaxhighlight> | </syntaxhighlight>Dans le network/interfaces de Tokyo: | ||
[[Fichier:Screenshot 2023-10-06 15-54-52.png|centré|vignette|Interfaces muaythai]] | |||
Redémarrage de la VM Tokyo:<syntaxhighlight lang="shell"> | |||
xen shut Tokyo | xen shut Tokyo | ||
xen create /etc/xen/Tokyo.cfg | xen create /etc/xen/Tokyo.cfg | ||
Ligne 116 : | Ligne 115 : | ||
</syntaxhighlight>Puis on effectue la commande suivante:<syntaxhighlight lang="shell"> | </syntaxhighlight>Puis on effectue la commande suivante:<syntaxhighlight lang="shell"> | ||
iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.13.0/24 | iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.13.0/24 | ||
iptables-save | iptables-save > /etc/iptables/rules.v4 | ||
</syntaxhighlight> | reboot | ||
</syntaxhighlight>Il est maintenant possible de ping de l'IPV4 et IPV6 avec les machines de services. | |||
Pour permettre la connexion aux machines de services en passant par la mandataire sans mot de passe, on créer un répertoire .ssh dans les machines de services , où l'on viens mettre une clée publique générée sur la machine mandataire (dans le fichier authorized_keys):<syntaxhighlight lang="shell"> | |||
ssh-keygen | |||
</syntaxhighlight><syntaxhighlight lang="shell"> | |||
mkdir /root/ .ssh | |||
cd /root/.ssh | |||
vim authorized_keys | |||
</syntaxhighlight>Il n'est plus demandé d'entrer un mdp lors d'un connexion ssh de muaythai vers Tokyo ou bogota | |||
Redirection de port:<syntaxhighlight lang="shell"> | |||
sysct1 net.ipv4.ip_forward=sysct1 | |||
service networking restart | |||
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 2202 -j DNAT --to-destination 192.168.13.12:22 | |||
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 2201 -j DNAT --to-destination 192.168.13.11:22 | |||
iptables-save > /etc/iptables/rules.v4 | |||
</syntaxhighlight>On peut maintenant se connecter à la machine de service via la redirection de port avec la commande suivante (exemple Tokyo):<syntaxhighlight lang="shell"> | |||
ssh -p2202 root@193.48.57.164 | |||
</syntaxhighlight>Création du serveur DNS sur Gandi: | |||
[[Fichier:Capture d’écran 2023-10-06 153127.png|centré|vignette]] | |||
=== '''10/11:''' === | |||
==== '''Configuration DNS (bind9:''' Configuration du serveur DNS sur la machine de service Tokyo: <code> vim /etc/bind/db.tokyoray.lol</code> ==== | |||
[[Fichier:Db.tokyoray.lol.png|centré|vignette|535x535px|db.tokyoray.lol]] | |||
* Puis <code> service bind9 restart </code>après chaque modification, (incrémenter le numéro Serial à chaque restart) | |||
* Ajout d'une zone de resolution de domaine tokyoray.lol dans le fichier named.conf.local: | |||
[[Fichier:Name.conf.local.png|centré|vignette|503x503px|named.conf.local]] | |||
* Du coté de la machine mandataire "muaythai" (DNS secondaire) : | |||
-création de 2 fichiers vides "db.tokyoray.lol" & "db.bogota.lol" dans /etc/bind | |||
-modification du fichier named.conf.local: | |||
[[Fichier:Name.conf.local.muaythai.png|centré|vignette|493x493px|named.conf.local (muaythai)]] | |||
==== '''HTTPS (apache2):''' ==== | |||
* Création d'une clée privée, et génération d'une demande de csr <code> openssl req -nodes -newkey rsa:2048 -sha256 -keyout tokyo.key -out tokyo.csr -utf8 </code> | |||
* Sécurisation de l'accès au fichier de clés privés:<code> chmod 440 tokyo.key </code> | |||
* Sur Gandi on recopie notre clée privée csr pour obtenir un certificat d'autorité | |||
* <br /> Création du Virtual Host pour redirection sur le port *:443 : <code> vim /etc/apache2/sites-available/vhost-https.conf </code> | |||
[[Fichier:Frgre.png|centré|vignette|494x494px|vhost-https.conf]] | |||
=== '''23/11:''' === | |||
* Ajout de deux DNS records dans le fichier <code>/etc/bind9/db.tokyoray.lol</code>[[Fichier:Tokyo.png|centré|vignette|547x547px]] | |||
* Puis <code>service bind9 restart</code> (Ne pas oublier l'incrémentation du serial number) | |||
* Ajout DNS secondaire : <code>host ns6.gandi.net</code> | |||
* Puis ajout des adresses IPV4 et IPV6 dans le fichier "config.name.local" <code>allow-transfer {192.168.13.10;217.70.177.42;2001:4b98:d:1::4b;};</code> | |||
* Dans db.tokyoray.lol ajout de : <code>tokyoray.lol. IN NS ns6.gandi.net</code> puis <code>service bind9 restart</code> | |||
* Sur Gandi ajout du DNS secondaire: | |||
[[Fichier:Gandi.png|centré|vignette|511x511px]] | |||
* Une fois la certification validée sur gandi, je télécharge et déplace le fichier tokyoray.lol.crt vers la machine mandataire: <code>scp /home/pifou/Downloads/tokyoray.lol.crt root@193.48.57.164:/etc/ssl/certs/</code> | |||
* Puis depuis la machine mandataire vers la machine de service : <code>scp /etc/ssl/certs/tokyoray.lol.crt root@192.168.13.12:/etc/ssl/certs/</code> | |||
* Je copie la clé tokyo.key sur la machine mandataire : <code>scp /etc/ssl/private/tokyo.key root@193.48.57.164:/etc/ssl/private/</code> | |||
* Dans la mandataire <code>/etc/apache2/sites-available/vhost-https.conf :</code> | |||
[[Fichier:Sccreeen333.png|centré|vignette|446x446px|vhost-https.conf (dans la mandataire)]] | |||
* Dans la machine de service <code>/etc/apache2/sites-available/vhost-https.conf :</code> | |||
[[Fichier:Sccreeenn444.png|centré|vignette|466x466px|vhost-https.conf (dans la machine de service)]] | |||
* Activation du SSL pour apache : <code>a2enmod ssl</code> | |||
* Activation du proxy :<code>a2enmod proxy et a2enmod proxy_http</code> | |||
* Activation du virtual host : <code>a2ensite /etc/apache2/sites-available/vhost-https.conf</code> | |||
* Puis <code>service apache2 restart</code> | |||
==== '''Sécurisation du DNS (DNSSEC):''' ==== | |||
* Modification des droits de bind avec la commande: <code>chown -R bind /etc/bind</code> | |||
* Création du répertoire Keys dans bind | |||
* Modification du fichier <code>/etc/bind/named.conf.local :</code> | |||
[[Fichier:DNSSEC.png|centré|vignette|510x510px|<code>named.conf.local (machine de service)</code>]] | |||
=== '''24/11:''' === | |||
* Récupération de la clé KSK (Ktokyoray.lol.+013+46428.key) dans le répertoire <code>/etc/bind/keys</code>et copie de la clée sur le site gandi: | |||
[[Fichier:Ksk.png|centré|vignette|810x810px|KSK key sur gandi]] | |||
* Analyse via DNSViz | |||
[[Fichier:DNSviz.png|centré|vignette|382x382px|DNSViz]] |
Version actuelle datée du 24 novembre 2023 à 11:17
13/09: Création de la VM
Génération du fichier de configuration:
xen-create-image --hostname=Tokyo --ip=172.26.145.105 --netmask=255.255.255.0 --gateway 172.26.145.254 --bridge=bridgeStudents --dir=/usr/local/xen --password=glopglop
Lancement de la VM:
xen console Tokyo.cfg
xen console Tokyo
Modication de l'interface eth0 dans /etc/network/interfaces:
auto eth0
iface eth0 inet static
address 172.26.145.105/24
gateway 172.26.145.254
Configuration ssh, modifications dans /etc/ssh/sshd_config:
PermitRootLogin yes
service ssh restart
14/09: Création d'un conteneur à la main
Création d'une partition de 10GB:
dd if=/dev/zero of=toto bs=1024k count=10240
On formate l'espace mémoire toto créé, pour cela on passe en root:
su -
cd ~pifou
mkfs toto
On monte ensuite la partition:
mkdir /tmp/mnt
mount -o loop toto /tmp/mnt
On y ajoute l'image du conteneur:
debootstrap stable /tmp/mnt
Préparation du montage du pseudo système de fichier /proc:
echo "proc /proc proc defaults 0 0" >> /tmp/mnt/etc/fstab
Isolation du processus:
unshare -p -f -m chroot /tmp/mnt /bin/sh -c "mount /proc ; /bin/bash" ;
02/10:
Installation des paquetages pour le serveur web et dns:
apt install apache2
apt install bind9
Creation LVM:
lvcreate -L10G -nTokyo-home virtual
lvcreate -L10G -nTokyo-var virtual
Visualisation des LVM:
lvs
05/10:
Dans la VM, vérification de la création des partitions:
lsblk
Formatage des partitions de disque:
mkfs /dev/xvdb1
mkfs /dev/xvdb2
Créations des répertoires new_home et new_var:
mkdir /new_var
mkdir /new_home
On monte les disques:
mount /dev/xvbd1 /new_home
mount /dev/xvdb2 /new_var
On déplace tout ce qu'il y'a dans var vers new_var:
mv /var/* /new_var
umount /new_home
umount /new_var
Modification de /etc/fstab:
Nous avons maintenant 10GB dans /home et /var
Création de la machine mandataire muaythai en collaboration avec Simon MAROLLEAU:
xen-create-image --hostname=muaythai --ip=193.48.57.164 --netmask=255.255.255.240 --gateway=193.48.57.161 --bridge=SE2a5 --dir=/usr/local/xen --password=glopglop
06/10:
Dans capbreton ajout du bridge dans Tokyo.cfg:
vim /etc/xen/Tokyo.cfg
#Networking
vif = [ 'mac=00:16:3E:45:AF:1E, bridge=muaythai' , 'mac=00:16:3D:46:AB:1D,bridge=SE2a5']
Configuration de l'interface eth1 sur la machine mandataire pour communiquer avec nos machine de service (Tokyo et bogota):
vim /etc/network/interfaces
Dans muaythai.cfg:
vim /etc/xen/muaythai.cfg
#Networking
vif = [ 'ip=193.48.57.164 , mac=00:16:3E:CD:47:4D,bridge=SE2a5', 'bridge=muaythai' ]
Dans le network/interfaces de Tokyo:
Redémarrage de la VM Tokyo:
xen shut Tokyo
xen create /etc/xen/Tokyo.cfg
Avant d'entamer la mascarade on installe sur la machine mandataire:
apt install iptables-persistent
Puis on effectue la commande suivante:
iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.13.0/24
iptables-save > /etc/iptables/rules.v4
reboot
Il est maintenant possible de ping de l'IPV4 et IPV6 avec les machines de services.
Pour permettre la connexion aux machines de services en passant par la mandataire sans mot de passe, on créer un répertoire .ssh dans les machines de services , où l'on viens mettre une clée publique générée sur la machine mandataire (dans le fichier authorized_keys):
ssh-keygen
mkdir /root/ .ssh
cd /root/.ssh
vim authorized_keys
Il n'est plus demandé d'entrer un mdp lors d'un connexion ssh de muaythai vers Tokyo ou bogota Redirection de port:
sysct1 net.ipv4.ip_forward=sysct1
service networking restart
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 2202 -j DNAT --to-destination 192.168.13.12:22
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 2201 -j DNAT --to-destination 192.168.13.11:22
iptables-save > /etc/iptables/rules.v4
On peut maintenant se connecter à la machine de service via la redirection de port avec la commande suivante (exemple Tokyo):
ssh -p2202 root@193.48.57.164
Création du serveur DNS sur Gandi:
10/11:
Configuration DNS (bind9: Configuration du serveur DNS sur la machine de service Tokyo: vim /etc/bind/db.tokyoray.lol
- Puis
service bind9 restart
après chaque modification, (incrémenter le numéro Serial à chaque restart) - Ajout d'une zone de resolution de domaine tokyoray.lol dans le fichier named.conf.local:
- Du coté de la machine mandataire "muaythai" (DNS secondaire) :
-création de 2 fichiers vides "db.tokyoray.lol" & "db.bogota.lol" dans /etc/bind
-modification du fichier named.conf.local:
HTTPS (apache2):
- Création d'une clée privée, et génération d'une demande de csr
openssl req -nodes -newkey rsa:2048 -sha256 -keyout tokyo.key -out tokyo.csr -utf8
- Sécurisation de l'accès au fichier de clés privés:
chmod 440 tokyo.key
- Sur Gandi on recopie notre clée privée csr pour obtenir un certificat d'autorité
Création du Virtual Host pour redirection sur le port *:443 :vim /etc/apache2/sites-available/vhost-https.conf
23/11:
- Ajout de deux DNS records dans le fichier
/etc/bind9/db.tokyoray.lol
- Puis
service bind9 restart
(Ne pas oublier l'incrémentation du serial number)
- Ajout DNS secondaire :
host ns6.gandi.net
- Puis ajout des adresses IPV4 et IPV6 dans le fichier "config.name.local"
allow-transfer {192.168.13.10;217.70.177.42;2001:4b98:d:1::4b;};
- Dans db.tokyoray.lol ajout de :
tokyoray.lol. IN NS ns6.gandi.net
puisservice bind9 restart
- Sur Gandi ajout du DNS secondaire:
- Une fois la certification validée sur gandi, je télécharge et déplace le fichier tokyoray.lol.crt vers la machine mandataire:
scp /home/pifou/Downloads/tokyoray.lol.crt root@193.48.57.164:/etc/ssl/certs/
- Puis depuis la machine mandataire vers la machine de service :
scp /etc/ssl/certs/tokyoray.lol.crt root@192.168.13.12:/etc/ssl/certs/
- Je copie la clé tokyo.key sur la machine mandataire :
scp /etc/ssl/private/tokyo.key root@193.48.57.164:/etc/ssl/private/
- Dans la mandataire
/etc/apache2/sites-available/vhost-https.conf :
- Dans la machine de service
/etc/apache2/sites-available/vhost-https.conf :
- Activation du SSL pour apache :
a2enmod ssl
- Activation du proxy :
a2enmod proxy et a2enmod proxy_http
- Activation du virtual host :
a2ensite /etc/apache2/sites-available/vhost-https.conf
- Puis
service apache2 restart
Sécurisation du DNS (DNSSEC):
- Modification des droits de bind avec la commande:
chown -R bind /etc/bind
- Création du répertoire Keys dans bind
- Modification du fichier
/etc/bind/named.conf.local :
24/11:
- Récupération de la clé KSK (Ktokyoray.lol.+013+46428.key) dans le répertoire
/etc/bind/keys
et copie de la clée sur le site gandi:
- Analyse via DNSViz