Créer et configurer un serveur web sous Gnu-Linux à domicile et accessible en ligne : Différence entre versions

De TravauxIndse
(Création d'un nouvel hôte virtuel)
(Ouverture des ports de votre box)
Ligne 92 : Ligne 92 :
  
 
Ajoutez alors trois redirections de port, choisissez alors les 3 cités au dessus; il faut alors définir vers quelle machine votre modem va les rediriger, collez donc l'adresse Ip de votre machine (adresse que vous aviez déjà copié auparavant) là où on vous demande l'hôte interne.
 
Ajoutez alors trois redirections de port, choisissez alors les 3 cités au dessus; il faut alors définir vers quelle machine votre modem va les rediriger, collez donc l'adresse Ip de votre machine (adresse que vous aviez déjà copié auparavant) là où on vous demande l'hôte interne.
 +
 +
=='''actualisation et redirection de votre adresse Ip'''==
 +
 +
Puisque vous avez ouvert vos ports, il faudrait maintenant que lorsque vous tapiez www.example.cf hors de chez vous, vous pourriez accéder à la même page que chez vous. Vous allez donc faire une redirection et une actualisation de votre Ip. Pour cela, il existe de nombreuse façon et de nombreux services différent, une liste de ces services gratuit est disponible [https://korben.info/clone-dyndns-remplacer.html ici]

Version du 21 novembre 2018 à 14:23

Obtenir un nom de domaine

Pour cela, rien de plus simple, rendez-vous sur freenom, c'est un service de nom de domaine gratuit donc vous n'aurez pas de .be ou de .com mais à ce moment là vous pouvez vous rendre sur d'autres sites pour les obtenir.

Ensuite allez dans "services", "register a new domain", et puis créer votre nom de domaine (vous pourrez choisir plusieurs ".quelque chose" vous êtes libre d'en prendre 1 ou 10 si ça vous chante mais dans notre cas vous n'en utiliserez qu'un.

Créer un serveur web en localhost

Prérequis

  • Ubuntu 18.04 ou raspbian (si vous disposez d'un raspberry)
  • Permissions "Racines" (root)
  • Un peu de motivation :)

Installation d'Apache

La première étape est donc d'installer apache, pour cela rendez-vous dans le terminal et écrivez ceci :

 sudo apt-get update && apt-get install apache2 

Pour vérifier qu'apache a bien été installé vous pouvez taper localhost dans votre navigateur web qui est le l’hôte virtuel local d'apache de base.

Normalement si ça fonctionne vous devriez avoir une page comme ceci :

Default apache page.png

Si vous avez d'autres soucis, le lien du tutoriel original est dans les sources.

Il existe une autre façon de faire [ici], mais je n'ai pas fait de la même façon et je vais aller un peu plus loin.


Création d'un nouvel hôte virtuel

Faites bien attention à bien remplacer les "exemple" par le nom de votre site et les ".localhost" par le domaine que vous avez choisi (par exemple: .cf)

Nous allons commencer par créer le dossier où seront stockée les pages de notre site, pour cela faites :

sudo mkdir /var/www/exemple && echo "Welcome to exemple!" > /var/www/exemple/index.html

cela va aussi créer une page html où il sera affiché : "Welcome to exemple"

Il faut alors configurer notre hôte virtuel, pour cela vous avez le choix  :

Soit l'édition en mode console

 sudo nano /etc/apache2/sites-available/exemple.conf 

Soit l'édition en mode graphique (bloc-note)

 sudo gedit /etc/apache2/sites-available/exemple.conf 

Collez alors ceci dans le menu l'interface qui s'est ouverte (TODO : expliquer ce fichier):

<VirtualHost *:80>
DocumentRoot /var/www/example
ServerName www.example.local
</VirtualHost>

Et sauvegarder le document

Pour activer notre site, il faut alors utiliser la commande a2ensite qui va aussi créer un fichier similaire dans le dossier /etc/apache2/sites-enabled :

 sudo a2ensite example.conf 

Nous devons alors relancer la configuration serveur apache :

sudo systemctl reload apache2.service

Pour vérifier si notre configuration fonctionne, il faut associer l'adresse ip de notre machine avec le nom de notre serveur Pour connaitre votre adresse ip sous linux, dans le terminal entrez la commande :

ifconfig

Les chiffres qui sont situés après inet addr: sont l'adresse ip de votre machine. Copiez le, nous allons le réutiliser.

Entrez alors la commande :

sudo echo "adresse.ip.de.votre.machine www.example.local" >> /etc/hosts

Normalement si votre configuration est ok, si vous essayez d'aller sur www.example.local depuis votre machine vous devriez avoir "Welcome to example" qui s'affiche sur votre site

Rendre le serveur disponible depuis l'extérieur

Ouverture des ports de votre box

Maintenant que vous avez créer votre serveur, il serait plus utile de le rendre disponible depuis l'extérieur. Pour cela il va falloir ouvrir les ports de sa box afin de pouvoir accéder a une partie de votre réseau local depuis l'extérieur et établir une redirection/une actualisation d'IP

Pour l'ouverture des ports cela dépendra de votre box, possédant une bbox Proximus, je vais vous montrer la démarche à faire pour celle-ci. La démarche pour les autres box devrait être assez similaires, mais renseignez-vous.

  • Première étape : Passer en sécurité faible

Avec proximus, les port 80, 443 et 23 sont bloqués, pour notre serveur nous avons besoin du 80 et du 443, il faut alors passer en sécurité faible afin de les utiliser. Rendez-vous sur le site MyProximus et connectez-vous avec le compte qui gère votre internet. Après avoir fait ceci sélectionner la page : "mes produits" puis cliquez sur votre pack internet. De là plusieurs fenêtres s'affichent, allez dans paramètres, sélectionnez sécurité faible et validez (Ne vous inquiétez pas on ne va pas vous pirater plus facilement pour la cause).


  • Deuxième étape : Ouvrir les ports de votre box et établir une redirection vers votre ordinateur

Maintenant que vos ports sont débloqué, il va falloir accéder aux paramètre de votre box pour les "mapper"; pour ça rien de plus simple, sur votre navigateur recherchez 192.168.1.1. Là une page s'affiche et demande de vous connecter, pas besoin de nom d'utilisateur, juste d'un mot de passe, il se trouve derrière votre box Userpasswordproximus.png

Après vous être connecté, nous allons d'abord fixer l'adresse de votre machine (elle pourrait changer, donc on prend des précautions), rendez-vous dans la page "Mon Modem" puis dans "DHCP" cliquez sur "ajouter une adresse statique" et ajoutez-y votre machine (normalement le nom que vous lui avez donnez doit apparaître). TODO Maintenant que vous avez fait cela, allez dans la page "Contrôle d'accès" puis dans "Mappage des ports". Là il faut alors établir 3 redirections de ports :

*Le port 80 : ce que nous appelons Internet (La plupart des pages internet commencent par "http")
*Le port 443 : ce que nous appelons aussi Internet mais c'est sécurisé (Si le pages internet ne commencent pas par "http" elles commencent par "https")
*Le port 22 : Protocole ssh, en ouvrant ce port nous pouvant accéder à notre machine à distance et la modifier en ligne de code (de façon sécurisée)

Ajoutez alors trois redirections de port, choisissez alors les 3 cités au dessus; il faut alors définir vers quelle machine votre modem va les rediriger, collez donc l'adresse Ip de votre machine (adresse que vous aviez déjà copié auparavant) là où on vous demande l'hôte interne.

actualisation et redirection de votre adresse Ip

Puisque vous avez ouvert vos ports, il faudrait maintenant que lorsque vous tapiez www.example.cf hors de chez vous, vous pourriez accéder à la même page que chez vous. Vous allez donc faire une redirection et une actualisation de votre Ip. Pour cela, il existe de nombreuse façon et de nombreux services différent, une liste de ces services gratuit est disponible ici