2025-2026
Vous allez mettre en place un serveur DNS qui fait autorité sur votre
zone. Pendant ces TPs, le serveur DNS 172.18.[13].33 est
résolveur, mais fait aussi autorité sur la zone g[12].t2.
et délègue chaque zone login.g[12].t2. vers la VM
correspondante.
Si ce n’est pas déjà fait, changez le résolveur DNS de votre machine (physique) pour utiliser le serveur DNS mentionné ci-dessus.
Assurez-vous que vous pouvez toujours résoudre
www.bordeaux-inp.fr.
dig n’est pas installé, il est dans le paquet
bind9-dnsutilsSur votre VM, installez le paquet bind9, qui est un
serveur DNS faisant autorité (documentation).
Désactivez DNSSEC (que nous n’allons pas utiliser dans ce TP) en ajoutant la ligne
dnssec-validation no;
dans le bloc options du fichier
/etc/bind/named.conf.options.
Dans le fichier /etc/bind/named.conf.local,
définissez la zone sur laquelle votre serveur aura autorité :
zone "login.g[12].t2" {
type primary;
file "/etc/bind/login.g[12].t2";
notify false;
};Définissez ensuite les entrées de la zone dans le fichier correspondant:
$TTL 2d ; default TTL for zone
$ORIGIN login.g[12].t2. ; base domain-name
@ IN SOA login.g[12].t2. hostmaster.login.g[12].t2. (
2026031201 ; serial number
12h ; refresh
15m ; update retry
4d ; expiry
2h ; minimum
)
IN NS ns
IN A <IP de votre VM>
ns IN A <IP de votre VM>Vérifiez la configuration avec named-checkconf et
named-checkzone login.g[12].t2 /etc/bind/login.g[12].t2.
Redémarrez le service bind9.
Resolvez login.g[12].t2 et
ns.login.g[12].t2 depuis votre machine, assurez-vous que
l’IP de votre VM est bien renvoyée.
Nous allons installer un serveur web, pour que le nom de domaine
login.g[12].t2 corresponde à un simple site web (par
exemple la page HTML que vous avez écrite pour le test avec Python).
Installez le paquet nginx.
Créez le fichier /etc/nginx/sites-available/login
avec le contenu suivant (il s’agit d’un copier/coller de la fin du
fichier /etc/nginx/sites-enabled/default), qui va
configurer le virtual host pour votre nom de domaine :
server {
listen 80;
listen [::]:80;
server_name login.g[12].t2;
root /var/www/login/;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Créez un lien symbolique
/etc/nginx/sites-enabled/login vers
/etc/nginx/sites-available/login.
Vérifiez que la configuration Nginx est correcte avec
sudo nginx -t.
Rechargez le service nginx.
Créez le dossier /var/www/login et placez-y votre
fichier HTML, idéalement nommé index.html.
www-data.Depuis votre navigateur, accédez à votre site web.
En parcourant les fichiers de configuration dans
/etc/nginx, trouvez où sont enregistrés les
logs de Nginx. La commande grep avec les
options -Irni (que font ces options ?) vous sera sans doute
utile.
Consultez les fichiers de logs de Nginx. Que voyez-vous ?
Nous allons mettre en place une instance Nextcloud, accessible depuis l’adresse
cloud.login.g[12].t2. Les instructions qui suivent sont un
résumé grossier de la
documentation officielle.
Nous allons utiliser MariaDB comme serveur SQL.
Installez le paquet mariadb-server.
Pour définir le mot de passe root du serveur
MariaDB, exécutez la commande :
sudo mariadb-secure-installationroot (un mot de passe
que vous n’oublierez pas, l’objectif n’est pas la sécurité ici).Ouvrez une console SQL :
mariadb -u root -pCréez l’utilisateur dédié à Nextcloud ainsi qu’une base de données (instructions copiées de la documentation) :
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL PRIVILEGES on nextcloud.* to 'nextcloud'@'localhost';Quittez la console SQL avec quit;.
Sur quel port écoute le serveur MariaDB ? Trouvez la réponse de deux façons différentes.
Installez PHP et les différents composants nécessaires pour Nextcloud, sans les paquets qui sont recommandés :
sudo apt install --no-install-recommends php-fpm php-curl php-gd php-xml php-mbstring php-zip php-mysqlCréez le virtual host Nginx (adapté/simplifié à partir de la documentation) en utilisant (et adaptant) ce fichier.
/var/www/cloud.nextcloud/ doit être dans
/var/www/cloud/./var/www/cloud avec l’utilisateur www-data. Le
plus simple est sans doute de changer le propriétaire du dossier.cloud dans votre
zone DNS, pour que l’IP de votre VM soit associée au sous-domaine
cloud.login.g[12].t2.Continuez la fin du TP 1 : mettez en place Munin, un parefeu et la redondance de votre zone DNS.