12/12/2024

Apache

Apache

Automatiser l’authentification .htaccess dans l’URL

I. Présentation Lors de la mise en place d’une protection d’un dossier ou d’une page web par authentification avec le couple de fichier « .htaccess » et « .htpasswd », l’authentification est à faire dans un pop-up qui apparait lors du retour de la requête. Dans ce tutoriel, nous allons voir comment automatiser cette authentification sans avoir à saisir les identifiants dans cette fenêtre pop-up. Cela peut par exemple être utilisé lors de la mise en place d’un script qui automatise une tâche. II. Procédure Dans un cas normal, nous utiliserons donc une simple requête web comme « http://siteweb.tld/pageprotegee.html » puis nous aurons à saisir nos identifiants. Afin d’automatiser l’authentification, nous allons envoyer directement les identifiants dans la requête comme suivant : http://login:[email protected]/pageprotegee.html Il faut donc spécifier entre « http:// » et le reste de l’URL le couple « login : mot de passe » et marquer le début du reste de l’URL par un « @ ». Une petit astuce au cas où l’identifiant contiendrait un « @ » (une adresse mail par

Lire cet article
Apache

Sécuriser les authentifications Htaccess avec l’option Digest

I. Présentation Le fichier .htaccess est un moyen rapide et efficace pour restreindre et protéger l’accès à un dossier ou à des fichiers web sur un serveur. La plupart des tutoriels nous disent souvent d’utiliser l’option simple « AuthType Basic » pour la méthode d’authentification. Cependant, cette option fait passer les mots de passe quasiment en clair sur le réseau remettant ainsi sérieusement en cause leur crédibilité en terme de sécurité. Dans ce tutoriel, nous allons voir une démonstration du passage du mot de passe lors d’une authentification .htaccess utilisant un type d’authentification « Basic » puis nous verrons comment mieux sécuriser le passage de l’authentification sur le réseau par un .htaccess. II. Démonstration Nous partons ici du fait qu’un fichier « .htaccess » utilisant l' »AuthType Basic » est déjà en place. Pour ceux pour qui ce ne serait pas encore le cas, je vous oriente vers ce tutoriel sur la mise en place d’une protection simple avec « .htaccess ». Nous allons donc avoir un serveur web (dans

Lire cet article
Apache

Protéger l’accès à certains fichiers spécifiques avec .htaccess

I. Présentation Les fichiers « .htaccess » sont souvent utilisés dans Apache afin de protéger l’accès à un répertoire spécifique où les fichiers sont positionnés. Il est important de savoir également que l’on peut, avec un fichier « .htaccess », protéger un fichier ou un type de fichier et pas d’autres alors qu’ils sont dans le même répertoire. C’est ce que nous allons voir dans ce tutoriel. II. Préparation de l’environnement Nous allons supposer qu’Apache2 est déjà installé et opérationnel sur notre serveur et qu’il est joignable sur le port 80. Pour le test, nous allons supposer que la page « index.html » doit être joignable sans restriction mais pas la page « index2.html » que nous créons maintenant : cp /var/www/index.html /var/www/index2.html chown www-data /var/www -Rf Nous faisons un premier test d’accès aux deux pages. Elles sont normalement toutes deux accessibles sans restrictions (sinon vérifiez votre configuration Apache2). III. Construction du fichier .htaccess Nous allons maintenant créer le fichier « .htaccess » dans le répertoire « /var/www » afin de restreindre

Lire cet article
Apache

Mettre en place une connexion SSL avec WAMP

I. Présentation Ce tutoriel a pour but de vous expliquer comment mettre en place une connexion SSL sur un serveur web réalisé avec le logiciel WAMP. Ce qui vous permettra d’utiliser le protocole HTTPS (HTTP Sécurisé) pour naviguer sur votre site web de manière sécurisé. Le certificat créé dans ce tutoriel est un certificat auto-signé par le serveur local, il n’est pas signé par un organisme de certification ce qui a pour effet que ce certificat doit être utilisé en interne uniquement c’est-à-dire dans un intranet, par exemple. Remarque : Dans les différentes commandes, les différents chemins à modifier dans les fichiers, méfiez vous de la version de votre Apache car le nom du dossier change selon la version. Dans notre cas : apache2.2.11. II. Création des clés RSA (privée et publique)  Pour se faire nous avons besoins d’utiliser des commandes DOS, ouvrez donc une « Invite de commande ».  Placez-vous dans le répertoire « bin » d’Apache en utilisant

Lire cet article
Apache

Changer l’emplacement des sites par défaut d’apache

I. Présentation Le répertoire où Apache 2 va par défaut chercher les sites et les pages web est le répertoire « /var/www ». Dans ce tutoriel, nous allons apprendre à changer ce paramètre en changeant la répertoire par défaut d’Apache 2. II. Création du répertoire d’accueil Nous allons par exemple ici vouloir qu’Apache 2 aille chercher les pages et sites web par défaut dans « /home/webuser/sites ». Il faut donc s’assurer que le répertoire d’accueil existe et le créer si ce n’est pas le cas : mkdir /home/webuser/sites On donne ensuite tous les droits à l’utilisateur « www-data » qui exécute Apache 2 : chown www-data /home/webuser/sites -Rf Note : le « -R » permet d’effectuer l’affectation des droits de manières récursive (en comprenant les sous-dossiers et leurs fichiers) III. Configuration du répertoire par défaut Nous nous rendons pour cela dans le dossier de configuration d’Apache 2 qui est « /etc/apache2 » cd /etc/apache2 Nous avons par défaut un site actif dans Apache 2 que nous pouvons identifier en faisant

Lire cet article
Apache

Vérifier la configuration d’Apache2 avant de redémarrer

I. Présentation Lors d’une modification de la configuration d’Apache, nous sommes bien souvent obligé de redémarrer le service « apache2 » présent sur notre serveur. Le problème est que si la configuration n’est pas correcte, le service peut refuser de redémarrer. Si c’est sur un serveur en production, les sites hébergés seront indisponibles le temps de la réparation du problème. II. Procédure Dans ce cas précis, il est serait plus judicieux de savoir vérifier si la configuration d’Apache2 est correcte avant de procéder à un redémarrage. Il existe pour cela une commande fournis avec les paquets « apache2 » qui se nomme « apachectl ». Cette commande, dans notre cas, peut prendre l’option « configtest » qui va procéder à une vérification de la syntaxe des fichiers de configuration : Si il y a un élément dans les fichiers de configuration qu’Apache2 ne comprends pas, il vous l’indiquera à la suite de la commande et cela vous permettra de le corriger sans avoir une indisponibilité du service et

Lire cet article
Apache

Htaccess – Utiliser des index alternatifs

I. Présentation La configuration standard d’un serveur web implique que la page web se nomme « index.html », « index.htm » ou « index.php ». Toutefois, en paramétrant le fichier « .htaccess » situé à la racine de votre site il est possible d’indiquer un autre nom de fichier pour la page Index. Voir même d’indiquer plusieurs fichiers Index et dans le cas où Apache ne trouve pas le premier, il vérifiera l’existence du second, etc. Ainsi, vous vous assurez d’avoir toujours une page Index accessible dans le cas où la page principale ne l’est plus. II. Définir un ou plusieurs index Pour définir un nom de page personnalisé pour l’Index ou en indiquer plusieurs pour avoir de la redondance sur la page Index, on utilise la directive « DirectoryIndex ». – Un index nommé « accueil.html » : DirectoryIndex accueil.html – Deux index, dont le principal est « accueil.html » et l’alternatif est « index.html » : DirectoryIndex accueil.html

Lire cet article
Apache

Htaccess – Restriction des adresses IP

I. Présentation Les fichiers .htaccess sont omniprésents sur les sites web pour mettre en place de la réécriture d’URL, définir des pages d’erreurs personnalisées, demander une authentification pour accéder aux ressources, mais aussi pour effectuer une restriction sur une ou plusieurs adresse(s) IP. C’est ce que nous allons voir dans ce tutoriel. Il y a deux méthodes pour procéder à une restriction :  Refuser l’accès à certaines adresses IP   Autoriser uniquement l’accès à certaines adresses IP Pourquoi le bannissement ? Si quelqu’un de malintentionné publie des commentaires en grand nombre sur votre site, pollue votre forum, tente d’accéder à votre interface d’administration, etc.   II. Restreindre une ou plusieurs adresse(s) IP Commençons par restreindre l’accès à une ou plusieurs adresse(s) IP en modifiant le fichier « .htaccess » situé à la racine de votre site. Indiquez-ceci dans votre fichier : # Restriction des adresses IP # Ordre de priorité des instructions : autoriser puis refuser Order Allow,Deny # On

Lire cet article
Apache

Consulter la documentation Apache sur son serveur

I. Présentation La documentation concernant le serveur Web Apache est évidemment disponible en ligne, mais, il est possible de la consulter en local sur son propre serveur web en installant un paquet approprié. II. Installation du paquet La manipulation consiste à installer le paquet « apache2-doc » qui contient donc toute la documentation d’Apache. Voici la suite de commandes à saisir : # Mise à jour de la liste des paquets apt-get update # Installation du paquet apache2-doc apt-get install apache2-doc Vous n’avez pas besoin de recharger la configuration d’Apache2 puisque c’est fait automatiquement à la fin de l’installation du paquet. Note : Ce paquet prend 12,8 Mo d’espace sur le disque dur de votre machine.   III. Consultation de la documentation Pour finir, accédez à la documentation d’Apache de la manière suivante : http://url_de_votre_site/manual Une fois que vous êtes sur l’interface, vous pouvez changer la langue en français en cliquant sur « fr » sur la droite.

Lire cet article
Apache

Modifier le mot de passe Root de WAMP

I. Présentation Ce tutoriel a pour but de vous expliquer comment modifier le mot de passe Root de WAMP, plus précisément d’accès à l’interface de PhpMyAdmin afin de sécuriser votre serveur web. II. Procédure Accédez à l’interface de PhpMyAdmin. Allez dans l’onglet « Privilèges ». Modifiez les privilèges de l’utilisateur Root en localhost Pour cela cliquer sur l’icône comme précisé sur l’image. – Saisie du mot de passe Descendez dans la page puis saisissez votre mot de passe dans les champs prévus à cet effet, puis confirmez en faisant « Exécuter ». Maintenant il faut préciser dans le fichier de configuration de PHP que la connexion à l’interface avec l’utilisateur Root se fait via un mot de passe, car par défaut l’utilisateur Root n’a pas de mot de passe. – Ouvrez le fichier « config.inc.php » se trouvant dans C:/wamp/apps/phpmyadmin3.2.0.1/ Inscrivez le même mot de passe Root que celui saisie dans l’interface de PhpMyAdmin à la ligne $cfg[‘Servers’][$i][‘password’] = ‘votre_mot_de_passe’;

Lire cet article
Apache

Protéger une page web avec .htaccess et .htpasswd

I. Présentation Il peut parfois être utile d’avoir à protéger certains contenus ou pages web par une authentification simple. Le but est alors de ne laisser passer que ceux qui ont les identifiants requis. Cela se fait trés simplement grace aux fichiers « .htaccess » et « .htpasswd » avec Apache2, c’est ce que nous allons voir dans ce tutoriel. Nous allons ici supposer qu’au moins Apache2 est installé sur le serveur et que votre architecture web démarre de « /var/www/ ». Pour l’exemple du tutoriels, nous allons protéger le dossier « /var/www/site1 » par un fichier « .htaccess ». II. Construction des fichiers On se rend dans donc le dossier en question : cd /var/www/site/ Ensuite, nous allons créer le premier fichier qui sera « .htaccess ». Le fichier « .htaccess » est un fichier caché (il commence par un « . »). Cela signifie qu’on ne pourra pas le voir avec un simple « ls » mais qu’il faudra utiliser « ls -a » pour le voir. Le fichier « .htaccess » est le fichier qui contient les paramètres qui

Lire cet article
Apache

Apache2 : Personnaliser les messages d’erreurs

I. Présentation Les messages d’erreurs par défaut d’Apache sont pas très esthétiques, peuvent être intimidant pour un utilisateur lambda vu qu’ils sont en Anglais, et en plus, ils fournissent des informations sur votre serveur, comme la version d’Apache utilisée. Ainsi, si une personne malintentionnée peut repérer la version de votre serveur Web, elle peut également se renseigner sur les vulnérabilités de cette version. Ce qui fait une raison de plus pour personnaliser les messages d’erreurs. Ici, nous allons donc voir comment personnaliser ces messages et nous en prendrons un pour exemple afin de réaliser des tests. Ce qui est intéressant, c’est que la procédure reste la même pour tous les messages d’erreurs. La personnalisation des messages d’erreurs s’effectue avec l’utilisation d’un ou de plusieurs fichiers « .htaccess ». II. Configuration du site Avant de procéder à la mise en place d’un fichier .htaccess, nous devons vérifier la configuration du serveur Apache puisqu’il y a un paramètre qui permet de préciser

Lire cet article
Apache

Fichier .htaccess pas pris en compte, que faire ?

I. Présentation Il se peut que vous tentiez d’utiliser un fichier .htaccess sur votre serveur web afin de faire de la réécriture d’URL, de l’authentification, de la gestion de pages d’erreurs, etc… Sauf qu’au moment d’effectuer les tests vous remarquez que rien ne se passe. En fait, ceci est dû à la configuration de votre site dans Apache et notamment à la valeur attribuée au paramètre « AllowOverride », qui stipule par défaut qu’on ne prend pas en compte les fichiers de type htaccess. Tout s’explique.   II. Explication Intéressons-nous de plus près au paramètre « AllowOverride » afin de voir les différentes valeurs qu’on peut lui attribuer et ce qu’elles signifient. Voici une liste des valeurs possibles accompagnées d’une explication pour chacune d’entre elles : – « None » : Valeur par défaut qui implique que les fichiers .htaccess sont ignorés pour l’intégralité du site. – « AuthConfig » : Valeur qui permet l’autorisation des directives d’autorisations, plus précisément

Lire cet article
Apache

Les vHosts sous Apache2

I. Présentation Dans ce tutoriel, nous allons apprendre à mettre en place des virtuals hosts sous le service web Apache 2. Les virtuals hosts permettent d’héberger plusieurs sites web sur un même serveur. Par exemple, la requête site1.neaj.fr et site2.neaj.fr amèneront sur deux contenus différents mais ceux-ci seront hébergés sur le même serveur. II Principe de fonctionnement Il est important de savoir que les vHosts ne peuvent être mis en place uniquement si un système DNS existe déjà. Le serveur DNS aura pour fonction de rediriger les requêtes site1.neaj.fr et site2.neaj.fr sur le même serveur grâce aux enregistrements CNAME qui sont des enregistrements orientant un nom vers un autre nom. Dans notre exemple, il existera une entrée www.neaj.fr et les requêtes site1.neaj.fr et site2.neaj.fr seront redirigées vers www.neaj.fr . C’est ensuite les vHosts qui agiront pour afficher le site1 ou le site2 en fonction de la requête reçue. Voici un schéma qui illustre le fonctionnement des vHosts et le traitement

Lire cet article
Apache

Gérer plusieurs sites sous Apache

I.Présentation : Apache uniquement d’un site lorsque vous l’installez, un site accessible sur le port 80 (HTTP) dont la racine est le répertoire /var/www/. Cependant, est fort heureusement, il est possible de gérer plusieurs sites sous Apache sinon imaginez s’il faudrait un serveur par site… Cela est possible grâce aux hôtes virtuels, appelées VirtualHost dans Apache. Ce tutoriel vous apprend à créer et configurer un hôte virtuel supplémentaire jusqu’à sa mise en ligne. II. Emplacement des fichiers de configuration d’Apache L’ensemble des fichiers de configuration d’Apache se trouve dans le répertoire suivant : /etc/apache2/ III. Indiquer le nom du serveur web Apache – ServerName Par défaut, le fichier httpd.conf d’Apache est vierge et lorsque vous redémarrez votre serveur Apache il vous indique l’erreur suivante : Ce qui signifie qu’il ne connait le nom FQDN c’est-à-dire le nom pleinement qualifié utilisé par le serveur. Pour corriger cela il faut modifier le fichier httpd.conf et indiquer une valeur à l’option ServerName :

Lire cet article