Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Apache : problèmes de permissions

4 réponses
Avatar
Samy Mezani
Bonjour,

Je "gère" (de loin) un site web pour une petite asso auto-hébergé sur un
serveur web Debian avec Apache, mis à jour récemment de jessie en wheezy.

J'ai fait la mise à jour il y a environ 1 mois via une connexion ssh.
Tout s'est a priori bien passé mais, depuis, certains sites web ne
répondent plus.

Spip (http://domain.tld/yyyy)
"Forbidden
You don't have permission to access /yyyy/ on this server."

Dokuwiki (http://domain.tld/dokuwiki)
aucun souci

ownCloud (http://domain.tld/owncloud)
aucun souci

phpMyAdmin (http://domain.tld/phpmyadmin)
aucun souci

phpPgAdmin (http://domain.tld/phppgadmin/"
"Forbidden
You don't have permission to access /phppgadmin/ on this server."

J'ai regardé les permissions des dossiers :

/var/lib/
drwxr-xr-x 8 root root 4096 mars 16 22:16 spip
drwx------ 6 www-data root 4096 juil. 26 2011 dokuwiki
drwxr-xr-x 6 root root 4096 août 12 2014 owncloud
drwxr-xr-x 3 root root 4096 mai 10 2013 phpmyadmin

Ça ne m'aide pas vraiment. Je ne sais pas par où attaquer le problème.

Si quelqu'un a une idée, merci.

Samy

4 réponses

Avatar
S
Bonjour,

Le mardi 19 avril 2016 à 15:28, Samy Mezani a écrit :
J'ai regardé les permissions des dossiers :

/var/lib/
drwxr-xr-x 8 root root 4096 mars 16 22:16 spip
drwx------ 6 www-data root 4096 juil. 26 2011 dokuwiki
drwxr-xr-x 6 root root 4096 août 12 2014 owncloud
drwxr-xr-x 3 root root 4096 mai 10 2013 phpmyadmin

Ça ne m'aide pas vraiment. Je ne sais pas par où attaquer le problème.



Ces permissions ne sont pas problématiques, puisque l’utilisateur « www-data »
peut accéder en lecture aux dossiers. On ne peut pas conclure grand-chose de ce
point.

Que disent les logs d’Apache (dossier « /var/log/apache2 ») ?

Comment sont configurés les différents hôtes virtuels (tu devrais trouver des
éléments dans « /etc/apache2/sites-enabled ») ? (si je pose cette question,
c’est parce que le dossier dans lequel tu sembles avoir mis tes sites
— « /var/lib/ » — est plutôt inhabituel)

Apparemment, ces différents sites ont été installés manuellement (pas par
installation des paquets fournis par Debian). Est-ce le cas et est-ce voulu ?

Sébastien
Avatar
Samy Mezani
Bonjour,

Le 19/04/2016 16:22, Sébastien NOBILI a écrit :
Bonjour,

Le mardi 19 avril 2016 à 15:28, Samy Mezani a écrit :
J'ai regardé les permissions des dossiers :

/var/lib/
drwxr-xr-x 8 root root 4096 mars 16 22:16 spip
drwx------ 6 www-data root 4096 juil. 26 2011 dokuwiki
drwxr-xr-x 6 root root 4096 août 12 2014 owncloud
drwxr-xr-x 3 root root 4096 mai 10 2013 phpmyadmin

Ça ne m'aide pas vraiment. Je ne sais pas par où attaquer le problème.



Ces permissions ne sont pas problématiques, puisque l’utilisateur « www-data »
peut accéder en lecture aux dossiers. On ne peut pas conclure grand-chose de ce
point.

Que disent les logs d’Apache (dossier « /var/log/apache2 ») ?



Pour les logs des erreurs de connexion à Apache, voici un extrait pour
spip et phppgadmin :

[Wed Apr 20 11:17:30.675745 2016] [authz_core:error] [pid 30982] [client
XX.XX.XX.XXX:ZZZZ] AH01630: client denied by server configuration:
/var/lib/spip/

[Wed Apr 20 11:19:58.968011 2016] [authz_core:error] [pid 31832] [client
XX.XX.XX.XXX:ZZZZ] AH01630: client denied by server configuration:
/usr/share/phppgadmin/


Comment sont configurés les différents hôtes virtuels (tu devrais trouver des
éléments dans « /etc/apache2/sites-enabled ») ? (si je pose cette question,
c’est parce que le dossier dans lequel tu sembles avoir mis tes sites
— « /var/lib/ » — est plutôt inhabituel)



Contenu de /etc/apache2/sites-enabled/000-default.conf :
<VirtualHost *:80>
ServerName mondomain.tld
ServerAdmin
DocumentRoot /var/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

C'est tout ce que j'ai dans /etc/apache2/sites-enabled/

Apparemment, ces différents sites ont été installés manuellement (pas par
installation des paquets fournis par Debian). Est-ce le cas et est-ce voulu ?



C'est bizarre ça car à part owncloud les autres ont été installés via
les paquets Debian. Bien-sûr j'ai d'autres dossiers dans /var/www où
j'ai installé par exemple piwigo, pmb et des dossiers contenant des
fichiers à télécharger mais pour le reste je ne m'aventure pas dans des
installations manuelles alors que les paquets Debian le font très bien.

Merci pour vos réponses.

Samy
Avatar
S
Bonjour,

Le mercredi 20 avril 2016 à 11:31, Samy Mezani a écrit :
Le 19/04/2016 16:22, Sébastien NOBILI a écrit :
>Apparemment, ces différents sites ont été installés manuellement (pas par
>installation des paquets fournis par Debian). Est-ce le cas et est-ce voulu ?

C'est bizarre ça car à part owncloud les autres ont été installés via les
paquets Debian. Bien-sûr j'ai d'autres dossiers dans /var/www où j'ai
installé par exemple piwigo, pmb et des dossiers contenant des fichiers à
télécharger mais pour le reste je ne m'aventure pas dans des installations
manuelles alors que les paquets Debian le font très bien.



Ma remarque n’était peut-être pas très pertinente… Deux raisons à ça :
— j’ai l’habitude que ça se passe dans « /var/www/ »,
— en général les paquets Debian installent dans « /usr/share/ ».

Mais visiblement (dans le cas de Spip), il y a aussi des choses dans
« /var/lib/ » [1].

1: https://packages.debian.org/jessie/all/spip/filelist

Ne te préoccupe donc pas trop de ce que j’ai écrit ci-dessus.

Le mercredi 20 avril 2016 à 12:00, Eric a écrit :
Ce que je ne comprends pas c'est que ton DocumentRoot pointe sur /var/www,
comment arrive-t-il sur /var/lib ?



C’est normal que le « DocumentRoot » pointe sur ce dossier. Il doit y avoir une
directive de conf qui définit un alias.

Tu devrais lire les fichiers « README.Debian » contenus dans les dossiers
« /usr/share/doc/<ton-site-qui-ne-marche-pas>/ ». Par exemple, pour Spip, on
trouve ça :

Global configuration
===================
There is an Apache configuration file at /etc/spip/apache.conf and
a file for Cherokee too.

This file is included in your webserver configuration if you requested it
during package configuration.

Le fichier « /etc/spip/apache.conf » a donc dû être copié au moment de
l’installation dans le dossier « /etc/apache2/conf.d/ » (c’était le chemin
valide du temps d’Apache-2.2).

Il me semble que maintenant (Apache-2.4), ce fichier devrait être déplacé dans
le dossier « /etc/apache2/conf-available/ » et activé en créant un lien
symbolique qui pointe dessus dans le dossier « /etc/apache2/conf-enabled/ ».

Peut-être qu’un simple « dpkg-reconfigure spip » te donnera le même résultat…

Sébastien
Avatar
Jean-Louis Mas
Le 19/04/2016 15:28, Samy Mezani a écrit :

Je "gère" (de loin) un site web pour une petite asso auto-hébergé sur un
serveur web Debian avec Apache, mis à jour récemment de jessie en wheezy.



Mise à jour Wheezy -> Jessie donc apache 2.2 vers 2.4

Quelques pistes :

* Tous les fichiers de configuration apache doivent se terminer par
.conf en 2.4

* Les options doivent commencer par + ou -

http://httpd.apache.org/docs/2.4/upgrading.html

Les logs apache /var/log/apache2/ sont très parlant pour les erreurs de
configuration des virtualhosts

Si ça peut aider

Cordialement

--
Jean Louis Mas