|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Bonjour,
Je suis débutant en administration de serveur et encore plus sur de l'hébergement Windows. Or ma société m'impose d'héberger du PHP sur un Windows Server 2008/IIS 7. J'ai donc opté pour la solution Zend qui optimise les performances d'un serveur APACHE/PHP sur windows avec FastCGI. La plateforme fonctionne très bien, mes tests en local sont concluants. Par contre, j'essaie maintenant de rendre accessible le serveur depuis l'extérieur et je suis toujours en train de me demander si je fais bien, surtout niveau sécurité J'ai créé l'arbo suivante : D:/Zend/ ---Apache2 ---Core D:/website/ ---logs ---www D:/website/www/ : ---dossiers sites ---dossiers librairies partagées par tous les sites Et pour un site j'ai prévu : D:/website/www/nom-du-site/ ---stats ---fichiers du site Par défaut (par Zend) mon fichier de conf apache2 contient ces lignes : Code :
Maintenant je souhaite rendre le serveur accessible via l'extérieur, et je ne sais pas si cette configuration est idéale. Déjà, j'ai évidemment transformé certaines lignes en : Mais quel "DocumentRoot" dois-je configurer ? "D:/website/www/" ? Si c'est le cas, comment est-ce que je peux rendre visible quand même mes GUI Zend qui sont actuellement accessible via "D:/Zend/Core/GUI" ? Je suppose que chaque site ne doit surtout pas être accessible via : http://ip-du-serveur/nom-du-rep/ Mais comment faire ? J'ai lu pas de mal de chose sur Apache, mais il y a certaines choses qui m'échappent encore. Il s'agit d'un serveur de production et je ne veux surtout pas faire n'importe quoi Si certains peuvent m'éclairer ce serait super ! En gros mon vrai problème ici est de savoir à quoi devrait ressembler la configuration d'Apache pour un serveur de production sécurisé qui contiendrait des sites indépendants dans le répertoire "D:/website/www/" chacun accessible au final par un nom de domaine propre. Merci beaucoup ! Benjamin. |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : août 2005 Messages : 8 314 ![]() |
Déjà, c'est quoi un site et avec quel URL ou hostname as-tu prévu d'y accéder ?
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
je vais avoir des sites clients stockés dans des dossiers portant leur nom de sous-domaine s'il s'agit d'un groupe de clients ou domaine sinon.
Exemple dans "D:/website/www/" j'aurai des dossiers : truc bidule/toto bidule/titi machin/toto machin/titi Ces sites seront accessibles respectivement via : www.truc.com toto.bidule.com titi.bidule.com toto.machin.com titi.machin.com Mais quel importance ? Tout sera hébergé sur le même serveur. |
|
|
00
|
|
|
#4 | ||||
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Je m'auto-répond pour une partie de ma question
Pour les domaines et les sous-domaines je suppose que je vais faire des Virtual Hosts dans un fichier vhost.conf que j'incluerai ensuite dans le httpd.conf du type : Code :
et : Code :
Arrêtez moi si je me trompe Mais pour le reste de ma question ? Que dois-je faire du "DocumentRoot" déjà présent dans le fichier de conf et des autres paramètres que j'ai indiqué dans mon premier message ? Et dois-je configurer mes GUI Zend et PhpMyadmin comme des virtual hosts ? Même s'ils ne sont accessibles qu'en local ? Merci. |
||||
|
|
00
|
|
|
#5 | |
![]() ![]() Inscription : août 2005 Messages : 8 314 ![]() |
C'est bien ça, il faut passer par les virtual hosts. Pour info, il y a une notion de document root virtuel qui pourra t'être d'une grande aide : http://httpd.apache.org/docs/2.2/vhosts/mass.html
A propos de la conf de VH que tu donnes, il faut éviter les noms dans les directives NameVirtualHost et <VirtualHost> : plutôt passer par les IP ou même carrément *, ce sera plus sûr et surtout plus simple. Ce qu'il faut indiquer à ces endroits-là, c'est soit une IP locale au serveur par laquelle les requêtes pour les VH arrivent, soit * pour dire "quelque soit l'IP par laquelle on arrive". Concrètement, mettre une IP n'a d'intérêt que pour les serveurs équipés de plusieurs interfaces réseau. Le plus simple reste toujours de mettre *. Ensuite, il est préférable également de mettre un numéro de port, et là idem que pour *, il faut que ce soit le port d'écoute d'Apache par lequel les requêtes arrivent. Donc, le plus simple, si ton Apache écoute sur le port 80, c'est de mettre *:80 partout (NameVirtualHost et <VirtualHost>). Citation:
Pour PhpMyAdmin, tu peux passer par alias (configuration standard, d'ailleurs), donc tu peux mettre les fichiers où tu veux, mais une fois de plus, dans un endroit bien précis accessible que par cet alias. Pour Zend, aucune idée, je ne connais pas. J'imagine que c'est également un alias, donc idem PhpMyAdmin.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
|
00
|
|
|
#6 | |||||||||
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Ok j'ai pigé pour les VHOST.
Citation:
J'aurais donc un truc du genre : Code :
Code :
Code :
Donc pour PhpMyAdmin je vais un truc tout con du genre : Code :
Par contre les Alias c'est bien sécurisé ? Impossible d'avoir accès à autre chose que phpmyadmin dans ce cas là ? Merci beaucoup ton aide est précieuse Benjamin. |
|||||||||
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : août 2005 Messages : 8 314 ![]() |
Pour le premier <Directory />, tu le laisses. C'est une sécurité supplémentaire pour dire que tout ton système est protégé par défaut.
Pour le second <Directory "D:/Zend/Apache2/cgi-bin">, je sais pas trop. Ca dépend du répertoire dans lequel tu as installé Zend. Il faut remplacer le répertoire indiqué par le répertoire cgi-bin de Zend, j'imagine. Sinon, le contenu me semble correct. Pour phpMyAdmin, ça me semble bon, si ce n'est que je mettrais des / à la place des \ dans ton Alias. Faut voir ce qui est indiqué dans la doc d'install. L'alias sera protégé dans la mesure où effectivement, seuls les fichiers de D:\Zend\Core\GUI\phpMyAdmin seront accessibles par cet alias, et comme ce répertoire n'est pas dans le document root, y a pas de risque d'accéder aux fichiers de phpMyAdmin via une URL trafiquée.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#8 |
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Ok, merci pour tes précisions.
Dernière question (enfin, normalement), qu'est-ce qui peut faire que je ne puisse pas pinger le serveur via son IP alors que j'ai désactivé le pare-feu windows ? D'après mon-ip.org il n'y a pas non plus de proxy... Merci encore. Benjamin. |
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : août 2005 Messages : 8 314 ![]() |
C'est ton routeur : pour des raisons de sécurité, il se peut qu'il ne réponde pas au ping. Y a de plus en plus de serveurs comme ça pour se protéger notamment des attaques DoS ICMP. Mais c'est pas pour autant que ça ne marche pas
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#10 | ||
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Ok
Alors pourquoi avec la config suivante : Code :
On trouve beaucoup de réponses sur le web qui indiquent d'activer le DMZ pour l'IP du serveur. Je ne fais pas de réseau pour 1 sous, mais il me semble que c'est pas tip top de faire ça et que ça exposerait grandement le serveur, me trompeuje ? |
||
|
|
00
|
|
|
#11 |
|
Membre à l'essai
![]() Inscription : mai 2007 Messages : 92 ![]() |
Auto-réponse :
Il fallait bien forwarder le port 80 sur le serveur. D'après l'administrateur réseau le DMZ est activé comme sur tous les serveurs mais seul le port 80 et ouvert. Le Serveur est protégé en amont. Je poserai une ultime question, est-ce que je n'oublie rien ? - VHOST - DocumentRoot vers dossier contenant un index bateau. - CGI - Alias pour les GUI du serveur - Stats - Logs Tiens d'ailleurs quelle est la meilleure méthode pour gérer les stats de chaque site ? Pour les logs je sais que c'est géré dans le paramétrage du VHOST, mais pour les stats ? Merci encore. Benjamin. |
|
|
00
|
|
|
#12 |
![]() ![]() Inscription : août 2005 Messages : 8 314 ![]() |
Je sais pas : c'est quoi les stats ? Comment tu les génères ?
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com