Sécuriser votre site Web en utilisant .HTACCESS Best Practices
- 4573
- 1077
- Maëlle Perez
.HTACCESS est un fichier de configuration puissant utilisé par des serveurs Web tels que Apache pour contrôler et personnaliser leur comportement. Bien qu'il puisse être utilisé à diverses fins, l'un des plus importants est de sécuriser votre site Web.
Dans cet article, nous discuterons des meilleures pratiques pour utiliser .HTACCESS pour sécuriser votre site Web, y compris des conseils pour protéger les fichiers et les répertoires sensibles, la prévention de l'accès non autorisé et la sauvegarde contre les menaces de sécurité communes.
Utilisez des mots de passe et une authentification solides
L'un des moyens les plus simples mais les plus efficaces de sécuriser votre site Web est d'utiliser des mots de passe et une authentification solides. En obligeant les utilisateurs à saisir un nom d'utilisateur et un mot de passe avant d'accéder à votre site ou à certains répertoires, vous pouvez empêcher un accès non autorisé et protéger les informations sensibles.
Pour configurer la protection des mots de passe dans .HTACCESS, vous devrez utiliser les directives «AuthType» et «AuthUserFile». Voici un exemple:
AuthType Basic Authname "Area restreinte" AuthUserFile / Path / To / Motswords /.htpasswd nécessite un utilisateur valide1234 | AuthType BasicAuthName "zone restreinte" AuthUserFile / Path / To / Motswords /.htpasswdrequire valide user |
Dans cet exemple, «AuthType» Spécifie le type d'authentification utilisé (dans ce cas, l'authentification de base), tandis que «AuthUserfile» pointe vers l'emplacement d'un fichier contenant les noms d'utilisateur et les mots de passe autorisés. Le "Besoin de l'utilisateur valide" La directive spécifie que seuls les noms d'utilisateur et les mots de passe valides sont autorisés à accéder à la zone restreinte.
Protéger les fichiers et répertoires sensibles
Une autre utilisation importante de .HTACCESS est pour protéger les fichiers et répertoires sensibles contre l'accès non autorisé. Ceci est particulièrement important pour les fichiers contenant des informations sensibles, telles que les fichiers de configuration, les bases de données et les sauvegardes.
Pour protéger un fichier ou un répertoire dans .HTACCESS, vous pouvez utiliser la directive «refuser de tous». Voici un exemple:
Commander nier, permettre de nier à tous1234 |
Dans cet exemple, «FilesMatch» Spécifie le fichier ou les fichiers à protéger (dans ce cas, «Config.php »), tandis que "Nier de tous" Spécifie que toutes les demandes de ces fichiers doivent être refusées.
Bloquer l'accès aux adresses IP suspectes
Les pirates et les robots malveillants utilisent souvent des outils automatisés pour scanner des sites Web pour les vulnérabilités. Pour éviter ces attaques, vous pouvez utiliser .HTACCESS pour bloquer l'accès aux adresses IP suspectes.
Pour bloquer une adresse IP dans .htaccess, vous pouvez utiliser le "Nier de" directif. Voici un exemple:
Nier de 192.168.1.11 | Nier de 192.168.1.1 |
Dans cet exemple, "Nier de" Spécifie l'adresse IP à bloquer (dans ce cas, 192.168.1.1).
Activer HTTPS et SSL
HTTPS (Hypertext Transfer Protocol Secure) est un protocole de communication sécurisée sur Internet. En activant HTTPS sur votre site Web, vous pouvez protéger des informations sensibles telles que les mots de passe et les numéros de carte de crédit contre l'interception par des pirates.
Pour activer https dans .HTACCESS, vous pouvez utiliser les directives «RewriteConDond» et «Rewriterule». Voici un exemple:
Réécriture de la réécriture REWRITECOND% https hors réécriture ^ (.*) $ https: //% http_host% request_uri [l, r = 301]123 | Réécriture sur le chariot onwRiteCond% https offrewRiteule ^ (.*) $ https: //% http_host% request_uri [l, r = 301] |
Dans cet exemple, «RewriteCond» vérifie si HTTPS est déjà activé, tandis que «REWRITRE» Redirige tout le trafic non-HTTPS vers HTTPS.
Limiter les téléchargements de fichiers
Les téléchargements de fichiers sont une source courante de vulnérabilités de sécurité, car elles peuvent être utilisées pour télécharger des fichiers malveillants sur votre serveur. Pour éviter cela, vous pouvez utiliser .htaccess pour limiter la taille et les types de fichiers qui peuvent être téléchargés.
Pour limiter les téléchargements de fichiers dans .HTACCESS, vous pouvez utiliser la directive «php_value». Voici un exemple:
php_value upload_max_filesize1 | php_value upload_max_filesize |
Dans cet exemple, "Php_value" Définit la taille maximale du fichier pour les téléchargements à 10 Mo. Vous pouvez également utiliser le "Php_flag" Directive pour désactiver certains types de fichiers en étant complètement téléchargés, comme ceci:
PHP_FLAG MOTEUR OFF1 | PHP_FLAG MOTEUR OFF |
Dans cet exemple, "Moteur PHP_FLAG OFF" désactive le téléchargement des scripts PHP.
Désactiver les listes de répertoires
Par défaut, les serveurs Web affichent une liste de fichiers dans un répertoire en cas de fichier par défaut (comme index.html) est trouvé. Cela peut être un risque de sécurité, car il peut révéler le contenu des répertoires sensibles.
Pour désactiver les listes de répertoires dans .HTACCESS, vous pouvez utiliser la directive «Options». Voici un exemple:
Options - Indexes1 | Options - Indexes |
Dans cet exemple, «Options-indexes» désactive les listes de répertoires pour le répertoire actuel et tous ses sous-répertoires.
Empêcher Hotlinking
Hotlinking est la pratique de la liaison à des images, des vidéos ou d'autres fichiers hébergés sur votre serveur à partir d'un autre site Web. Cela consomme non seulement votre bande passante, mais peut également entraîner une violation du droit d'auteur si le contenu en liaisé est protégé par le droit d'auteur.
Pour empêcher le hotlinking dans .HTACCESS, vous pouvez utiliser les directives «RewriteConDond» et «Rewriterule». Voici un exemple:
Réécriture sur reWriteCond% http_referer !^ $ RewriteCond% http_referer !^ http (s)?: // (www \.)?ton domaine.com [nc] réécriture \.(jpg | jpeg | png | gif) $ - [nc, f, l]1234 | Réécriture sur levritecond% http_referer !^ $ RewriteCond% http_referer !^ http (s)?: // (www \.)?ton domaine.com [nc] réécriture \.(jpg | jpeg | png | gif) $ - [nc, f, l] |
Dans cet exemple, «RewriteConD» vérifie si le site Web de référence est votre propre domaine, tandis que «Rewriterule» renvoie une erreur interdite 403 pour toutes les demandes de fichiers d'image à partir d'autres domaines.
Protéger contre les scripts croisés (XSS)
Les scripts croisés (XSS) sont un type de vulnérabilité de sécurité qui permet aux attaquants d'injecter du code malveillant dans votre site Web, souvent via des formulaires ou d'autres champs d'entrée.
Pour protéger contre XSS dans .HTACCESS, vous pouvez utiliser la directive «En-tête» pour définir l'en-tête «X-XSS-Protection». Voici un exemple:
En-tête définit x-xss-protection "1; mode = bloc"1 | En-tête définit x-xss-protection "1; mode = bloc" |
Dans cet exemple, "Entête" Définit le «X-XSS-Protection» se soumettre à "1; mode = bloc ”, qui indique aux navigateurs de bloquer toutes les pages contenant des attaques XSS suspectées.
Définir une politique de sécurité du contenu stricte (CSP)
La politique de sécurité du contenu (CSP) est une fonctionnalité de sécurité qui aide à prévenir les scripts croisés (XSS), le clickjacking et d'autres types d'attaques en spécifiant quelles sources de contenu peuvent être chargées par une page Web.
Pour définir un CSP strict dans .HTACCESS, vous pouvez utiliser la directive «En-tête» pour définir l'en-tête «Content-Security-Policy». Voici un exemple:
En-tête Définissez le contenu-Security-Policy "Default-Src 'self"; script-src' self "danget-in-inline"; style-src 'self "dangere-inline" "1 | En-tête Définissez le contenu-Security-Policy "Default-Src 'self"; script-src' self "danget-in-inline"; style-src 'self "dangere-inline" " |
Dans cet exemple, "Entête" Définit le «Contenu-sécurité-politique» En-tête vers une politique stricte qui n'autorise que le contenu du domaine actuel et des scripts et styles en ligne.
Mettre à jour et surveiller régulièrement votre .fichier htaccess
Enfin, il est important de mettre à jour et de surveiller régulièrement votre .Fichier HTACCESS pour s'assurer qu'il reste sécurisé et efficace. Cela comprend la vérification des directives obsolètes ou vulnérables, la suppression des règles inutilisées ou inutiles, et la révision régulière de vos journaux de serveur pour des signes d'activité suspecte.
En suivant ces meilleures pratiques, vous pouvez utiliser .HTACCESS pour améliorer considérablement la sécurité de votre site Web et protéger contre les menaces de sécurité communes. Cependant, il est important de garder à l'esprit que .htaccess n'est qu'un des nombreux
- « Comment gérer les erreurs de chaîne de requête en javascript
- Comment activer le mode débogage dans Laravel pour des environnements spécifiques »