[webmail]

Bonjour
Voila je suis en train de créer une webmail sous linux mandrake, avec postfix horde Imp.

J'ai pas encore fini, mais je me guide grace a un tutorial.
Sur ce tuto, à certains moments, il est demandé de testé si tel ou tel trucs marche en tappant l'adresse (par exemple http://dom.isi/horde/imp/test.php), seulement a chaque fois que j'essai d'acceder a une page pour faire le test, mon navigateur me revoir l'erreur : "Forbidden, You dont have permission ..... on this server".
Ca m'enerve enormement

MErci de votre aide

40 réponses

Résumé de la discussion

Le problème central est l'erreur Forbidden lors des tests d'accès aux pages Horde/IMP sous Mandrake avec Postfix, indiquant que les permissions ou la configuration bloquent l'affichage des pages de démonstration. Des réponses recommandent de vérifier l'utilisateur et le groupe Apache, d'ajuster les permissions des répertoires et fichiers sous horde/, puis d'utiliser chown et chmod en fonction des besoins pour que l'application soit lisible et exécutable. En complément, des échanges évoquent la configuration SMTP/Postfix et les tests EHLO via Telnet, tandis que des remarques sur Turba signalent des notices Undefined index et des paramètres de profil manquants dans les templates.

Bobot (l’IA à votre service)
  1. Contributeur
    Salut,

    Il est probable que les fichiers et pages de Horde et/ou IMP que tu as copiés dans le répertoire "horde/" à partir de la racine de ton serveur Web n'ont pas les bonnes permissions pour pouvoir être exécutés ou lus par l'utilisateur sous lequel tourne Apache.

    - les répertoires, y compris le répertoire "horde/" et les répertoires sous "horde/", doivent avoir des permissions de lecture et d'exécution pour cet utilisateur (ou pour tous si tu ne veux pas te casser la tête à verrouiller les choses)

    - les fichiers php, de configuration, etc., doivent avoir des permissions de lecture pour cet utilisateur (ou pour tous ..etc.)

    Certains fichiers ou répertoires de Horde ou des applications tournant sous Horde doivent avoir des permissions particulières, pour des raisons de sécurité. Vois le répertoire "docs/" dans la racine de "horde/" et dans la racine de chaque application installée sous horde.

    Dal
    1. merci de ta reponse

      je debute en linux, qu'elle est la bonne technique pour modifier les droits??
      desolé si cette question peut paraitre nul

      en tout cas merci beaucoup de ton aide
      1. Contributeur
        Salut,

        D'abord, tu détermines sous quel utilisateur et groupe Apache tourne. Tu fais çà en vérifiant dans httpd.conf les directives "User" et "Group".

        Chez moi c'est :

        User www
        Group www


        Ensuite, tu vérifies quells sont les permissions affectées à tes répertoires sous la racine d'Apache.

        Si tu n'y connais rien aux permissions sous Linux, la lecture de ceci t'apprendra ce dont tu as besoin :

        http://cyberzoide.developpez.com/unix/droits.php3

        Si tu es perdu et que tu veux qu'on t'aide, sous root, tu fais :

        cd /chemin/vers/ma/racine/
        ls -l


        et dis moi ce que tu vois à la ligne décrivant les permissions de "horde/"

        puis

        cd horde/
        ls -l


        copie le résultat intégral ici

        puis

        cd imp/
        ls -al


        copie le résultat intégral ici

        Calà nous permettra de voir si ton problème est bien lié aux permissions et de te conseiller sur les commandes chown et/ou chmod à utiliser dans ton cas.

        man chown

        et

        man chmod

        peuvent également t'aider, bien sûr :P

        Dal
        1. merci pour tout

          Bon tout a lheure avant de partir de l'entreprise de mon stage, j'ai regardé et apparement j'ai mis les droit sur le dossier /horde pour tout le monde (je l'avais fait en lancant konqueror en root pour avoir les droits).

          Je confirmerais demain matin, mais j'ai peur que ca ne soit pas ca.

          A oui et c'est normal que je n'ai pas httpd.conf mais httpd2.conf?? je pense que c'est en rapport avec la version de apache non?
          1. rebonjour

            Alors :

            -cd /chemin/vers/ma/racine/
            li -l
            pour la ligne concernant horde, j'ai : drwxrwxrwt 12 root root 4096 et la date

            - cd /horde
            ls -l
            total 140
            drwxrwxrwt 2 root root 4096 fév 2 15:06 config/
            -rw-rw-rwT 1 root root 25275 fév 12 2000 COPYING
            -rw-rw-rwT 1 root root 2556 fév 6 2003 css.php
            drwxrwxrwt 2 root root 4096 sep 9 2003 docs/
            drwxrwxrwt 5 root root 4096 sep 9 2003 graphics/
            -rw-rw-rwT 1 root root 1951 jan 3 2003 help.php
            drwxrwxrwt 11 root root 4096 aoû 27 2003 imp/
            -rw-rw-rwT 1 root root 1854 jan 3 2003 index.php
            -rw-rw-rwT 1 root root 1569 jan 16 2003 javascript.php
            drwxrwxrwt 12 root root 4096 sep 9 2003 lib/
            drwxrwxrwt 36 root root 4096 sep 9 2003 locale/
            -rw-rw-rwT 1 root root 4164 mai 27 2003 login.php
            -rw-rw-rwT 1 root root 2161 jan 3 2003 maintenance.php
            -rw-rw-rwT 1 root root 1844 jan 3 2003 menu.php
            -rw-rw-rwT 1 root root 620 fév 8 2003 navbar.php
            drwxrwxrwt 2 root root 4096 sep 9 2003 po/
            -rw-rw-rwT 1 root root 1909 fév 8 2003 prefs.php
            -rw-rw-rwT 1 root root 4549 jui 3 2003 problem.php
            -rw-rw-rwT 1 root root 2609 aoû 4 2003 README
            drwxrwxrwt 5 root root 4096 sep 9 2003 scripts/
            -rw-rw-rwT 1 root root 1769 jan 3 2003 status.php
            drwxrwxrwt 14 root root 4096 sep 9 2003 templates/
            -rw-rw-rwT 1 root root 15586 jui 10 2003 test.php
            drwxrwxrwt 2 root root 4096 sep 9 2003 util/

            enfin cd /imp
            ls -al

            total 280
            drwxrwxrwt 11 root root 4096 aoû 27 2003 ./
            drwxrwxrwt 12 root root 4096 fév 2 15:02 ../
            -rw-rw-rwT 1 root root 45499 jui 8 2003 compose.php
            drwxrwxrwt 2 root root 4096 fév 2 15:18 config/
            -rw-rw-rwT 1 root root 2867 jun 4 2003 contacts.php
            -rw-rw-rwT 1 root root 17989 avr 28 1999 COPYING
            drwxrwxrwt 2 root root 4096 aoû 27 2003 docs/
            drwxrwxrwt 2 root root 4096 aoû 27 2003 download/
            -rw-rw-rwT 1 root root 6953 jan 3 2003 filters.php
            -rw-rw-rwT 1 root root 15995 aoû 6 2003 folders.php
            drwxrwxrwt 4 root root 4096 aoû 27 2003 graphics/
            -rw-rw-rwT 1 root root 5346 fév 4 2003 identities.php
            -rw-rw-rwT 1 root root 893 jan 18 2003 index.php
            drwxrwxrwt 5 root root 4096 aoû 27 2003 lib/
            drwxrwxrwt 41 root root 4096 aoû 27 2003 locale/
            -rw-rw-rwT 1 root root 6468 mai 9 2003 login.php
            -rw-rw-rwT 1 root root 31915 aoû 7 2003 mailbox.php
            -rw-rw-rwT 1 root root 1117 jan 3 2003 menu.php
            -rw-rw-rwT 1 root root 25230 jun 18 2003 message.php
            drwxrwxrwt 2 root root 4096 aoû 27 2003 po/
            -rw-rw-rwT 1 root root 13142 avr 14 2003 prefs.php
            -rw-rw-rwT 1 root root 2106 jun 4 2003 README
            -rw-rw-rwT 1 root root 3864 jun 14 2003 redirect.php
            drwxrwxrwt 2 root root 4096 aoû 27 2003 scripts/
            -rw-rw-rwT 1 root root 2200 jan 3 2003 search.php
            -rw-rw-rwT 1 root root 6504 avr 12 2002 spelling.php
            -rw-rw-rwT 1 root root 2350 jan 3 2003 status.php
            drwxrwxrwt 15 root root 4096 aoû 27 2003 templates/
            -rw-rw-rwT 1 root root 7976 jun 17 2003 test.php
            -rw-rw-rwT 1 root root 4173 fév 25 2003 view.php
            1. et dans commonhttpd.conf j'ai ca pour les utilisateurs

              User apache
              Group apache
              1. Contributeur
                Salut,

                Il y a un "t" ou "T" à la fin de chacun de tes fichiers. C'est l'indication d'un "sticky bit" qui peut inderdire les opérations d'écriture faites par d'autres que le propriétaire du répertoire affecté de ce bit.

                Fait

                cd /chemin/vers/ma/racine/
                chmod -R a-t horde/


                Et voit si celà améliore les choses.

                Vu que tes user:group pour le process Apache (apache:apache) diffèrent de ceux de tes fichiers (root:root), il faut effectivement donner des droits de lecture et d'exécution à tout le monde (écriture pas nécessairement, sauf lorsque horde en a besoin - voir la doc horde à ce sujet -, comme celà semble être le cas pour le test), ou alors, tu changes le user ou le groupe de ton arborescence horde/ vers "apache".

                Dal
                1. resalut

                  avant ta reponse j'ai vu un truc.
                  Dans commonhttp.conf, ya ca :

                  <Directory /var/www/html/mail>
                  Options -All -Multiviews
                  AllowOverride None
                  <IfModule mod_access.c>
                  Order deny,allow
                  allow from all
                  </IfModule>
                  </Directory>

                  seulement, la ou ya ecrit allow from all, moi j'avais deny from all, j'ai corrigé et ca a l'air de marcher

                  maintenant j'ai un autre petit soucis, j'ai installé Turba, quand je tappe http://linux.dom.isi/horde dans le navigateur pour voir si ca marche, je suis censé arrivé sur une page qui me permet d'entrer une nouvelle entrée dans le carnet d'adresse je crois.
                  Cepedant j'ai cette erreur :

                  Warning: main(PEAR.php): failed to open stream: No such file or directory in /var/www/html/mail/horde/lib/Registry.php on line 13

                  Fatal error: main(): Failed opening required 'PEAR.php' (include_path='/usr/share/php') in /var/www/html/mail/horde/lib/Registry.php on line 13

                  encore merci a toi pour ton aide généreuse
                  1. Contributeur
                    Re :)

                    moi j'avais deny from all, j'ai corrigé et ca a l'air de marcher

                    Tant mieux. Cependant, pour ton sticky bit, je ne vois pas ce qu'il fait là et je ne crois pas que Horde soit prévu pour fonctionner de la sorte.

                    maintenant j'ai un autre petit soucis, j'ai installé Turba, quand je tappe http://linux.dom.isi/horde dans le navigateur pour voir si ca marche, je suis censé arrivé sur une page qui me permet d'entrer une nouvelle entrée dans le carnet d'adresse je crois.

                    Sauf si tu l'as paramétré autrement, tu est sensé arriver sur la page d'authentification générale de Horde.

                    Cepedant j'ai cette erreur :

                    Warning: main(PEAR.php): failed to open stream: No such file or directory in /var/www/html/mail/horde/lib/Registry.php on line 13

                    Fatal error: main(): Failed opening required 'PEAR.php' (include_path='/usr/share/php') in /var/www/html/mail/horde/lib/Registry.php on line 13


                    Cette erreur semble indiquer que PEAR n'est pas installé, ou n'est pas installé à l'endroit où Horde s'attend à le trouver.

                    Quand tu fais http://linux.dom.isi/horde/imp/test.php

                    ... en bas des tests effectués, tu devrais avoir le résultat concernant la détection de PEAR, avec les bons chemins. Celà dit quoi ?

                    Dal
                    1. Contributeur
                      A propos, celà n'a rien à voir... mais, si tu trouves comment synchroniser Turba (pour les adresses) avec un Palm (et accessoirement Chronolith pour l'agenda), je suis preneur... même une solution payante.

                      Dal
                      1. alors oué je corrigerais le sticky bit

                        pour le probleme de pear, c'etait que l'emplacement de pear etait pas le bon (dans le php.ini je crois") mais c'est corrigé

                        dans la page test j'ai maintenant tout qui est normal a par que le xml qui va pas, mais apparment le package php-xml est pas installé donc faut que je le telecharge et je l'installe. (bizar je ne le trouve pas sur le dvd de mandrake 10.1)

                        En parlant de cela, c'est quoi la difference entre les package x86, i586 et les autres (je me rapel plus; c'est des lettres)??
                        1. bon ben j'ai pas mal avancé depuis

                          mais la j'ai un autre soucis

                          avec horde, j'essai d'envoyer un mail, alors je tappe l'adresse, et le mail, je clic sur envoyer mais rien ne se passe, ca charge, ca charge mais rien ne se passe
                          :(
                          1. Contributeur
                            Salut,

                            Difficile à dire comme celà.

                            Attend de voir si le pédalage s'arrête et un quelconque message apparait.

                            Regarde aussi les logs httpd.

                            Dal
                            1. Contributeur
                              Salut,

                              Lorsque tu as configuré IMP, tu as dû renseigner un fichier "horde/imp/config/servers.php", avec la/les combinaisons de configurations de serveurs que tu choisis pour ton installation de IMP, sous la forme d'un tableau $servers comportant lui même un tableau de variables.

                              Dedans tu as :

                              'smtphost' => 'mon.serveur.smtp',
                              'smtpport' => 25,

                              Ce serveur fonctionne-t-il, répond-il sur le port que tu as indiqué, accepte-t-il les connections provenant de ta machine, est-il bien configuré, la résolution DNS fonctionne-t-elle ?

                              au shell fait

                              telnet mon.serveur.smtp 25

                              et teste l'envoi d'e-mails intéractivement (avec la même adresse que celle que tu testais dans IMP) comme indiqué ici :

                              http://www.interpc.fr/mapage/billaud/telmail.htm#post

                              Si cette session signale des erreurs, le problème ne concerne pas IMP. Eventuellement, poste ici le résultat de la session.

                              Dal
                              1. Salut
                                je me permet de te demander une petite précision ( je vois que tu a l'air de toucher...lol..)
                                voila
                                j'aimerai savoir quelle est la grosse difference entre SMTPD ( qui est un démon je pense) et le protocole SMTP?
                                est ce que ce sont deux choses completement differentes ? est ce que les messages venant soit du reseau soit en local utilise l'un ou l'autre?
                                mon chef me tarabuste avec ca....lol ..pourrais tu me donner une tite réponse?
                                je te remercie d'avance a bientot !
                                lilou
                              2. Contributeur
                                @lilou21Bonjour lilou21,

                                1.

                                SMTP est l'abréviation de "Simple Mail Transfer Protocol". Comme tout protocole, il décrit des règles de fonctionnement, les structures et modèles de communication, des formats de requêtes, de données, etc. Celui-ci est codifié dans une RFC.

                                Le standard de base actuel a été rédigé en 1982 par Jon Postel :

                                ftp://ftp.rfc-editor.org/in-notes/rfc821.txt

                                Des extensions, améliorations ont été adoptées depuis et de nouvelles sont régulièrement proposées et discutées. Tu peux les consulter en cherchant "smtp" dans le moteur de recherche là :

                                http://www.rfc-editor.org/cgi-bin/rfcsearch.pl

                                2.

                                smtpd est un nom habituellement utilisé pour désigner un logiciel serveur ("d" pour démon) qui implémente le protocole SMTP et dont la fonction principale est de gérer la transmission d'e-mails.

                                Par exemple, le démon SMTP du serveur Postfix est un exécutable dont le nom est "smtpd", comme l'indique sa page de manuel :

                                http://www.postfix.org/smtpd.8.html

                                3.

                                sont deux choses completement differentes ?

                                Ce sont deux choses différentes, l'un étant la définition d'une norme (le protocole), l'autre étant sa mise en oeuvre logicielle sous la forme d'un serveur.

                                est ce que les messages venant soit du reseau soit en local utilise l'un ou l'autre?

                                smtpd devrait, en principe, être capable d'acheminer tant des mails locaux que des mails provenant de l'extérieur ou destinés à l'extérieur. Il le fait en mettant en oeuvre le protocole SMTP, ce qui lui permet de dialoguer avec d'autres serveurs smtp, les deux parlant le même "langage".

                                Dal
                            2. mon serveur smtp est le meme que le serveur imap
                              j'ai donc : smtphost : linux.dom.isi

                              j'ai pas de ligne smtpport
                              le port imap est 143

                              faudrait-il que je rajoute ".smtp" pour le smtphost??

                              je vais essayer le telnet comme tu dis
                              je dirais ce qu'il en est
                              1. pour faire plus simple lol

                                $servers['imap'] = array(
                                'name' => 'IMAP Server',
                                'server' => 'linux.dom.isi',
                                'protocol' => 'imap',
                                'port' => 143,
                                'folders' => 'mail/',
                                'namespace' => '',
                                'maildomain' => 'dom.isi',
                                'smtphost' => 'linux.dom.isi',
                                'realm' => 'dom.isi',
                                'preferred' => '1'
                                1. et le telnet

                                  [root@linux config]# telnet linux.dom.isi
                                  Trying 127.0.0.1...
                                  telnet: connect to address 127.0.0.1: Connection refused
                                  telnet: Unable to connect to remote host: Connection refused
                                  1. je suis bete lol

                                    telnet linux.dom.isi 25
                                    Trying 127.0.0.1...
                                    Connected to linux.dom.isi (127.0.0.1).
                                    Escape character is '^]'.
                                    • 1
                                    • 2