Forum Linux.général Donner une permission à Apache

Posté par . Licence CC by-sa.
0
13
juin
2019

Bonjour à tous,

je souhaite donner à apache la permission root d'accès aux fichiers "cap_dac_override" (oui je sais c'est mal, mais bon…).

Je pensais naïvement que faire setcap cap_dac_override=ep /usr/sbin/apachectl fonctionnerais.

D'ailleurs getcap /usr/bin/apachectl confirme cette permission.

Par contre si je fais un ps caux | grep httpd je constate plein de fistons…. et bien sure un getcap _PID_APACHE m'indique aucune permission (sauf sur le tout premier). Redémarrage d'apache, de la machine, et tout le tremblement n'y font rien, je n'y accède toujours pas!

Du coup mon apache ne peux pas lire les fichiers dont j'ai besoin (et bien sure je ne vais pas changer les droits de ces fichiers, ça serait trop simple).

Une idée pour me sortir de ce pétrin ? (non je lancerait pas apache en root!)

Merci d'avance!

  • # pourquoi ???

    Posté par . Évalué à 3.

    si ton apache n'est pas root,
    c'est pas pour lui donner la permission de faire des trucs en tant que root,

    à toi donc d'utiliser les droits unix (ugo, eventuellement sticky bit)
    pour que le dossier ou apache va travailler lui appartiennent (ou appartiennent à son groupe, ou à un groupe commun)

    et que tes utilisateurs (itinerants, partages samba) appartiennent aussi à ce groupe commun.

    ainsi l'utilisateur qui depose un fichier dans ce dossier,
    le fichier reste 77x, l'utilisateur peut donc venir le modifier, mais apache aussi via le groupe

    et si appache vient deposer un fichier, le fichier lui appartient, mais un utilisateur du meme groupe pourra le modifier le supprimer

    et tout ca sans donner de capacité speciales à apache

    • [^] # Re: pourquoi ???

      Posté par . Évalué à 0.

      C'est pas la question mais ok, merci d'avoir essayé. Alors comment je fais pour accéder(au minimum lire) au contenu d'une clé USB ext 2/3/4 dont les fichiers appartiennent à un uid/gid non existant dans mon système? Je vais pas modifier les droits de cette clé quand meme.

      • [^] # Re: pourquoi ???

        Posté par . Évalué à 4.

        les options de mount sont faites pour cela,
        et si c'est pour la monter en automatique à l'insertion udev est là pour ca

        me semble qu'on peut modifier les droits d'un support monté à ce moment là.
        autre piste ton apache ecrit dans SON dossier,

        et un script (lancé par inotify) executé par root vient juste faire la copie vers la clef si elle est presente

        • [^] # Re: pourquoi ???

          Posté par . Évalué à 2.

          et un lien vers la clé usb ca ne lui irait pas à apache ? lien accessible à son groupe, utilisateur etc …

          • [^] # Re: pourquoi ???

            Posté par (page perso) . Évalué à 2.

            Si lien = lien physique : impossible entre périphériques différents.

            Si lien = lien symbolique : par définition c'est lrwxrwxrwx pour root:root et les permissions sont résolues en fonction de vers quoi ça pointe.

            Debian Consultant @ DEBAMAX

  • # Une vrai réponse?

    Posté par . Évalué à 0.

    Bonjour à tous,

    Je n'ai toujours pas eu de réponse à cette question qui est simple: ajouter une capacité à apache.

    Les trolls sont de sortis, les newbies répondent à côté de la plaque sans comprendre les tenants et les aboutissants, et les geeks n'ont pas envie de réfléchir.

    Allez la communauté, quelqu'un connait la réponse à ce problème! ou au moins est capable d'expliquer pourquoi apache de "garde" pas la capacité donnée.

  • # Un workaround

    Posté par . Évalué à 1.

    Changement de plan et remplacement d'apache par NGINX beaucoup mais beaucoup plus rapide et efficace.
    Ici je fait tourner mon PHP avec php-fpm en daemon et je lui donne les droits et les permissions que je veux.

    Depuis quand Linux empêche ses admin de faire ce qu'il veux pour des raisons de sécurité? Quand je suis root je veux un accès complet et pas autre chose, sinon j'installe Windows. La démocratisation de Linux je dis oui, mais pas à contrario de ses préceptes.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.