Hôte virtuel - Sécurité
Table des matières
Protection contre les attaques par force brute WordPress
Web Application Firewall (WAF)
Jeu de regles Web Application Firewall (WAF)
Protection CAPTCHA / Anubis
Conteneurs
Protection contre les hotlinks
Contrôle d'accès
Realms d'autorisation
- Nom du Realm
- Type de BD
- Emplacement de la BD d'utilisateurs
- Attribut de mot de passe
- Attribut Member-of
- Taille max. du cache de BD d'utilisateurs
- Délai d'expiration du cache de la BD d'utilisateurs (secs)
- Emplacement de la BD de groupes
- Attribut de membre de groupe
- Taille max. du cache de BD de groupes
- Délai d'expiration du cache de la base de données de groupes (secs)
- DN de liaison LDAP
- Mot de passe de liaison LDAP
Mode de protection
Description
Indique l'action a effectuer lorsque la limite indiquee des tentatives de connexion autorisees est atteinte dans les 5 minutes.
Limiter ralentit progressivement la vitesse de reponse du serveur, Abandonner coupe la connexion sans reponse, Refuser renvoie une reponse 403, et CAPTCHA ou abandon redirige vers CAPTCHA si la protection CAPTCHA est activee, sinon coupe la connexion.
Protection complète CAPTCHA de connexion WP peut aussi etre selectionne. Ce parametre redirigera vers CAPTCHA si la protection CAPTCHA est activee, quelle que soit la limite des tentatives de connexion autorisees, et utilisera Limiter comme solution de repli sinon.
Valeurs par defaut :
Niveau serveur : Limiter
Niveau VH : Heriter du parametre du niveau serveur. Si le niveau serveur est defini sur Disable, Limiter sera utilise.
Syntaxe
Sélectionner dans la liste déroulante
Conseils
Sécurité Les IP ou sous-reseaux de confiance ne sont pas affectes.
Information Cette fonction est activee par defaut (Throttle) et ne necessite aucune autre configuration dans l'interface WebAdmin ni dans les configurations Apache.
Information Ce parametre remplacera le parametre Apache conf WordPressProtect pour LSWS uniquement. Apache ne sera pas affecte.
Information Cela peut etre defini au niveau serveur et remplace au niveau de l'hote virtuel. Si ce n'est pas remplace au niveau de l'hote virtuel, ce parametre peut aussi etre remplace dans le fichier .htaccess du docroot d'un utilisateur avec la directive de configuration Apache WordPressProtect et la valeur 0 (desactive), 1 (utiliser le parametre du niveau serveur), throttle, deny ou drop.
Tentatives de connexion autorisées
Description
Indique le nombre maximal de tentatives POST wp-login.php et xmlrpc.php autorisees par IP dans les 5 minutes avant que l'action indiquee dans Mode de protection soit effectuee.
Cette limite est geree avec un systeme de quota ou tentatives restantes = limite. Chaque tentative POST diminue le nombre de tentatives restantes de 1, et le nombre de tentatives restantes remonte avec le temps jusqu'a la limite definie. Une IP sera limitee lorsque le nombre de tentatives restantes pour cette IP descend a 1/2 de la limite definie, avec un ralentissement accru lorsque les tentatives restantes passent sous la marque 1/2. Lorsque les tentatives restantes atteignent 0, l'action indiquee est appliquee a l'IP.
De plus, si Activer CAPTCHA est aussi active, une protection supplementaire par worker sera ajoutee. Si wp-login.php et xmlrpc.php sont visites par le meme worker a un rythme de 4x la limite definie dans une fenetre de 30 secondes, ces URL seront placees en mode CAPTCHA jusqu'a ce que le nombre de visites de ces fichiers diminue.
Reinitialiser le serveur effacera les IP bloquees.
Valeurs par defaut :
Niveau serveur : 10
Niveau VH : Heriter du parametre du niveau serveur
Syntaxe
Plage valide : 3 - 1000.
Exemple
Apres la premiere tentative POST, le quota est reduit a 9.
Le quota diminue de 1 pour chaque tentative POST.
Lorsque le quota atteint la moitie de la limite (5), l'IP sera ralentie.
Le ralentissement s'aggravera a chaque tentative POST.
Lorsque le quota atteint 0, la connexion sera coupee.
Conseils
Sécurité Les IP ou sous-reseaux de confiance ne sont pas affectes.
Information Ce parametre remplacera le parametre Apache conf WordPressProtect pour LSWS uniquement. Apache ne sera pas affecte.
Information Cela peut etre defini au niveau serveur et remplace au niveau de l'hote virtuel. Si ce n'est pas remplace au niveau de l'hote virtuel, ce parametre peut aussi etre remplace dans le fichier .htaccess du docroot d'un utilisateur avec la directive de configuration Apache WordPressProtect et une valeur entiere entre 3 et 1000.
Activer WAF
Description
Indique s’il faut activer l’inspection approfondie du contenu des requêtes. Cette fonctionnalité équivaut à mod_security d’Apache, qui peut servir à détecter et bloquer les requêtes malveillantes en les comparant à des signatures connues.
Syntaxe
Sélectionner avec les boutons radio
Niveau de journalisation
Description
Indique le niveau de detail de la sortie de debogage du moteur Web Application Firewall. Cette valeur va de 0 a 9. 0 desactive la journalisation. 9 produit le journal le plus detaille. Le journal d'erreurs du serveur et de l'hote virtuel Niveau de journalisation doit etre defini au moins sur INFO pour que cette option prenne effet. Ceci est utile lors du test des regles de filtrage de requetes.
Syntaxe
Nombre entier
Voir aussi
Server Niveau de journalisation, Virtual Host Niveau de journalisation
Action par défaut
Description
Indique les actions par défaut à effectuer lorsqu’une règle de censure correspond. La valeur par défaut est deny,log,status:403, ce qui signifie refuser l’accès avec le code d’état 403 et enregistrer l’incident dans le journal des erreurs.
Syntaxe
Chaîne. Cette chaîne d’action est compatible avec la syntaxe de mod_security d’Apache. Consultez le manuel de mod_security pour plus de détails.
Voir aussi
Analyser le corps de requête
Description
Indique s’il faut vérifier le corps d’une requête HTTP POST. La valeur par défaut est "No".
Syntaxe
Sélectionner avec les boutons radio
Jeu de regles Web Application Firewall (WAF)
Description
Les regles configurees ici ne fonctionnent que pour les hotes virtuels configures avec une configuration native LSWS, pas pour les hotes virtuels utilisant Apache httpd.conf.
Nom
Description
Attribue un nom à un groupe de règles de censure. Uniquement pour l’affichage.
Syntaxe
Chaîne
Action du jeu de regles
Description
Indique les actions a effectuer lorsqu'une regle de censure du jeu de regles actuel correspond. Si non defini, Action par défaut sera utilise.
Syntaxe
Chaine. Cette chaine d'action utilise la meme syntaxe que la directive Apache mod_security SecDefaultAction .
Activé
Description
Indique s’il faut activer ce jeu de règles. Avec cette option, un jeu de règles peut être rapidement activé ou désactivé sans être ajouté ni supprimé. La valeur par défaut est "Yes".
Syntaxe
Sélectionner avec les boutons radio
Définition des règles
Description
Indique une liste de regles de censure.
Si vous utilisez un fichier de configuration Apache, vous devez configurer les regles dans httpd.conf. Les regles definies ici n'auront aucun effet.
Syntaxe
Chaine. La syntaxe des regles de censure suit celle des directives mod_security d'Apache. "SecFilter", "SecFilterSelective" et "SecRule" peuvent etre utilisees ici. Vous pouvez copier-coller des regles de securite depuis un fichier de configuration Apache.
Pour plus de details sur la syntaxe des regles, consultez la documentation Mod Security.
Conseils
Information Les regles configurees ici ne fonctionnent que pour les vhosts configures dans une configuration native LSWS, pas pour les vhosts provenant d'Apache httpd.conf.
Protection CAPTCHA / Anubis
Description
Les protections CAPTCHA/Anubis sont des services permettant d'atténuer une charge serveur élevée. Selon la situation, les requêtes sont redirigées vers une page de validation CAPTCHA ou envoyées à un serveur backend Anubis configuré.
La protection CAPTCHA s'active lorsque l'une des situations suivantes se produit. Une fois active, toutes les requêtes des clients NON TRUSTED (selon la configuration) sont redirigées vers une page de validation CAPTCHA. Après validation, le client est redirigé vers la page demandée.
1. Le nombre de requêtes simultanées du serveur ou du virtual host dépasse la limite de connexions configurée.
2. Anti-DDoS est activé et un client accède à une URL de manière suspecte. Lors du déclenchement, le client est d'abord redirigé vers CAPTCHA au lieu d'être refusé.
3. La protection contre les attaques par force brute WordPress est activée et l'action est définie sur 'CAPTCHA or Drop'. Lorsqu'une attaque est détectée, le client est d'abord redirigé vers CAPTCHA. Après avoir atteint Max Tries, la connexion est interrompue conformément à l'option 'drop'.
4. La protection contre les attaques par force brute WordPress est activée et l'action est définie sur 'WP Login CAPTCHA Full Protection'. Le client est toujours redirigé d'abord vers CAPTCHA.
5. Un nouvel environnement de règle de rewrite permet d'activer CAPTCHA via RewriteRules. 'verifycaptcha' peut être défini pour rediriger les clients vers CAPTCHA. La valeur spéciale ': deny' peut être définie pour refuser un client après trop d'échecs. Par exemple, [E=verifycaptcha] redirige toujours vers CAPTCHA jusqu'à la validation. [E=verifycaptcha: deny] redirige vers CAPTCHA jusqu'à ce que Max Tries soit atteint, après quoi le client est refusé.
Activer la protection
Description
Active ou desactive individuellement les fonctions de protection CAPTCHA/Anubis.
La valeur par defaut est Inherit Server level settings
Syntaxe
Sélectionner avec des cases à cocher
Sensibilité de déclenchement
Description
Sensibilite automatique de CAPTCHA/Anubis. Plus la valeur est elevee, plus la protection CAPTCHA/Anubis sera susceptible d'etre utilisee. Une valeur de 0 equivaut a "Off" tandis qu'une valeur de 100 equivaut a "Always On".
Valeurs par defaut :
Niveau serveur : 0
Niveau hote virtuel : Heriter du parametre du niveau serveur
Syntaxe
Valeur entiere entre 0 et 100.
Limite de requêtes simultanées
Description
Nombre de requetes concurrentes necessaire pour activer CAPTCHA. CAPTCHA continuera d'etre utilise jusqu'a ce que le nombre de requetes concurrentes tombe sous cette valeur.
La valeur par defaut est 15000.
Syntaxe
Nombre entier
Conteneur Bubblewrap
Description
Définissez sur Activé si vous souhaitez lancer les processus CGI (y compris les programmes PHP) dans un sandbox bubblewrap. Voir https://wiki.archlinux.org/title/Bubblewrap pour plus de détails sur l’utilisation de bubblewrap. Bubblewrap doit être installé sur votre système avant d’utiliser ce réglage.
Ce réglage ne peut pas être activé au niveau virtual host s’il est défini sur "Disabled" au niveau serveur.
Valeurs par défaut:
Niveau serveur: Disabled
Niveau VH: Hériter du réglage de niveau serveur
Syntaxe
Sélectionner dans la liste déroulante
Conteneur Namespace
Description
Définissez sur Activé si vous souhaitez lancer les processus CGI (y compris les programmes PHP) dans un sandbox de conteneur namespace. Utilisé uniquement lorsque Conteneur Bubblewrap est défini sur Désactivé.
Lorsque ce réglage n’est pas Désactivé au niveau serveur, sa valeur peut être remplacée au niveau virtual host.
Valeurs par défaut:
Niveau serveur: Désactivé
Niveau virtual host: Hériter du réglage de niveau serveur
Syntaxe
Sélectionner dans la liste déroulante
Fichier de modèle Namespace supplémentaire
Description
Chemin vers un fichier de configuration existant contenant une liste de repertoires a monter ainsi que les methodes utilisees pour les monter. Si Fichier de modèle Namespace est aussi defini au niveau Serveur, les deux fichiers seront utilises.
Syntaxe
Un chemin pouvant être absolu, relatif à $SERVER_ROOT ou relatif à $VH_ROOT.
Protection contre les hotlinks
Description
Les hotlinks sont des requetes faites depuis un site web externe vers des fichiers de votre propre site web, souvent appelees "leeching". Cette pratique introduit une utilisation supplementaire de bande passante dont vous ne devriez pas etre responsable.
LiteSpeed web server peut empecher les autres de faire du hotlink vers le contenu de votre site web en verifiant l'en-tete Referer dans une requete HTTP. Si l'en-tete Referer ne correspond pas a votre site web, la requete sera refusee.
Activer la protection hotlink
Description
Indique s’il faut activer la protection hotlink.
Syntaxe
Sélectionner avec les boutons radio
Suffixes
Description
Indique quels types de fichiers seront proteges contre le hotlinking en listant les suffixes de fichier.
Syntaxe
Liste separee par des virgules. "." est interdit
URL de redirection
Description
Indique une URL vers laquelle un utilisateur sera redirige lorsqu'une action de hotlinking est detectee. Vous pouvez rediriger les utilisateurs vers une image ou une page indiquant que le hotlinking n'est pas autorise. Si elle n'est pas indiquee, 403 Forbidden sera renvoye.
Syntaxe
URL absolue
Autoriser l'accès direct
Description
Indique s’il faut autoriser l’acces direct sans referrer. Un en-tete referrer identifie la page web qui a cree le lien vers la page actuelle. Il n’y a pas d’en-tete "referrer" dans les requetes HTTP lorsqu’un utilisateur saisit directement une adresse dans la barre d’adresse ou utilise une fonction comme "save target link as".
Syntaxe
Sélectionner avec les boutons radio
Référence interne uniquement
Description
Indique s’il faut autoriser uniquement les references provenant du site web actuel lui-meme. Lorsque la valeur est Oui, Domaines autorisés n’a aucun effet et aucun autre site web ne peut creer de lien vers les fichiers proteges. Cela peut etre pratique si vous souhaitez garer plusieurs noms de domaine sur le site web actuel.
Syntaxe
Sélectionner avec les boutons radio
Domaines autorisés
Description
Indique quels sites web peuvent creer des liens vers le contenu protege.
Syntaxe
Liste de noms de domaine separes par des virgules.
Domaines correspondant à REGEX
Description
Indique les sites web qui peuvent creer des liens vers le contenu protege au moyen d’expressions regulieres. L’expression reguliere correspondra uniquement au nom de domaine, et non a l’URL complete.
Syntaxe
Expressions regulieres
Exemple
Contrôle d'accès
Description
Indique quels sous-reseaux et/ou adresses IP peuvent acceder au serveur. Au niveau serveur, ce reglage affectera tous les virtual hosts. Vous pouvez aussi configurer un controle d'acces propre a chaque virtual host au niveau virtual host. Les reglages de niveau virtual host NE remplaceront PAS les reglages de niveau serveur.
Le blocage/l'autorisation d'une IP est determine par la combinaison de la liste autorisee et de la liste refusee. Si vous voulez bloquer seulement certaines IP ou sous-reseaux, mettez * ou ALL dans Liste autorisée et listez les IP ou sous-reseaux bloques dans Liste refusée. Si vous voulez autoriser seulement certaines IP ou sous-reseaux, mettez * ou ALL dans Liste refusée et listez les IP ou sous-reseaux autorises dans Liste autorisée. Le reglage de la portee la plus petite correspondant a une IP sera utilise pour determiner l'acces.
Niveau serveur: Les IP ou sous-reseaux de confiance doivent etre specifies dans Liste autorisée en ajoutant un "T" final. Les IP ou sous-reseaux de confiance ne sont pas affectes par les limites de connexion/throttling. Seul le controle d'acces au niveau serveur peut configurer des IP/sous-reseaux de confiance.
Conseils
Sécurité Utilisez ceci au niveau serveur pour les restrictions generales qui s'appliquent a tous les virtual hosts.
Liste autorisée
Description
Spécifie la liste des IP ou sous-réseaux autorisés. * ou ALL sont acceptés.
Syntaxe
Liste d’adresses IP ou de sous-réseaux délimitée par des virgules. Un "T" final peut être utilisé pour indiquer une IP ou un sous-réseau de confiance, comme 192.168.1.*T.
Exemple
Adresses IPv6: ::1 ou [::1]
Sous-réseaux IPv6: 3ffe:302:11:2:20f:1fff:fe29:717c/64 ou [3ffe:302:11:2:20f:1fff:fe29:717c]/64
Conseils
Sécurité Les IP ou sous-réseaux de confiance définis dans le contrôle d’accès au niveau serveur seront exclus des limites de connexion/throttling.
Liste refusée
Description
Spécifie la liste des IP ou sous-réseaux non autorisés.
Syntaxe
Liste d’adresses IP ou de sous-réseaux délimitée par des virgules. * ou ALL sont acceptés.
Exemple
Adresses IPv6: ::1 ou [::1]
Sous-réseaux IPv6: 3ffe:302:11:2:20f:1fff:fe29:717c/64 ou [3ffe:302:11:2:20f:1fff:fe29:717c]/64
Realms d'autorisation
Description
Liste tous les realms d'autorisation pour ce virtual host. Les realms d'autorisation servent a empecher les utilisateurs non autorises d'acceder aux pages web protegees. Un realm est un repertoire d'utilisateurs contenant des noms d'utilisateur et des mots de passe, avec des classifications de groupe facultatives. L'autorisation est effectuee au niveau du contexte. Comme differents contextes peuvent partager le meme realm (base de donnees utilisateur), les realms sont definis separement des contextes qui les utilisent. Vous pouvez faire reference a un realm par ces noms dans la configuration du contexte.
Type de BD
Description
Indique comment les donnees utilisateur/groupe sont stockees pour un realm d’autorisation. Actuellement, les donnees utilisateur/groupe peuvent etre stockees dans des fichiers plats ou sur un serveur LDAP.
Syntaxe
Sélectionner dans la liste déroulante
Emplacement de la BD d'utilisateurs
Description
Indique l’emplacement de la base de donnees utilisateur. Il est recommande de stocker la base de donnees sous le repertoire $SERVER_ROOT/conf/vhosts/$VH_NAME/.
Pour le type de DB Password File, il s’agit du chemin vers le fichier plat contenant les definitions utilisateur/mot de passe. Vous pouvez modifier ce fichier via la console WebAdmin en cliquant sur le nom du fichier.
Chaque ligne du fichier utilisateur contient un nom d’utilisateur suivi de deux-points, puis d’un mot de passe chiffre par crypt(), eventuellement suivi de deux-points et des noms de groupe auxquels l’utilisateur appartient. Les noms de groupe sont separes par des virgules. Si les informations de groupe sont indiquees dans la base de donnees utilisateur, la base de donnees groupe ne sera pas verifiee.
Exemple:
john:HZ.U8kgjnMOHo:admin,user Syntaxe
Chemin vers le fichier de DB utilisateur.
Conseils
Sécurité Il est recommande de stocker les fichiers de mots de passe utilisateur hors de l'arborescence des documents. Si un fichier de mots de passe utilisateur doit etre place dans l'arborescence des documents, nommez-le simplement avec un prefixe ".ht" comme .htuser pour eviter qu'il soit servi comme fichier statique. LiteSpeed Web Server ne sert pas les fichiers prefixes par ".ht".
Voir aussi
Emplacement de la BD de groupes, Attribut de mot de passe, Attribut Member-of
Attribut de mot de passe
Description
Indique le nom de l’attribut de mot de passe pour un enregistrement utilisateur stocke sur un serveur LDAP. La valeur par defaut est userPassword.
Syntaxe
chaine
Attribut Member-of
Description
Indique le nom de l’attribut "Member-of" pour un enregistrement utilisateur stocke sur un serveur LDAP. La valeur par defaut est memberOf. L’attribut "Member-of" peut etre utilise pour indiquer le nom du groupe auquel l’utilisateur appartient.
Syntaxe
chaine
Taille max. du cache de BD d'utilisateurs
Description
Indique la taille maximale du cache de la base de donnees utilisateur. Les donnees d’authentification utilisateur recemment consultees seront mises en cache en memoire afin de fournir des performances maximales.
Syntaxe
Nombre entier
Conseils
Performance Comme un cache plus grand consommera plus de memoire, une valeur plus elevee peut ou non fournir de meilleures performances. Definissez une taille appropriee selon la taille de votre base de donnees utilisateur et l’utilisation du site.
Délai d'expiration du cache de la BD d'utilisateurs (secs)
Description
Indique la frequence a laquelle la base de donnees utilisateur backend sera verifiee pour detecter des changements. Chaque entree du cache possede un horodatage. Lorsque les donnees mises en cache sont plus anciennes que le timeout indique, la base de donnees backend sera verifiee. S’il n’y a pas de changement, l’horodatage sera reinitialise a l’heure actuelle; sinon les nouvelles donnees seront chargees. Le rechargement du serveur et le graceful restart videront le cache immediatement.
Syntaxe
Nombre entier
Conseils
Performance Si la base de donnees backend ne change pas souvent, definissez un timeout plus long pour de meilleures performances.
Emplacement de la BD de groupes
Description
Indique l’emplacement de la base de donnees groupe. Il est recommande de stocker la base de donnees sous le repertoire $SERVER_ROOT/conf/vhosts/$VH_NAME/.
Les informations de groupe peuvent etre definies dans la base de donnees utilisateur ou dans cette DB groupe autonome. Pour l’authentification utilisateur, la DB utilisateur sera verifiee en premier. Si la DB utilisateur contient aussi des informations de groupe, la DB groupe ne sera pas verifiee.
Pour le type de DB Password File, l’emplacement de la DB groupe doit etre le chemin vers le fichier plat contenant les definitions de groupe. Vous pouvez modifier ce fichier via la console WebAdmin en cliquant sur le nom du fichier.
Chaque ligne d’un fichier de groupe doit contenir un nom de groupe suivi de deux-points, puis d’un groupe de noms d’utilisateur separes par des espaces. Exemple:
testgroup: user1 user2 user3 Syntaxe
Nom de fichier pouvant être un chemin absolu ou un chemin relatif à $SERVER_ROOT, $VH_ROOT.
Conseils
Sécurité Il est recommande de stocker un fichier de groupes hors de l'arborescence des documents. S'il doit etre place dans l'arborescence des documents, nommez-le simplement avec un prefixe ".ht" comme .htgroup, afin d'eviter que le fichier soit servi comme fichier statique. LiteSpeed Web Server ne sert pas les fichiers prefixes par ".ht".
Voir aussi
Emplacement de la BD d'utilisateurs, Context Require (utilisateurs/groupes autorisés), Attribut de membre de groupe
Attribut de membre de groupe
Description
Indique le nom de l’attribut "Member" pour un enregistrement de groupe stocke sur un serveur LDAP. La valeur par defaut est memberUid.
Syntaxe
chaine
Taille max. du cache de BD de groupes
Description
Indique la taille maximale du cache de la base de donnees groupe.
Syntaxe
Nombre entier
Conseils
Performance Comme un cache plus grand consommera plus de memoire, une valeur plus elevee peut ou non fournir de meilleures performances. Definissez une taille appropriee selon la taille de votre base de donnees utilisateur et l’utilisation du site.
Voir aussi
Délai d'expiration du cache de la base de données de groupes (secs)
Description
Indique la frequence a laquelle la base de donnees groupe backend sera verifiee pour detecter des changements. Pour plus de details, consultez Délai d'expiration du cache de la BD d'utilisateurs (secs).
Syntaxe
Nombre entier
Voir aussi
DN de liaison LDAP
Description
Indique un DN utilise pour se lier au serveur. Si le serveur LDAP exige une authentification, un DN de liaison et un mot de passe doivent etre indiques. S’il n’est pas indique, une liaison anonyme sera utilisee.
Syntaxe
chaine