Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/02/2018, à 19:14

oliver2004

[Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Bonjour,
Je suis sur le point de mettre en ligne un projet que j'avais jusqu'ici en réseau local, donc avec moins de préoccupations sécuritaires.
Du coup je me pose la question des droits à donner aux fichiers et dossiers car je lis un peu de tout sur le net, bref, on sait plus trop où se placer ensuite.
Bref, vous faites comment vous?

Dernière modification par oliver2004 (Le 25/02/2018, à 17:09)


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#2 Le 14/02/2018, à 20:54

Bigcake

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Bonjour,

J'imagine que l'utilisateur qui lance ton serveur web est www-data.
Ce que tu peux faire, c'est mettre root comme propriétaire de tes fichiers (plutôt que www-data) et donner les droits 444 (lecture seul) sur les fichiers, 555 (lecture+exec) sur les dossiers
Imaginons qu'un jour une faille soit utilisée sur ton serveur web , tes fichiers ne pourront pas être modifié par www-data.
C'est ce que j'ai fait sur mon serveur.

Dernière modification par Bigcake (Le 14/02/2018, à 20:55)


"Les gens" ne sont pas cons, ils ont été habitués à la facilité et à la désinformation. Le meilleur moyen de ne pas les aider, c'est de se moquer. Le meilleur moyen de les aider, c'est de les informer, encore et encore. La réflexion viendra. N'oubliez pas que vous aussi, vous êtes le con d'un autre.
Smartphone+GNU/Linux=Librem5

Hors ligne

#3 Le 15/02/2018, à 15:23

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Bonjour Bigcake
Merci,
Donc pour l'instant comme user, c'est moi, comme groupe c'est www-data.
Il me faudrait donc tout mettre à root, aussi bien user que groupe ? apache va pouvoir exécuter les scripts ?
Les droits des dossiers seraient réglés à 555 et les fichiers à 444.
Et pour les dossiers en écriture, quels seraient les droits ? 655 ?

Par contre, ça pose des problèmes pour les actus ? il faudrait que ce soir root qui fasse les updates en ligne de commande ou quelque chose du genre.


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#4 Le 15/02/2018, à 16:38

Bigcake

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Effectivement, tu peux aussi mettre ton utilisateur en tant que propriétaire.
Perso, je préfère root à l'utilisateur, ça fait un point d'attaque en moins.
Tout dépend de tes procédures de mise à jour des données, tes habitudes, etc....

Pour les dossiers en écriture, est ce que apache à besoin d'écrire ? si oui, tu peux ajouter le flag de 'sticky bit' qui permet a tout le monde d'écrire dans le dossier mais ne permet pas la modification de fichiers/dossiers qui ne lui appartient pas

chmod +t dossier/fichier

Sinon effectivement, 655.

Après tu peux t'amuser a créer un groupe système qui aura les droit d'écriture sur les fichiers, du coup, ce serai un chmod 565 ou 665 (si ton propriétaire ne fait pas partie du groupe)

Pour la question des scripts, je ne pourrai pas te dire, mon serveur HTTP n'en utilise pas.

En fait, y a plein de façon de faire qui sont tout aussi efficace/sécurisé, il faut juste que tu trouve celle qui te convienne le mieux à tes habitudes/procédures.

Dernière modification par Bigcake (Le 15/02/2018, à 16:44)


"Les gens" ne sont pas cons, ils ont été habitués à la facilité et à la désinformation. Le meilleur moyen de ne pas les aider, c'est de se moquer. Le meilleur moyen de les aider, c'est de les informer, encore et encore. La réflexion viendra. N'oubliez pas que vous aussi, vous êtes le con d'un autre.
Smartphone+GNU/Linux=Librem5

Hors ligne

#5 Le 15/02/2018, à 17:53

bruno

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Tu vas le mettre en ligne où ton site ? Si c'est du mutualisé la question ne se pose pas vraiment, si c'est un serveur dédié il faut nous expliquer ta configuration.
En l’absence de ces informations aucune réponse pertinente ne peut être donnée…

Hors ligne

#6 Le 15/02/2018, à 19:15

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

C'est sur un VPS avec IP dédiée, du coup, j'ai la main sur le serveur, ainsi que plusieurs sites hébergés dessus avec VirtualHosts.
J'ai plusieurs sites web que j'aimerais sécuriser également, de la même manière. J'ai conscience que ces sites actuellement en ligne n'est pas assez sécurisé, voire pas sécurisé... de là ma question pour mon extranet aux données sensibles mais également de façon plus générale pour les autres sites qui sont également hébergés sur le VPS.

Sinon, apparemment les possibilités sont vastes... compliqué tout ça. Il faut en fait faire des tests sur un dossier racine x


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#7 Le 15/02/2018, à 19:46

bruno

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Si tu as plusieurs sites l'idéal est d'avoir un utilisateur différent pour chaque site mais c'est une configuration un peu plus complexe.

Si tu as une installation « classique » apache + mod_php le mieux est d'avoir comme propriétaire et groupe www-data pour le dossier racine de site et tout ce qu'il contient, les droits suffisant sont rwx-r-x--- pour les dossiers et rw-r----- pour les fichiers.

Hors ligne

#8 Le 16/02/2018, à 14:22

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

bruno a écrit :

Si tu as plusieurs sites l'idéal est d'avoir un utilisateur différent pour chaque site mais c'est une configuration un peu plus complexe.

Si tu as une installation « classique » apache + mod_php le mieux est d'avoir comme propriétaire et groupe www-data pour le dossier racine de site et tout ce qu'il contient, les droits suffisant sont rwx-r-x--- pour les dossiers et rw-r----- pour les fichiers.

Bonjour bruno,
Merci pour le retour,
J'ai pas eu le temps de voir hier pour les tests mais je vais m'en occuper aujourd'hui.
Ma config est en effet la classique, apache + mod_php.
Donc je vois selon ta config que les utilisateurs autres que le propriétaire et le groupe n'ont même pas le visu sur les dossiers et fichiers.


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#9 Le 16/02/2018, à 14:38

bruno

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

L'idée c'est de donner les droits minimaux, seulement ceux qui sont strictement nécessaires.
Encore une fois je suis dans l'hypothèse où tous les fichiers du site appartiennent à l'utilisateur et au groupe www-data mais ce n'est peut-être pas le cas.
Les droits sont toujours différents pour les dossiers et les fichiers: x sur un dossier signifie que le dossier est accessible (on peut « entrer » dedans), x sur un fichier signifie qu'il est exécutable (tes fichiers n'ont pas à être exécutables).

Hors ligne

#10 Le 16/02/2018, à 18:35

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

bruno a écrit :

L'idée c'est de donner les droits minimaux, seulement ceux qui sont strictement nécessaires.
Encore une fois je suis dans l'hypothèse où tous les fichiers du site appartiennent à l'utilisateur et au groupe www-data mais ce n'est peut-être pas le cas.
Les droits sont toujours différents pour les dossiers et les fichiers: x sur un dossier signifie que le dossier est accessible (on peut « entrer » dedans), x sur un fichier signifie qu'il est exécutable (tes fichiers n'ont pas à être exécutables).

Ok, je comprends l'idée des droits minimaux. C'est en effet un bon point.
Mes dossiers racines ont tous un propriétaire différent, ils sont situés dans le /home avec un lien symbolique depuis /var/www/html/
Pour tester, j'ai réaliser une copie d'un WP hébergé sur mon VPS, qui est actuellement en ligne sans souci de connexion.
Le dossier racine du site de test à des droits comme ceci:

drw-r-s---  7 copie_de_test copie_de_test 4096 Feb 16 18:14 copie_de_test

Je ne comprends pas trop le "s" de drw-r-s--- , première fois que je vois ça ?
J'ai changé les droits récursivement avec cette commande:

find /home/copie_de_test -type d -print0 | xargs -0 chmod 2650

C'est pas le "2" de 2650 qui est en cause pour le "s" ?
Et pour les fichiers avec ceci:

find /home/copie_de_test -type f -print0 | xargs -0 chmod 0640

Dans le dossier, tant les dossiers que les fichiers ont comme propriétaire copie_de_test et groupe www-data :

drw-r-s---  8 copie_de_test www-data  4096 Feb 16 15:03 images
-rw-r-----  1 copie_de_test www-data   418 Feb 16 15:03 index.php

Ainsi que mon .htaccess:

-rw-r-----  1 copie_de_test www-data    4923 Feb 16 16:14 .htaccess

Du coup, j'ai accès avec un index tout bête avec un echo "hello"; ça affiche hello, mais avec les fichiers WP ça me donne un 403:

Forbidden

You don't have permission to access / on this server.
Server unable to read htaccess file, denying access to be safe
Apache/2.4.18 (Ubuntu) Server at www.copie_de_test.com Port 80

Il me semble que je devrais avoir accès mais non ? C'est le .htaccess qui bloque ?

Dernière modification par oliver2004 (Le 16/02/2018, à 18:36)


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#11 Le 16/02/2018, à 19:54

MicP

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Bonsoir

oliver2004 a écrit :

Je ne comprends pas trop le "s" de drw-r-s---

https://fr.wikipedia.org/wiki/Setuid

https://en.wikipedia.org/wiki/Setuid

Dernière modification par MicP (Le 16/02/2018, à 19:57)

Hors ligne

#12 Le 17/02/2018, à 08:32

bruno

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Re,

Il manque le droit d'entrée dans tes dossiers pour le propriétaire et le groupe : rwxr-x---

Je suppose que tua as mis le SGID sur les dossiers pour que le fichiers gardent ww-data comme groupe.

Hors ligne

#13 Le 23/02/2018, à 17:44

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Bonjour, excusez le retard dans la réponse, j'ai dû partir en déplacement.
Je reviens donc.

MicP a écrit :

Bonsoir

oliver2004 a écrit :

Je ne comprends pas trop le "s" de drw-r-s---

https://fr.wikipedia.org/wiki/Setuid

https://en.wikipedia.org/wiki/Setuid

Merci MicP pour le lien, en fait, ce que j'en retire c'est que, au moins utilisé sans grande connaissance de cause, ça peut être une grosse faille de sécurité non?

bruno a écrit :

Il manque le droit d'entrée dans tes dossiers pour le propriétaire et le groupe : rwxr-x---

Je suppose que tu as mis le SGID sur les dossiers pour que le fichiers gardent ww-data comme groupe.

Bref, j'ai eu du mal à mettre les droits ok et c'est bon maintenant...
ouff, je vais me remettre à réviser les droits et permissions sur linux.
Du coup, pour récapituler un peu,
J'ai ça pour le dossier racine (contenant les dossiers et fichiers:

drwxr-xr-x  5 copie_de_test copie_de_test 4096 Feb 23 17:09 copie_de_test

J'ai ça pour les fichiers, incluant le .htaccess:

-rw-r-----  1 copie_de_test www-data                         418 Feb 16 15:03 index.php

Et ça pour les dossiers qui ne sont pas en écriture:

drwxr-x--- 10 copie_de_test www-data                        4096 Feb 16 15:19 wp-content

Et pour le dossier /wp-content/uploads qui doit être en écriture (je ne sais s'il y en a plus ?)

drwxrwx---  6 copie_de_test www-data                       4096 Feb 16 15:04 uploads

Est ce pas mal comme ça question sécurité? Puis-je optimiser un peu plus ?

Aussi, si je comprends bien, pour les modifications via sftp, si j'ajoute mon user au groupe copie_de_test, je pourrais alors modifier les fichiers ?
[edit] ben non apparemment ça ne marche pas, j'ai ajouté mon user au groupe copie_de_test, marche pas... hmm

Dernière modification par oliver2004 (Le 23/02/2018, à 17:53)


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne

#14 Le 25/02/2018, à 08:15

bruno

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

Tes droits me paraissent bons. Attention quand me avec ces droits là ton Wordpress ne pourra pas se mettre à jour, ni installer des plugins ou des thèmes car www-data n'a pas toujours les droits en écriture.

Pur le sftp, il faudrait savoir ce que tu utilises et comment c'est configuré mais le plus simple c'est que l'utilisateur SFTP soit "copie_de_test".

Hors ligne

#15 Le 25/02/2018, à 17:08

oliver2004

Re : [Sécurité serveur web] RESOLU Droits à donner aux fichiers et dossiers

bruno a écrit :

Tes droits me paraissent bons. Attention quand me avec ces droits là ton Wordpress ne pourra pas se mettre à jour, ni installer des plugins ou des thèmes car www-data n'a pas toujours les droits en écriture.

Pur le sftp, il faudrait savoir ce que tu utilises et comment c'est configuré mais le plus simple c'est que l'utilisateur SFTP soit "copie_de_test".

Uhm, ok, c'est un souci mais il suffirait de revenir aux droits normaux le temps de la mise à jour, et remettre les droits comme avant... quelque peu contraignant de fait.
Merci pour tout en tout cas, c'est beaucoup plus clair maintenant par rapport aux droits qu'il faut mettre sur les dossiers et fichiers. Je me rend compte que les sites qui sont hébergés sur mon VPS n'étaient pas sécures !! J'ai déjà fait les modifs.
Merci beaucoup, je mets à résolu. smile


Bureaux: Ubuntu Serveur Edition 18.04.4 LTS, Kubuntu, Xubuntu sur portables 18.04 LTS ou 20.04 LTS
Déjà 13 ans que toutes les machines sont LINUX dans mon entreprise...

Hors ligne