Cahier 2017 groupe n°3
Sommaire
Configuration des points d'accès wifi
présentation
Schéma du réseau:
Notre objectif est de mettre en place une VM sur le serveur Cordouan et d'installer les points d'accès wifi pour les autres groupes. On cherchera à faire un banc de test et de tester la sécurité des chiffrements WEP et WPA.
avancement du travail
séance 1
- Explication du projet
- Répartition du travail dans les différents groupes
- Gestion des adresses ip de chacun
séance 2
- Exploration des locaux techniques de Polytech
- Création de la VM Xen sur le serveur Cordouan
- installation des paquetages nécessaires pour ssh, serveur WEB apache2 et le serveur DNS Bind
- Achat du domaine :
séance 3
- Mise en place des 2 premiers points d'accès wifi.
- Avancement dans la compréhension de l'utilisation de la clef wifi
séance 4
- Mise en place des 5 derniers points d'accès wifi.
- Connexion faite entre la machine avec la clef wifi et le point d'accès.
- Configuration de gandi et de notre serveur dns avec bind9
séances supplémentaires
- Sécurisation de site web par certificats
- Sécurisation de site web par dnssec
- crackage de wlef WEP
Configuration d'un point d'accès
Commencer par se mettre en mode configuration:
ap>enable ap#configure terminal
La configuration pour un point d'accès pour une sécurisation WEP est donc:
ap(config)#dot11 ssid tomate ap(config-ssid)#authentication open ap(config-ssid)#vlan 8 ap(config-ssid)#mbssid guest-mode ap(config-ssid)#exit ap(config)#Interface dot11radio0 ap(config)#ssid tomate ap(config-ssid)#no shutdown ap(config-ssid)#Encryption vlan 8 mode wep mandatory ap(config-ssid)#Encryption vlan 8 key 1 size 128bit 05050505050505050505050505 ap(config-ssid)#End
Écrire les modifications:
ap#write memory
Configurer le sous interface pour Dot11 radio 0 et Ethernet.
ap#configure terminal ap(config)#interface Dot11Radio0.8 ap(config-subif)#encapsulation dot1Q 8 ap(config-subif)#bridge-group 8 ap(config-subif)#interface GigabitEthernet0.8 ap(config-subif)#encapsulation dot1Q 8 ap(config-subif)#bridge-group 8 ap(config-subif)#end ap#write memory
Crackage du mot de passe du point d'accès (WEP)
Premièrement installer le driver de la clef wifi si il n'est pas installé sur le poste. (Si pas d'interface wifi quand on tape iwconfig)
Par exemple pour une clef netgear on tape :
lsusb
On récupére le nom entre crochet ([Intersil ISL3887]) On récupère le driver ou la manière de procéder pour ISL3887 dans notre cas grâce à ce site: https://wiki.debian.org/fr/prism54
Pour ISL3887:
wget https://daemonizer.de/prism54/prism54-fw/fw-usb/2.13.25.0.lm87.arm --no-check-certificate mv 2.13.25.0.lm87.arm /lib/firmware/isl3887usb modprobe -r p54usb ; modprobe p54usb
Une fois le driver installé, on remarque que la led devient bleu et que une interface wifi apparaît avec iwconfig.
On configure /etc/network/interfaces:
auto <nom de l'interface (wlx000fb592236a)> iface <nom de l'interface> inet static address <adresse ip qu'on donne à ce réseau (10.2.0.100)> netmask <masque (255.255.0.0)> wireless-essid <essid (banane)> wireless-key <mot de passe wifi (à regarder dans le doc de la promo)>
Après un ifdown <nom de l'interface> et ifup <nom de l'interface>, on remarque que la connexion est établie.
Partie commune
Création de la VM
Pour suivre le thème de la promo qui porte sur les fruits, nous avons crée une machine virtuelle sur le serveur cordouan qui se nomme IMA5-GROSEILLE.
Cette VM hébergera un site web sécurisé qui se nommera www.groseille.space.
Pour cela on utilisera les commandes :
- xen-create-image pour créer la machine virtuelle
- lv-create pour que les répertoires /var et /home soient sur les partitions LVM de l'hôte.
Une fois la machine virtuelle crée, on créera la session avec:
xl create IMA5-GROSEILLE.cfg
dans le repertoire /etc/xen
et :
xl console IMA5-GROSEILLE
pour accéder à la VM.
Mise en place des services internet
Serveur dns
On installe notre outil de serveur web et de serveur de DNS
apt-get install apache2 apt-get install bind9
On se place dans le dossier : /etc/bind et
on crée le fichier : db.groseille.space pour notre adresse ip (193.48.57.183)
ps : Correction faite après coup : Ajout de la ligne :
IN NS ns6.gandi.net.
Et on spécifie notre zone dans le fichier named.conf.local
On redémarre le service pour appliquer les changements:
service bind9 restart
Et on configure le nom de dns sur le site de gandi. Dans name servers :
DNS1 : ns.groseille.space DNS2 : ns6.gandi.net
Dans Glue records:
Serveur ssh
Pour installer le service, nous installons tout d'abords le package openssh-server
apt-get install openssh-server
Notre utilisateur est root. Il nous faut donc autoriser l'accès directement en root.
vim /etc/ssh/sshd_config
et tapez ou décommentez:
PermitRootLogin yes
On peut donc maintenant se connecter en ssh à notre machine virtuelle en tapant:
ssh root@www.groseille.space
Sécurisation de site web par certificats
Après avoir naviguer dans les pages de gandi pour sécuriser notre site web via ssl, gandi nous demande un fichier csr. On le générera comme ceci:
openssl req -nodes -newkey rsa:2048 -sha1 -keyout groseille.space.key -out groseille.space.csr
On remplira par la suite les informations ci-dessous:
Country Name (2 letter code) [AU]:FR State or Province Name (full name) [Some-State]:Nord Locality Name (eg, city) []:Villeneuve d'ascq Organization Name (eg, company) [Internet Widgits Pty Ltd]:groseille.space Organizational Unit Name (eg, section) []:groseille.space Common Name (e.g. server FQDN or YOUR name) []:groseille.space
En choisissant la troisième option, gandi nous demandait de mettre un fichier à la racine.
Nous avons donc téléchargé le fichier et collé dans :
var/www/www.groseille.space/.well-known/pki-validation/DE2B588C8156976B90DB59420093DEDC.txt
Seulement, notre site n'était uniquement accessible en www.groseille.space mais pas sans les www.
Après recherches, nous avons donc rajouter une ligne au fichier db.groseille.space dans bind:
@ IN A 193.48.57.183
Notre demande de certificat est toujours en train d'être exécuté.
Cependant, une fois que tout sera validé par gandi, nous nous occuperons des fichier .crt, .pem, .key associés:
cp groseille.space.key /etc/ssl/private/. cp GandiStandardSSLCA2.pem /etc/ssl/certs/. cp groseille.space.crt /etc/ssl/certs/.
c_rehash /etc/ssl/certs
On modifiera /etc/apache2/sites-available/000-groseille.space-ssl.conf
On écrira dans ports.conf de apache :
Listen 80 443
<IfModule ssl_module> Listen 443 </IfModule>
On activera le module SSL de Apache et notre site avec ces commandes:
a2enmod ssl a2ensite 000-groseille.space-ssl.conf service apache2 reload
Sécurisation de site web par dnssec
On cherchera à sécuriser notre serveur DNS en signant la zone correspondant à notre nom de domaine.
Dans le fichier : named.conf.options on ajoutera l'option:
dnssec-enable yes;
On créera le répertoire groseille.space.dnssec pour y générer les clefs.
Dedans, on créera aussi la clef asymétrique de la zone pour signer les enregistrements.
dnssec-keygen -a RSASHA1 -b 2048 -f KSK -r /dev/urandom -n ZONE groseille.space dnssec-keygen -a RSASHA1 -b 1024 -r /dev/urandom -n ZONE groseille.space
On les renommera pour avoir :
groseille.space-ksk.key groseille.space-ksk.private groseille.space-zsk.key groseille.space-zsk.private
On modifiera le fichier /etc/bind/db.groseille.space comme ceci :
$include /etc/bind/groseille.space.dnssec/groseille.space-ksk.key $include /etc/bind/groseille.space.dnssec/groseille.space-zsk.key
Signature des enregistrements de zone (dans /etc/bind/groseille.space.dnssec)
dnssec-signzone -o groseille.space -k groseille.space-ksk ../db.groseille.space groseille.space-zsk
On modifie pour finir le fichier named.conf.local pour avoir db.groseille.space.signed
Après avoir enregistrer le record sur gandi, on attend que gandi prenne en compte les nouvelles configurations. On pourra vérifier les modifications grâce aux commandes:
grep 217.70.177.40 /var/log/daemon.log host -t any groseille.space ns6.gandi.net for f in /var/log/apache2/access.log.*gz ; do zcat $f | grep -i well ; done