TP sysres IMA5 2022/2023 G2 : Différence entre versions
(→DHCP) |
(→Serveur DNS) |
||
Ligne 306 : | Ligne 306 : | ||
www IN A 193.48.57.179 | www IN A 193.48.57.179 | ||
www IN AAAA 2001:660:4401:60b0:216:3eff:fe21:d102 | www IN AAAA 2001:660:4401:60b0:216:3eff:fe21:d102 | ||
− | |||
*Contenu du nouveau fichier reverse zone : | *Contenu du nouveau fichier reverse zone : |
Version actuelle datée du 27 décembre 2022 à 17:54
Installation OS | Xen | Partitions | SSH | HTTP/HTTPS | DNS | DNSSEC | Fail2Ban | Raid5 | Chiffrement | Sécurisation Wifi WPA2-EAP | Minecraft | Intrusion WiFi |
---|---|---|---|---|---|---|---|---|---|---|---|---|
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅(manque mascarade) | ✅ | 🆗(juste la wep) |
Sommaire
Installation des systèmes
Installation de l'OS
Récupérer le .iso sur internet : fichier .iso
Si ce n'est pas fait : unmount la clé usb
Pour rendre la clé bootable :
dd if=<path_image> of=<path_device> bs=4M status=progress
où :
- <path_image> est le chemin vers l'image .iso
- <path_device> est le chemin vers la clé usb, pour la trouver :
ls /dev/
sans la clé de brancher- un deuxième
ls /dev/
avec la clé, c'est généralement /dev/sda ou /dev/sdb
Reboot le pc, puis aller sur le boot menu, et booter sur la clé usb, réalisez les étapes un à un, rappel :
- Adresse machine = 172.26.145.50+chiffre de la zabeth /24 (mask : 255.255.255.0)
- Adresse routeur = 172.26.145.254
- Server dns = 193.48.57.48
- Proxy = proxy.polytech-lille:3128
- Configuration de l'interface réseau sur eth0
Reboot le PC sans la clé, puis autoriser les connection ssh root :
mettre à true PermitRootLogin dans /etc/ssh/sshd_config
Installer Python pour Ansible
Gestion des zabeth par Ansible
Remplissage du fichier /etc/ansible/hosts sur zabeth21
Nous avons crée le rôle network pour la configuration du réseau. On utilise un package pour crée automatiquement les répertoires d'un rôle
ansible-galaxy init network
La machine hôte choisit automatiquement son ipv4 et son ipv6 en fonction de son numéro de zabeth. Ce rôle utilise également un template et un fichier séparé pour les variables :
Tasks :
- name: network configuration template: src: 'templates/interfaces' dest: '/etc/network/interfaces' owner: root group: root mode: '0644'
Vars :
num: "{{ inventory_hostname | regex_replace('^[^0-9]*([0-9]*).*$','\\1') }}" ip4: "{{ num | int + 50 }}" ip6: "00{{ num }}"
Template :
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # Bridge interface 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 static bridge_ports eth0 eth1 address 172.26.145.{{ ip4 }} netmask 255.255.255.0 gateway 172.26.145.254 iface bridge inet6 static address 2001:0660:4401:6050:5000:0000:0000:{{ ip6 }}/64 autoconf 1 privext 2 accept_ra 2
Installation de la Xen
Pour créer la xen :
xen-create-image --hostname=dio2 --ip=172.26.145.102 --dist=chimaera --nameserver=193.48.57.48 --dir=/usr/local/xen/ --netmask=255.255.255.0 --gateway=172.26.145.254 --force
Pour lancer la Xen :
xen console dio2
Sur Capbreton, il faut créer les LVM /home /var :
lvcreate -L10G -ndio2_home storage ; mkfs /dev/storage/dio2_home
lvcreate -L5G -ndio2_var storage ; mkfs /dev/storage/dio2_var
Ensuite il faut changer le config file (situé dans /etc/xen) ajouter ces deux lignes dans la partie disk =
'phy:/dev/storage/dio2_home,xvdb1,w', 'phy:/dev/storage/dio2_var,xvdb2,w',
Reboot Xen halt
On vérifie si les LVM sont présents et comment ils sont formatés avec cette ligne : lsblk -f
Comme /var
est plein, on doit effectuer ces commandes pour éviter d'écraser ce qu'il y a dans /var
lors du mount :
mount /dev/xvdb2 /mnt mv /var/* /mnt umount /mnt
Dans le fichier /etc/fstab
on ajoute ces deux lignes ci-dessous pour configurer le mount les LVM définitivement :
/dev/xvdb1 /home ext4 defaults 0 2 /dev/xvdb2 /var ext4 defaults 0 2
On lance mount -a
et on reboot la Xen
Services Internet
Pour cette partie, on réalise toute les commandes sur la VM dio2 en root
SSH d'un machine distante
Dans le fichier : /etc/ssh/sshd_config
, mettre PermitRootLogin
à yes
Puis restart du service ssh service ssh restart
Création des clefs et CSR
Réservation du nom de domaine brochette.site
Installation de openssl pour la génération du certificat SSL :
apt install openssl openssl req -nodes -newkey rsa:2048 -sha256 -keyout myserver.key -out server.csr -utf8 COUNTRY NAME : FR STATE OR PROVINCE NAME : Nord LOCALITY : Lille ORGANISATION NAME : PolytechLille ORGANISATION : SE COMMON NAME : brochette.site EMAIL ADRESS : Florian.Derlique@polytech-lille.net
Apache HTTP/HTTPS
apt install apache2
Configuration apache pour autoriser HTTPS, ajouter ces lignes après le bloc <VirtualHost *:80>
du fichier /etc/apache2/sites-available/000-default.conf
:
<VirtualHost *:443> ServerName brochette.site ServerAlias www.brochette.site ServerAdmin webmaster@brochette.site DocumentRoot /var/www/html # directives obligatoires pour TLS SSLEngine on SSLCertificateFile /root/brochette.site.crt SSLCertificateKeyFile /root/myserver.key SSLCertificateChainFile /root/GandiStandardSSLCA2.pem ErrorLog /var/log/apache2/error.log CustomLog /var/log/apache2/access.log combined </VirtualHost>
On recupère le .crt (fichier de certification) et le .pem (fichier de chaine de certification) sur le site du fournisseur de nom de domaine gandi. Le .key (clé de certification) est obtenu normalement par la commande openssl de la partie précédente
On active le module ssl pour que le protocle tls fonctionne avec le serveur apache2 (fait le lien symbolique entre les définitions du module contenus dans /etc/apache2/sites-available
vers /etc/apache2/site-enabled
) :
a2enmod ssl a2ensite default-ssl.conf
Reload le service apache :
service apache2 restart
Forcer la connexion en HTTPS, ajouter cette ligne dans le bloc <VirtualHost *:80>
:
Redirect permanent / https://brochette.site
Pour ajouter vos premiers fichiers dans le site : dans le repertoire /var/www/html
Serveur DNS
Installation de bind9 : apt install bind9
Nom de serveur DNS : ns.brochette.site, ip : 193.48.57.179
Nom de serveur DNS secondaire : ns6.gandi.net, ip : 217.70.177.40
Sur l'interface web gandi :
- Ajouter le glue record pour ns.brochette.site (le glue record est utilisé par les utilisateurs avancés pour associer un nom d'hôte (serveur de noms ou DNS) à une adresse IP au niveau du registre).
- Ajouter les deux noms de server si dessus, dans l'onglet "Nameserver"
Configuration du fichier d'option
Dans le fichier /etc/bind/named.conf.options
, si failed les log sont dans /var/log/daemon.log
options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. forwarders { 8.8.8.8; 4.4.2.2; }; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-validation auto; recursion yes; listen-on-v6 { any; }; listen-on { any; }; allow-recursion { trusted; }; allow-transfer{ none; }; }; acl "trusted" { 193.48.57.179; //ns.brochette.site 217.70.177.40; //ns6.gandi.net };
Configuration forward and reverse lookup zones
- La zone lookup "forward" est check lorsque l'utilisateur demande une adresse ip à partir de son nom de domaine
- La zone lookup "reverse" st check lorsque l'utilisateur demande un nom d'hôte à partir de son adresse ip
Dans le fichier /etc/bind/named.conf.local
zone "brochette.site" { type master; file "/etc/bind/db.brochette.site"; allow-transfer{ 217.70.177.40; }; //ns6.gandi.net notify yes; }; zone "57.48.193.in-addr.arpa" { type master; file "/etc/bind/db.193.48.57"; allow-transfer {217.70.177.40; }; //ns6.gandi.net notify yes; };
Création des fichiers de zones
- Copier le fichier local de base :
cp /etc/bind/db.local /etc/bind/db.brochette.site
pour la forward zone
cp /etc/bind/db.127 /etc/bind/db.193.48.57
pour la reverse zone
- Contenu du nouveau fichier forward zone:
; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA ns.brochette.site. root.brochette.site. ( 3 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns.brochette.site. @ IN NS ns6.gandi.net. @ IN A 193.48.57.179 @ IN AAAA 2001:660:4401:60b0:216:3eff:fe21:d102 ns IN A 193.48.57.179 ns IN AAAA 2001:660:4401:60b0:216:3eff:fe21:d102 www IN A 193.48.57.179 www IN AAAA 2001:660:4401:60b0:216:3eff:fe21:d102
- Contenu du nouveau fichier reverse zone :
; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA ns.brochette.site. root.brochette.site. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ;NS records @ IN NS ns.brochette.site. ;PTR records 179 IN PTR ns.brochette.site. ;193.48.57.179
Restart bind9 : service named restart
Tests
- Forward :
root@dio2:~# host -t any brochette.site localhost Using domain server: Name: localhost Address: 127.0.0.1#53 Aliases: brochette.site has SOA record ns.brochette.site. root.brochette.site. 3 604800 86400 2419200 604800 brochette.site name server ns.brochette.site. brochette.site name server ns6.gandi.net. brochette.site has address 193.48.57.179 brochette.site has IPv6 address 2001:660:4401:60b0:216:3eff:fe21:d102
- Reverse :
root@dio2:~# host 193.48.57.179 localhost Using domain server: Name: localhost Address: 127.0.0.1#53 Aliases: 179.57.48.193.in-addr.arpa domain name pointer ns.brochette.site.
Sécurisation DNSSEC
On crée un répertoire pour stocker les clés DNSSEC : mkdir /etc/bind/brochette.site.dnssec
On ajoute ces lignes dans notre /etc/bind/named.conf.options
dnssec-enable yes; dnssec-validation auto;
On crée les deux clés dsnsec ksk et zsk (il y aura sûrement des warning car l'algorithme RSA/SHA1 est obsolète) :
dnssec-keygen -a RSASHA1 -b 2048 -f KSK -n ZONE brochette.site dnssec-keygen -a RSASHA1 -b 1024 -n ZONE brochette.site
On les renomme proprement :
mv ./Kbrochette.site.+005+14263.key ./brochette.site-ksk.key mv ./Kbrochette.site.+005+14263.private ./brochette.site-ksk.private mv ./Kbrochette.site.+005+19815.key ./brochette.site-zsk.key mv ./Kbrochette.site.+005+19815.private ./brochette.site-zsk.private
On inclut les clés dans le fichier de zone /etc/bind/db.brochette.site
$INCLUDE "/etc/bind/brochette.site.dnssec/brochette.site-zsk.key"; $INCLUDE "/etc/bind/brochette.site.dnssec/brochette.site-ksk.key";
On signe le fichier de zone :
dnssec-signzone -o brochette.site -k brochette.site-ksk.key ../db.brochette.site brochette.site-zsk.key
On modifie le fichier /etc/bind/named.conf.local
pour prendre en compte les fichiers de zones signées :
file "/etc/bind/db.brochette.site.signed";
On ajoute la clé publique ksk sur gandi en précisant algorithme RSA/SHA1
Bannissement Fail2Ban
On regarde si notre port SSH subit des attaques par force brute :
grep 'sshd' /var/log/auth.log | grep Failed
Sortie :
Nov 18 06:01:00 dio2 sshd[10216]: Failed password for root from 107.172.21.122 port 51698 ssh2 Nov 18 08:08:21 dio2 sshd[10512]: Failed password for root from 46.193.65.70 port 49157 ssh2 Nov 18 08:41:02 dio2 sshd[10680]: Failed password for root from 107.172.21.122 port 52798 ssh2 Nov 18 10:05:25 dio2 sshd[10752]: Failed password for root from 107.172.21.122 port 53856 ssh2 Nov 18 11:01:12 dio2 sshd[10797]: Failed password for root from 172.26.145.74 port 54398 ssh2 Nov 18 11:01:17 dio2 sshd[10797]: Failed password for root from 172.26.145.74 port 54398 ssh2 Nov 18 11:01:23 dio2 sshd[10797]: Failed password for root from 172.26.145.74 port 54398 ssh2 Nov 18 11:01:28 dio2 sshd[10799]: Failed password for root from 172.26.145.74 port 54400 ssh2 Nov 18 12:15:26 dio2 sshd[1417]: Failed password for root from 172.26.145.64 port 53410 ssh2 Nov 18 12:15:32 dio2 sshd[1417]: Failed password for root from 172.26.145.64 port 53410 ssh2
En effet, nous avons des attaques, installons le package fail2ban
puis on run le service, iptables va filtrer les paquets réseaux :
apt install iptables apt install fail2ban service fail2ban start service fail2ban enable service fail2ban status
On active le bannissement sur le service sshd (SSH) et named-refused (Serveur DNS) dans le fichier : /etc/fail2ban/jail.d/defaults-debian.conf
:
[sshd] enabled = true [named-refused] enabled = true
Si on essaye de restart le service fail2ban il y aura une erreur sur l'activation de named-refused car par défaut, le service de logging de named est éteint. Il faut ajouter le block logging dans /etc/bind/named.conf.options
logging { channel security_file { file "/var/log/named/security.log" versions 3 size 30m; severity dynamic; print-time yes; }; category security { security_file; }; };
Il va lire le fichier /var/log/named/security.log
qui n'existe pas, il faut le crée et mettre l'utilisateur bind
comme owner :
mkdir /var/log/named touch /var/log/named/security.log cd /var/log chown bind -R named/ chown bind named/security.log
On restart et on regarde le client :
root@dio2:~# fail2ban-client status Status |- Number of jail: 2 `- Jail list: named-refused, sshd root@dio2:~# fail2ban-client status sshd Status for the jail: sshd |- Filter | |- Currently failed: 1 | |- Total failed: 2 | `- File list: /var/log/auth.log `- Actions |- Currently banned: 0 |- Total banned: 0 `- Banned IP list: root@dio2:~# fail2ban-client status named-refused Status for the jail: named-refused |- Filter | |- Currently failed: 0 | |- Total failed: 0 | `- File list: /var/log/named/security.log `- Actions |- Currently banned: 0 |- Total banned: 0 `- Banned IP list:
On peut également gérer le temps de bannissement, on ajoute ceci dans le fichier de configuration :
[DEFAULT] bantime.increment = true bantime.factor = 1 bantime.formula = ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor
Cette formule à pour but de calculer le nouveau temps de bannissement selon le temps précédent multiplié par un facteur selon de nombre de ban d'une même adresse ip multiplié par le facteur de ban, qui passe de 1,2,4,8,16,32 ...
On teste l'efficacité du service ban ssh en simulant des tentatives de connexion intempestives, après 4 essais, je me suis fait ban. Dans les logs :
INFO [sshd] Found 92.147.10.240 - 2022-11-18 23:54:53 2022-11-18 23:54:56,763 fail2ban.filter [3380]: INFO [sshd] Found 92.147.10.240 - 2022-11-18 23:54:56 2022-11-18 23:54:59,967 fail2ban.filter [3380]: INFO [sshd] Found 92.147.10.240 - 2022-11-18 23:54:59 2022-11-18 23:55:04,474 fail2ban.filter [3380]: INFO [sshd] Found 92.147.10.240 - 2022-11-18 23:55:04 2022-11-18 23:55:08,273 fail2ban.filter [3380]: INFO [sshd] Found 92.147.10.240 - 2022-11-18 23:55:08 2022-11-18 23:55:08,616 fail2ban.actions [3380]: NOTICE [sshd] Ban 92.147.10.240
Configuration du Réseau
Avec Julien,Thibault,Logan,Quentin,Tom : Configuration en SR52
- Connection vers l'interface Te1/1/2 vers port6 armoire de brassage E304
- Connection vers l'interface Te1/1/5 vers port5 armoire de brassage E304
- Configuration des interface en Vlan 531
Configuration réseau :
Création vlan 531
seulement si n'existe pas (faire (config)#show vlan
#enable #config t (config)#vlan 531 (config-vlan)#name INTERCO-4B (config-vlan)#exit (config)#do write
Configuration interface
(config)#interface Te1/1/2 (config-if)#switchport (config-if)#switchport mode access (config-if)#switchport access vlan 531 (config-if)#exit (config)#interface Te1/1/5 (config-if)#switchport (config-if)#switchport mode access (config-if)#switchport access vlan 531 (config-if)#exit (config)#exit #write
Coffre Fort
Réalisations
Sécurisation des données
On sécurise nos données en créant un système raid 5 sur notre vm :
Création des partitions :
lvcreate -L1G -ndio2-raid1 storage lvcreate -L1G -ndio2-raid2 storage lvcreate -L1G -ndio2-raid3 storage
Attache des partitions sur notre xen :
'phy:/dev/storage/dio2-raid1,xvdb3,w', 'phy:/dev/storage/dio2-raid2,xvdb4,w', 'phy:/dev/storage/dio2-raid3,xvdb5,w'
Reboot de la xen
Check si les partitions sont présente avec lsblk
Création du système raid dans la xen :
mdadm --create /dev/md0 --level=5 --raid-devices 3 /dev/xvdb3 /dev/xvdb4 /dev/xvdb5 mkfs /dev/md0 mount /dev/md0 /mnt cat /proc/mdstat
Sortie :
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid5 xvdb5[3] xvdb4[1] xvdb3[0] 2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU] unused devices: <none>
On change le /etc/fstab
pour mount le système raid dès la mise en route de la xen :
/dev/md0 /media/raid ext4 defaults 0 2
Chiffrement de partitions
On sécurise nos données en créant un système raid 5 sur notre vm :
Création des partitions :
lvcreate -L1G -ndio2-crypt storage
Attache la partition sur notre xen :
'phy:/dev/storage/dio2-raid1,xvdb6,w'
Reboot de la xen
Check si la partition est présente avec lsblk
Installation du package cryptsetup
On invoque cette commande pour formater la partition au type LUKS, et on défini le mot de passe :
cryptsetup -y -v luksFormat /dev/xvdb6
On ouvre la zone crypté KUKS :
cryptsetup luksOpen /dev/xvdb6 cryptage
Si tout est ok, on regarde ce qu'il y a dans /dev/mapper/cryptage
ls -l /dev/mapper/cryptage
On crée le système de fichier :
mkfs /dev/mapper/cryptage
On mount la partition sur /media/crypt
mount /dev/mapper/cryptage /media/crypt/
On peut écrire un fichier dans /media/crypt et avant de fermer la partition on l'a umount : umount /media/crypt/
On ferme la partition LUKS:
cryptsetup luksClose cryptage
Sécurisation WiFi WPA2-EAP
Ici nous devons configurer le routeur C9200 et la borne de point de accès pour crée notre SSID et configurer freeradius
, un service d'authentication en mode PEAP :
Configuration de Freeradius
Ajout du client wifi-ima5sc-brochette dans le fichier /etc/freeradius/3.0/clients.conf
:
client wifi_ima5sc_brochette{ ipaddr = 10.1.0.3 //Adresse de l'AP secret = brochette }
Ajout d'utilisateurs dans le fichier /etc/freeradius/3.0/users
:
<votre_login> Cleartext-Password := "<votre_password>"
Activation du mode EAP en PEAP, dans le fichier /etc/freeradius/3.0/mods-enabled/eap
(on change la ligne default_eap_type
à peap
)
On run freeradius : freeradius -X
Configuration de la borne AP
Configuration de la borne AP (IP,gateway) :
#conf t (config)#ip default-gateway 10.1.0.1 (config)#interface BVI 1 //Bridge Virtual Interface (config-if)#ip address 10.1.0.3 255.255.255.0 (config-if)#exit (config)#do write (config)#exit
Configuration de l'authentification EAP :
#conf t (config)#aaa new-model (config)#aaa group server radius radius_brochette (config-sg-radius)#server 193.48.57.179 auth-port 1812 acct-port 1813 (config-sg-radius)#exit (config)#aaa authentication login eap_brochette group radius_brochette (config)#radius-server host 193.48.57.179 auth-port 1812 acct-port 1813 key brochette (config)#do write (config)#exit
Configuration du SSID :
#conf t (config)#dot11 ssid SSID_BROCHETTE (config-ssid)#vlan 12 (config-ssid)#authentication open eap eap_rose (config-ssid)#authentication network-eap eap_rose (config-ssid)#authentication key-management wpa (config-ssid)#mbssid guest-mode (config-ssid)#exit (config)#do write (config)#exit
Association du SSID à la borne AP :
#conf t (config)#interface Dot11Radio0 (config-if)#ncryption vlan 12 mode ciphers aes-ccm tkip (config-if)#ssid SSID_BROCHETTE (config-if)#mbssid (config-if)#no shut (config-if)#exit (config)#do write (config)#exit
Configuration Dot11Radio0.12 (configuration vlan 12)
#conf t (config)#interface Dot11Radio0.12 (config-subif)#encapsulation dot1Q 12 (config-subif)#no ip route-cache (config-subif)#bridge-group 12 (config-subif)#bridge-group 12 subscriber-loop-control (config-subif)#bridge-group 12 spanning-disabled (config-subif)#bridge-group 12 block-unknown-source (config-subif)#exit (config)#do write (config)#exit
Configuration de l'interface Gigabit 0.12 :
#conf t (config)#interface GigabitEthernet0.12 (config-subif)#encapsulation dot1Q 12 (config-subif)#bridge-group 12 (config-subif)#exit (config)#do write (config)#exit
Configuration du routeur C9200
Configuration vlan 1 (A FAIRE UNE FOIS !) :
#conf t (config)#interface vlan 1 (config-if)#ip address 10.1.0.1 255.255.255.0 (config-if)#exit (config)#do write (config)#exit
Configuration de l'interface filaire (j'ai branché la borne sur le port Gi1/0/1) faire un #show interface
pour voir sur lequel on a branché la borne (A FAIRE UNE FOIS !) :
#conf t (config)#interface Gi1/0/1 (config-if)#switchport (config-if)#switchport mode trunk (config-if)#switchport trunk allowed vlan add 1 (config-if)#exit (config)#write (config)#exit
Création et configuration du vlan12 :
#conf t (config)#vlan 12 (config-vlan)#name brochette (config-vlan)#exit (config)#interface vlan 12 (config-if)#ip address 10.62.0.252 255.255.255.0 (config-if)#exit (config)#do write (config)#exit
On lance freeradius par la commande freeradius -X
aaprès avoir stoppé le service, nous obtenons après connexion au SSID :
... [eap] = ok ... Found Auth-Type = eap ... eap_peap: Success eap: Sending EAP Success (code 3) ID 9 length 4 ... User-Name = "fderliqu" Finished request
DHCP
Maintenant que nous avons crée notre point d'accès mobile, nous remarquons que le routeur ne peut pas attribuer d'adresse ip au client, il faut alors configurer le serveur dhcp du routeur :
Dans une premier temps, on va exclure les adresses ip déja prises, soit l'ip du vlan 12 dans la C9200 (E306), pas besoin d'exclure la broadcast, il le fait automatiquement :
#conf t (config)#ip dhcp excluded-address 10.62.0.252
Puis on configure le serveur dhcp :
(config)#ip dhcp pool brochette (dhcp-config)#dns-server 193.48.57.179 (dhcp-config)#domain-name ns.brochette.site (dhcp-config)#network 10.62.0.0 255.255.255.0 (dhcp-config)#default-router 10.62.0.252 (dhcp-config)#exit (config)#do write (config)#exit
On check si le serveur dhcp est correctement config avec #show ip dhcp pool
Sortie :
Pool brochette : Utilization mark (high/low) : 100 / 0 Subnet size (first/next) : 0 / 0 Total addresses : 254 Leased addresses : 0 Excluded addresses : 1 Pending event : none 1 subnet is currently in the pool : Current index IP address range Leased/Excluded/Total 10.62.0.2 10.62.0.1 - 10.62.0.254 0 / 1 / 254
On teste si cela marche :
- On se connecte avec un téléphone avec l'utilisateur que nous avons défini dans le serveur d'authentification freeradius
- On regarde avec
#show ip dhcp binding
si nous sommes bien connecté avec un bon ip
Sortie :
Bindings from all pools not associated with VRF: IP address Client-ID/ Lease expiration Type State Interface Hardware address/ User name 10.62.0.2 0160.6ee8.cd23.52 Dec 03 2022 11:13 AM Automatic Active Vlan12
- On peut aussi regarder l'adresse ip de notre téléphone après s'être connecté au réseau wifi SSID_BROCHETTE (on peut voir que l'adresse MAC correspond aussi) :
Mascarade
Pas encore fait :(
Intrusion
Cassage de clef WEP d’un point d’accès WiFi
On se met dans la même interface réseau :
airmon-ng start wlan0mon
On écoute sur un réseau WPA : on a pris cracotte03, pour récuperer le BSSID :
airodump-ng --encrypt wep wlan0mon
LA SUITE ICI THIBAULT
Serveur Minecraft
Le but de cette partie est d'installer un serveur Minecraft sur notre dio2.
Méthode 1 : Installation brute
On récupère le fichier server.jar sur notre dio2 avec wget
(on installe le package si n'est pas installé):
wget https://piston-data.mojang.com/v1/objects/f69c284232d7c7580bd89a5a4931c3581eae1378/server.jar
Pour structurer notre VM, on place ce fichier dans le répertoire /root/minecraft
. Avant de procéder à l'installation, on installe la dernière version de open-jdk : apt install openjdk-17-jre
On lance le .jar (-Xmx et -Xms permet de spécifier la ram à allouer):
java -Xmx500M -Xms500M -jar server.jar nogui
Dans le fichier eula.txt
mettre eula=false
à eula=true
, ce que signifie que vous avez accepté les conditions générale d'utilisation
On relance le .jar avec la même commande
Pour que le serveur reste actif, on peut lancer le .jar dans un multiplexeur de terminaux comme screen
par exemple.
Pour ce faire :
- Lancer le package screen
- Pour se détacher du terminal :
[Ctrl+A][D]
- Pour revenir sur le terminal :
screen -dr
On peut se connecter à l'adresse 193.48.57.179
ou brochette.site
si le serveur DNS est correctement configuré (voir partie ci-dessus)
Méthode 2 : En utilisant un conteneur docker
On peut facilement trouver des conteneurs dockers contenant un serveur minecraft, par exemple celui la, puis suivre le README.md pour lancer le server. Cette méthode est assez pratique puisque il ne nécessite pas d'installer les packages open-jdk