## Installation d'un serveur web Nous allons installer un serveur Web: **Apache**. C'est juste celui que je connais le mieux. **Nginx** est une possible alternative très prisée et guère plus compliquée à mettre en oeuvre. ``` root@aijan:/etc/bind# apt install apache2 Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait The following additional packages will be installed: apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 ... ``` Test de notre serveur: C'est bon, voilà une image de la page d'acceuil : ![Le serveur apache](Images/apache.png) Ne pas oublier d'ouvrir les ports du firewall: port 80 et 443 en TCP et UDP. Lignes à rajouter à firewall.sh: ``` # HTTP + HTTPS Out $IPT -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT $IPT -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT $IP6T -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT $IP6T -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT # HTTP + HTTPS In $IPT -t filter -A INPUT -p tcp --dport 80 -j ACCEPT $IPT -t filter -A INPUT -p tcp --dport 443 -j ACCEPT $IP6T -t filter -A INPUT -p tcp --dport 80 -j ACCEPT $IP6T -t filter -A INPUT -p tcp --dport 443 -j ACCEPT ``` ### Sauvegarde de notre nouvelle configuration ``` root@aijan:#cd /home/ericadmin/bin/ root@aijan:/home/ericadmin/bin#./firewall.sh restart root@aijan:/home/ericadmin/bin#service netfilter-persistent save ``` ### Création des hôtes virtuels (virtual hosts) 3 hôtes virtuels à créer: > yojik.net > www.yojik.net > yazik.yojik.net Créez 2 fichiers d'hôtes virtuels. Exemple de fichier: **Virtualhost: www.yojik.net** ``` ServerAdmin webmaster@yojik.net ServerName www.yojik.net DocumentRoot /var/www/html/yojiknet/ Options Indexes MultiViews AllowOverride FileInfo AuthConfig Indexes Order allow,deny allow from all Require all granted ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined LogLevel warn ``` **Virtualhost: yazik.yojik.net** ``` ServerAdmin webmaster@yojik.net ServerName yazik.yojik.net DocumentRoot /var/www/html/yaziknet/ Options Indexes MultiViews AllowOverride FileInfo AuthConfig Indexes Order allow,deny allow from all Require all granted ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined LogLevel warn ``` Validez-les avec: > a2ensite le_nom_du_fichier (a2ensite site1 site2 (pour moi)) On recharge apache2 pour la prise en compte de nos 2 sites. > service apache2 reload ### Création des fichiers html Créez 2 répertoires sous /var/www/html: > mkdir /var/www/html/yojiknet /var/www/html/yaziknet > cd /var/www/html On crée 2 fichiers **index.html** sous chaque répertoire créé: Exemple de fichier de base: **/var/www/html/yojiknet/index.html** ``` The Yojik.net home page

The Yojik Net home page

Nothing interesting at the moment .. comming soon!

``` **/var/www/html/yaziknet/index.html** ``` The Yazik.net home page

The Yazik Net home page

Nothing interesting at the moment .. comming soon!

``` Dans le répertoire **/var/www/html/** on lance la commande suivante pour ajuster les droits et propriétaires des fichiers (pour apache et Debian, c'est **www-data**.) > chown -Rv www-data.www-data * On relance apache > service apache2 restart On crée un On teste avec un navigateur. adresse 1: www.yojik.net adresse 2: yazik.yojik.net Vous vous apercevrez que la deuxième ne fonctionne pas: il vous faut ajouter le domaine yazik.yojik.net à votre fichier de zone de bind et relancer bind ensuite: > yazik IN CNAME atom.yojik.net. Re-testez: tout marche :)