BoZoN icon indicating copy to clipboard operation
BoZoN copied to clipboard

Configuration Nginx pour la sécurité

Open Arno0x opened this issue 8 years ago • 8 comments

Salut,

L'ensemble de la sécurité de protection d'accès aux fichiers fonctionne sur des .htaccess. De plus en plus de gens utilise nginx (tiens, j'en fait partie :-).

Il serait sympa de proposer:

  1. A minima, un warning pour les gens sous nginx qui ne se rendront peut-être même pas compte que leurs ressources sont exposées (par défaut dans la version actuelle)
  2. Au mieux, la configuration nginx à rajouter (Exemple: location /bozon/ { [...] } ) pour protéger les bons répertoires avec les bons droits.

Merci.

Arno0x avatar Feb 06 '16 12:02 Arno0x

Oui, tu as raison. Pour tout dire, j'y ai pensé, mais comme je n'utilise pas nginx, je ne me suis pas penché sur la config... Faudra que je regarde ça rapidement (si tu te sens de faire la modif, tu es le bienvenu ^^ ) Merci !

broncowdd avatar Feb 13 '16 09:02 broncowdd

Voilà une configuration nginx qui semble fonctionner pour moi tout en protégeant les dossiers sensibles (en s'inspirant des .htaccess):

location /bozon/ {
        location ~ (uploads|private|thumbs) {
                deny all;
        }
        location ~ core {
                deny all;
                location ~* \.js$ {
                        allow all;
                }
        }
}

Arno0x avatar Feb 14 '16 13:02 Arno0x

Salut,

Juste pour confirmer que la configuration donnée par Arno0x fonctionne bien. Et ça évite de tomber dans le piège de l'exclusion des .htaccess qui bloque les fichiers *.js.

À intégrer à la doc ?

MouTonLibre avatar May 04 '16 08:05 MouTonLibre

Salut, voici la configuration que j'utilise pour un serveur yunohost https://github.com/ewilly/bozon_ynh/blob/master/conf/nginx.conf

ewilly avatar May 06 '16 06:05 ewilly

Merci à tous, je l'ajouterai dans la doc et sur le site ^^

broncowdd avatar May 09 '16 07:05 broncowdd

Salut,

Alors juste pour signaler que la configuration donnée par Arno0x entraîne un problème lors du téléchargement des dossiers (création d'un zip dans un dossier temporaire puis envoi du lien au client). En effet, la permission d'accès à ce dossier temporaire n'est pas donnée. Donc voici ma nouvelle configuration :

location / {
    location ~ (uploads|thumbs) {
        deny all;
    }
    location ~ core {
        deny all;
        location ~* \.js$ {
            allow all;
        }
    }
    location ~ private {
        deny all;
        location ~ temp {
            deny all;
            location ~* \.zip$ {
                allow all;
            }
        }
    }
}

MouTonLibre avatar May 21 '16 07:05 MouTonLibre

Celle-ci est parfaite. Tu peux peut-être ecrire plus simplement la dernière partie : location ~* /temp/.*\.zip$ { allow all; } c'est ce que j'ai mis en place pour la version yunohost de Bozon (https://github.com/YunoHost-Apps/bozon_ynh/blob/master/conf/nginx.conf)

ewilly avatar May 21 '16 07:05 ewilly

Ah merci ewilly !

Ton dernier lien (il y a 15 jours) était erroné et je n'ai donc pas pu voir ton fichier. Mais ça roule pour aujourd'hui ! :)

MouTonLibre avatar May 21 '16 07:05 MouTonLibre