Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : Fedora 30 est mort ce soir

#1 24/06/2015 18:01:46

RTDaemons
Membre
Inscription : 24/06/2015
Messages : 2

[Résolu] Difficultés avec Apache, userdir et SELinux

Bonjour à tous!

Je viens du monde Debian. J'ai un PC portable fraîchement passé sous Fedora 22, et un dédié qui tourne sous Debian. Comme l'expérience desktop m'a bien plu, j'ai entrepris de monter un deuxième serveur dédié sous Fedora Server 22.

Et là, j'ai quelques soucis que je n'arrive pas à régler avec la doc ou mon amis Google :

Apache est configuré avec mod_userdir. Je veux que PHP puisse écrire des fichiers, et que mon utilisateur puisse également apporter des modifications.

- Sous Debian j'avais juste à faire les chmod qui vont bien sur le home et public_html, et à changer le groupe de public_html par un groupe qui contiens à la fois apache et mon utilisateur.

- Avec Fedora, si je ne rend pas apache propriétaire de public_html, PHP n'arrive pas à écrire le moindre fichier. L'ajouter simplement à un groupe semble ne servir à rien.

De plus, SELinux s'en mêle et empêche aussi l'écriture (ça fonctionne avec setenforce 0). J'ai bien exécuté setsebool -P httpd_enable_homedirs true comme indiqué dans la doc.


Bref, si quelqu'un sais comment faire fonctionner ça proprement, je suis preneur !

Dernière modification par RTDaemons (24/06/2015 18:03:07)

Hors ligne

#2 26/06/2015 12:06:27

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 8 456
Site Web

Re : [Résolu] Difficultés avec Apache, userdir et SELinux

Bonjour,

quels sont les contextes selinux sur tes fichiers en question? Que disent les logs SeLinux exactement?


Linux, ya moins bien, mais c'est plus chèr!!!
Fedora 32 WorkStation sur HP 850 G5
Fedora 32 SilverBlue sur Lenovo Thinkpad Yoga 12

Hors ligne

#3 26/06/2015 13:10:31

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 8 456
Site Web

Re : [Résolu] Difficultés avec Apache, userdir et SELinux

De tête me semble que:

chcon --type=httpd_user_content_rw_t /home/TON_USER/public_html

devrait suffir pour autoriser httpd à ecrire dans public_html. Car par défaut tu dois être en httpd_user_content_t seulement. Tu peux automatiser et rendre ce contexte selinux permanent avec la commande "semanage" (fcontext).

Il faudra ensuite s'assurer que l'utilisateur apache puisse accéder en ecriture au repertoire en question.

Au passage, ce serait même surement plus sûr d'autoriser que dans un sous repertoire du public_html.

Après ce posera surement la question des fichiers ainsi crées qui seront la propriété de apache. Mais là c'est des permissions unix classique. La meilleur approche serait surement suexec/suphp et autres trucs permettant de faire tourner les scripts php avec le user qui va bien.

Dernière modification par madko (26/06/2015 13:13:25)


Linux, ya moins bien, mais c'est plus chèr!!!
Fedora 32 WorkStation sur HP 850 G5
Fedora 32 SilverBlue sur Lenovo Thinkpad Yoga 12

Hors ligne

#4 11/07/2015 12:40:10

RTDaemons
Membre
Inscription : 24/06/2015
Messages : 2

Re : [Résolu] Difficultés avec Apache, userdir et SELinux

Merci madko d'avoir pris le temps de me répondre, et désolé pour le délais de ma réaction j'ai été coupé d'internet un petit moment.

J'avais bien des lignes du style type=AVC msg=audit(1436610804.108:28696): avc:  denied  { write } for  pid=21618 comm="httpd" ....... dans les log de SELinux.

J'ai donc exécuté ta commande (en ajoutant un petit --recursive) :

chcon --recursive --type=httpd_user_content_rw_t /home/TON_USER/public_html

et tout fonctionne correctement. Un grand merci pour ton aide!

Hors ligne

Pied de page des forums