Qu'est-ce qui fait une directive Apache Satisfy?

Je suis tombé sur

httpd.conf

La directive, que je ne peux pas comprendre:

<files "^\.ht"="" ~="">
Order allow,deny
Deny from all
Satisfy All
</files>

Selon
http://httpd.apache.org/docs/2 ... tisfy
, je dirais que

Satisfy

n'a aucun effet parce qu'il n'y a pas

Allow

. J'avais tort? Que pensez-vous que cette directive fait?
Invité:

Dominique

Confirmation de:

TL; DR;

Dans la plupart des cas, cette ligne n'a pas besoin, puisque

Satisfy All

est un

d'habitude

Définition du serveur par défaut.

Si un

Dans ce cas, la ligne n'est pas strictement nécessaire.

La chaîne est ajoutée sous forme de sécurité supplémentaire: "Juste au cas où" le serveur a été configuré pour une utilisation.

Satisfy Any

Installation par défaut.

Si le serveur a été spécifiquement configuré en utilisant

Satisfy Any

Installation, vous êtes définitivement

vouloir

Pour remplacer ce paramètre, allumer

Satisfy All

Directive pour protéger des fichiers tels que

.htaccess

.

Je ne suis pas sûr que le fichier htaccess Représente la directive sur le serveur par défaut «Satisfy» Pour tous les dossiers dans le fichier spécifié htaccess ou ci-dessous.

Pour un code commun affiché sur Internet, surtout quand il vous dit comment protéger

.htaccess

des dossiers

L'affiche est responsable, car elle ne fait aucune hypothèse sur les paramètres de votre serveur, pouvant saper la sécurité du document.

L'inclusion de cette chaîne "optionnelle" garantit que vos fichiers htacess Un paramètre plus sûr sera appliqué. L'ajout d'une directive provoque le fonctionnement du bloc de code 100% temps au lieu de laisser des fichiers aléatoires htaccess Pour un petit ensemble de serveurs configurés différemment.

Selon
https://httpd.apache.org/docs/ ... tisfy
:


Satisfy Any|All

:

En tant que restrictions d'accès basées sur l'hôte, une authentification basée sur le mot de passe peut être mise en œuvre simultanément. Dans ce cas, la directive Satisfy Utilisé pour déterminer comment les deux séries de restrictions interagissent.

... utilisé dans

<directory>

,

<files>

, et

<location>

Sections aussi

.htaccess

Cette directive n'est utile que si l'accès à une zone spécifique est limité comme nom d'utilisateur / Adresse de mot de passe et hôte client. Dans ce cas, le comportement par défaut (Tout) Il est d'exiger que le client se limite à l'accès à l'adresse et entré le nom d'utilisateur et le mot de passe réels. Avec option Any Le client recevra un accès s'il dépasse la restriction hôte ou entre le nom d'utilisateur et le mot de passe actuels.

Depuis la valeur par défaut

d'habitude

est un

Satisfy All

(La seule autre option -

Satisfy Any

), Vous ne remarquerez peut-être pas la différence si vous activez cette directive. Cependant, votre fichier de configuration de serveur (ou? Peut-être un fichier .htaccess Dans le catalogue des parents ?? - Je ne suis pas sûr que si c'est possible ou non) Peut remplacer le serveur par défaut. En tout cas, ajouter

Satisfy All

La directive fournit constamment des mesures de sécurité appropriées.

Y compris

Satisfy All

Directive, vous fournissez un niveau de sécurité plus élevé pour ces fichiers, quelle que soit la configuration de votre configuration du serveur.

Le lien vers le document mentionne certaines options d'utilisation lorsque vous pouvez utiliser à la place.

Satisfy Any

.
</location></files></directory>

Hannah

Confirmation de:

Comme je ne peux pas commenter, j'ajouterai ici que la réponse @SherylHohman - la meilleure réponse parce qu'il

est un

Important pour une sécurité supplémentaire. Ainsi, techniquement incorrect de dire que sans lui, il ne fonctionne pas (Contrairement à la réponse acceptée), Depuis que vous

Toujours

Il est nécessaire de prendre en compte le reste de la configuration du serveur. Cependant, je voudrais ajouter à la réponse @SherylHohman:

Fichier de configuration du serveur (par exemple,

/etc/httpd/conf/httpd.conf

) pourrait avoir un plus généralisé

Satisfy Any

déclaration. Par exemple, il est important car quelqu'un peut avoir besoin du nom d'utilisateur / Mot de passe pour accéder à tous les sites de votre serveur (Par exemple, à travers

Require group [name

), Puis permettre de contourner une adresse IP spécifique ou un ensemble d'adresses IP à travers

Allow from [ip]

, Par conséquent, si cela manquait,

.htaccess

sera ouvert parce que

Satisfy Any

Je devrais déclarer.

Répertoires

sur ou supérieur

spécifique

.htaccess

Le fichier n'affectera pas

Si seulement

Ils

<files>

section qui est également spécifiquement conforme

.htaccess

qui redéfinira ensuite cette règle avec la configuration du serveur, contenant également le nécessaire

AllowOverride

Directif (par exemple,

Limit

ou

All

). Je dis que ça devrait être

<file>

Parce que c'est ce qui est utilisé dans la configuration du serveur, et ils sont traités après

<directory>

niveau (celles. niveau de racine

.htaccess

). C'est parce que
http://kypros.org/manual/sections.html
Et il me semble que

.htaccess

Bien sûr traité après la configuration du serveur.
</directory></file></files>

Alice

Confirmation de:

Je serais d'accord avec vous, la satisfaction de tout ne fait rien - Sans cela, ces fichiers seraient toujours interdits.

Pour répondre aux questions, connectez-vous ou registre