Apache 2.4 - Vhost - Restreindre l'accès à un site sauf pour certaines IP

Il est facile sous apache de restreindre l'accès à un site dans un virtual host via l'instruction Require valid-user.

Exemple :

         <Directory "/home/monsite/web">
                AuthType Basic
                AuthName "Restricted Content"
                AuthUserFile /home/monsite/htpasswd-preprod
                Require valid-user
                AllowOverride All
                Options -Indexes +FollowSymLinks +MultiViews
        </Directory>

Mais dans certains cas, on veut autoriser certaines ip à accéder au site sans authentification "htpasswd", dans le cas de retour de brique de paiement, ou de webservice, dans ce cas on peut utiliser la forme suivante :

         <Directory "/home/monsite/web">
                AuthType Basic
                AuthName "Restricted Content"
                AuthUserFile /home/monsite/htpasswd-preprod
                <RequireAny>
                        Require valid-user
                        Require ip 194.01.01.0/24 #autorisation d'une range d'ip
                        Require ip 134.0.0.1 #autorisation d'une ip unique
                </RequireAny>
                AllowOverride All
                Options -Indexes +FollowSymLinks +MultiViews
        </Directory>

Ainsi les accès provenant d'autres parties que l'ip définie ou le range d'ip se verront présenter l'authentification via le htpasswd défini.

Ajouter un commentaire

Ne sera pas publié
CAPTCHA
Désolé, pour ça, mais c'est le seul moyen pour éviter le spam...