Aller au contenu

Mettre En Place Une Config Reverse Proxy


CoolRaoul

Messages recommandés

merci pour cette explication mais effectivement ca n est pas ultra clair sur certains points:

je comprends la premiere partie qui est du port forwarding.

je comprends un peu moins bien ton explication sur le local host. Deja ca n est pas tres clair, on dirait que le routeur et le pc ont chacun une carte reseau qui ont la meme adresse

J imagine que ce que tu as voulu dire etait que la carte reseau du pc apparaissait sur le pc et le routeur avec la meme adresse et le meme nom (c est l adresse mac, non?)

mais si local host est le pc ou le nas, je n arrive pas a comprendre comment cela se passe quand il y a deux pc ou deux nas ( ou un de chaque) sur le reseau, puisque cela veut dire qu il y a deux localhost potentiels. Du coup lequel l est et lequel ne l est pas?

Lien vers le commentaire
Partager sur d’autres sites

En fait chaque machine possédant une carte réseau à une adresse ip de lookup (127.0.0.1) dont le nom DNS est localhost. Donc si dans un fichier de configuration quelconque je déclare une adresse IP en localhost ou 127.0.0.1, je ne sortirai jamais de ma machine. Explication :

- un serveur A avec une ip 192.168.1.2

- un serveur B avec une ip 192.168.1.3

A héberge un site internet et un serveur smtp (pour l'envoie de mails) et B une base de données mysql.

Au niveau de A, lorsqu'un utilisateur va envoyer un mail depuis le site, il va utiliser le serveur smtp qui est configuré sur le serveur A. Donc l'ip de ce service serra mon IP interne (car A héberge le service) donc soit 127.0.0.1 ou localhost tout comme j'aurais pu donner l'ip 192.168.1.2 qui est l'ip du serveur A. Donc depuis A, pour joindre un service sur A je peux utiliser :

- IP locale : 192.168.1.2

- IP interne : 127.0.0.1

- nom DNS associé à mon IP interne : localhost.

Modifié par patobiskoto
Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines après...

Bonjour,

Petite question au passage. Comment fait-on pour récupérer l'adresse IP qui se connecte au reverse proxy dans les logs du syno? Car avec la manip localhost on se retrouve toujours avec un 127.0.0.1

J'ai bien essayé un ProxyPreserveHost On mais je ne suis pas sur que ce soit la bonne commande...

Ca m'embête de ne pas avoir les IP des personnes qui se connectent au moyen de l'adresse web spécifiée dans le reverse proxy.

mais dans les logs apache on a bien l' adresse IP du visiteur.

Lien vers le commentaire
Partager sur d’autres sites

a l aide svp
j ai installe haproxy
j ai forwarde le port 80 vers le 5080
j ai checke les backends des differentes appli. faut il laisser le check d ailleurs?

si je fais http://ip_interne:5080 j arrive bien sur le dsm
pas si j utilise mon nom de domaine (http://www.nom.fr:5080 )
du coup si je fais http://www.appli.nomdedomaine ca ne marche pas non plus (ni sans le www d ailleurs)

Modifié par aurelized
Lien vers le commentaire
Partager sur d’autres sites

Qu'appelles tu IP_interne ???? 192.168.x.x ? Ou ton ip externe (l'ip de ta box adsl) ?

Ensuite, c'est normal que tu n'accèdes pas via http://www.nom.fr:5080 car tu n'as rien qui tourne sur ce port. C'est le port 80 que tu dois appeler de l'extérieur http://www.nom.fr:80 ou http://www.nom.fr . A noter que ceci te renverra sur le DSM, qui te fera ensuite un timeout, car il va te renvoyer sur le port 5000 et qu'il n'est pas routé sur ta box

Par contre http://appli.nom.fr doit fonctionner

Lien vers le commentaire
Partager sur d’autres sites

Qu'appelles tu IP_interne ???? 192.168.x.x ? Ou ton ip externe (l'ip de ta box adsl) ?

Ensuite, c'est normal que tu n'accèdes pas via http://www.nom.fr:5080 car tu n'as rien qui tourne sur ce port. C'est le port 80 que tu dois appeler de l'extérieur http://www.nom.fr:80 ou http://www.nom.fr . A noter que ceci te renverra sur le DSM, qui te fera ensuite un timeout, car il va te renvoyer sur le port 5000 et qu'il n'est pas routé sur ta box

Par contre http://appli.nom.fr doit fonctionner

oui mon ip interne 192.168.x.y

si j ai bien compris je dois rediriger le port 80 vers 5080. Dois je faire de meme avec le 5000?

http://appli.nom.fr ne marche pas, ca me dit webpage not available

Lien vers le commentaire
Partager sur d’autres sites

Le routage de port 80 vers 5080 est à effectuer sur ta box adsl

En interne, c'est normal que http://IP:5080 fonctionne, car tu appelles haproxy directement

En routant le port 80 extérieur vers le port 5080 du syno tu auras alors le même comportement qu'en interne

Pour http://appli.nom.fr c'est normal que çà ne fonctionne pas si ton port 80 n'est pas routé

Et non, ne redirige QUE le port 80 vers 5080 ou 443 vers 5443 pour le https (c'est les front-ends)

Derrière tout se fait via la configuration dans HAProxy, tu associes un front-end avec un/plusieurs backend

Edit : typo <_<

Modifié par bud77
Lien vers le commentaire
Partager sur d’autres sites

D'après moi, c'est ton port 80 qui n'est pas routé au 5080

PS : utilise plutôt le SSL :)

j aimerais bien que cela ne soit que ca mais je suis sur a 90% de l avoir forwarde

je test ca tout a l heure

je suis tres chaud pour le ssl mais j aimerais utiliser un certificat afin de ne plus avoir ce message d lerte, et je me suis embrouille avec celui chope sur startssl qui ne marche pas. C est mon prochain chantier!

Lien vers le commentaire
Partager sur d’autres sites

petite question pour un noob:

j'ai cela:

NameVirtualHost *:

<VirtualHost *:>
 ServerName *
 DocumentRoot /var/services/web
</VirtualHost>

<VirtualHost *:>
 ServerName dsm.domain.synology.me
 ProxyPass / http://localhost:5000/
 ProxyPassReverse / http://localhost:5000/
</VirtualHost>

<VirtualHost *:>
 ServerName sab.domain.synology.me
 ProxyPass / http://localhost:9202/
 ProxyPassReverse / http://localhost:9202/
</VirtualHost>

<VirtualHost *:>
 ServerName sick.domain.synology.me
 ProxyPass / http://localhost:8081/
 ProxyPassReverse / http://localhost:8081/
</VirtualHost>

<VirtualHost *:>
 ServerName couch.domain.synology.me
 ProxyPass / http://localhost:5050/
 ProxyPassReverse / http://localhost:5050/
</VirtualHost>


NameVirtualHost *:443

<VirtualHost *:443>
 ServerName dsmssl.domain.synology.me
 SSLCipherSuite HIGH:MEDIUM
 SSLProtocol all -SSLv2
 SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
 SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
 SSLEngine on
 SSLProxyEngine on
 ProxyPass / https://localhost:5001/
 ProxyPassReverse / https://localhost:5001/
</VirtualHost>

dsm et sickfonctionnent mais pas sab et couch.

Une idée? Bien sur les ports sont OK.

Je lance l'accès par http://couch.domain.synology.me:8080/ et sur ma box le port 8080 est redirigé vers le 80

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Hello tout le monde!

Je relève l’affaire car j'ai deux petits soucis. J'ai réussi à mettre en place le reverse proxy pour mes applications, c'est cool!

Seulement:

1. je n'arrive pas à le faire pour Photo Station. J'ai tenté:

<VirtualHost *:443>
ServerName photo.domaine.net
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
ProxyPass / https://localhost:5008/
ProxyPassReverse / https://localhost:5008/
</VirtualHost>

(et l'équivalent en 80 plus haut dans mon fichier).

Et c'est impossible... Ahem, page d'erreur!

2. Depuis que j'ai mis en place cette solution, je peux accéder au DSM via une adresse type http://dsm.domaine.net ou https://dsm.domaine.net. Mais quand j'y suis, dans le DSM, je ne peux plus accéder à Config File Editor :wacko:

J'ai le droit à:

Firefox ne peut établir de connexion avec le serveur à l'adresse localhost:5000

Dans l’attente de vos lumières! ;)

EDIT

Les raccourcis Mail Station et Web Station ne fonctionnent plus non plus... :(

Modifié par Hayholten
Lien vers le commentaire
Partager sur d’autres sites

Salut,

Pour photostation, j'ai 'simplement' fait (acces par www):

<VirtualHost *:443>

ServerName www.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

DocumentRoot /var/packages/PhotoStation/target/photo

</VirtualHost>

Pour Config File Editor, j'ai le même problème que toi pour Shell In a Box.

En fait le widget lance l'application en local puisque, par le proxy, tu accedes au DSM par une adresse locale (redirection), même si tu es en externe.

Finalement, mon fichier hhtpd-local.conf est le suivant :

# -*- apache -*-

<IfModule !proxy_module>

LoadModule proxy_module modules/mod_proxy.so

</IfModule>

<IfModule !proxy_connect_module>

LoadModule proxy_connect_module modules/mod_proxy_connect.so

</IfModule>

<IfModule !proxy_http_module>

LoadModule proxy_http_module modules/mod_proxy_http.so

</IfModule>

NameVirtualHost *:80

# Site principal

<VirtualHost *:80>

ServerName *

DocumentRoot /var/services/web

</VirtualHost>

# PhotoStation

<VirtualHost *:80>

ServerName www.domaine.fr

DocumentRoot /var/packages/PhotoStation/target/photo

</VirtualHost>

NameVirtualHost *:443

# filestation

<VirtualHost *:443>

ServerName file.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

ProxyPass / https://localhost:9201/

ProxyPassReverse / https://localhost:9201/

</VirtualHost>

# photo

<VirtualHost *:443>

ServerName www.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

DocumentRoot /var/packages/PhotoStation/target/photo

</VirtualHost>

# dsm

<VirtualHost *:443>

ServerName dsm.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

ProxyPass / https://localhost:8081/

ProxyPassReverse / https://localhost:8081/

</VirtualHost>

#webdav

<VirtualHost *:443>

ServerName webdav.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

ProxyPass / https://localhost:9200/

ProxyPassReverse / https://localhost:9200/

</VirtualHost>

# nzb

<VirtualHost *:443>

ServerName nzb.domaine.fr

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt

SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key

SSLEngine on

SSLProxyEngine on

ProxyPass / https://localhost:9090/sabnzbd/

ProxyPassReverse / https://localhost:9090/sabnzbd/

</VirtualHost>

Modifié par aj13fr
Lien vers le commentaire
Partager sur d’autres sites

Salut aj13fr!

Merci beaucoup pour ta réponse ;-)

Le souci, c'est que j'ai un site en www.domaine.com. C'est pourquoi je cherche particulièrement à résoudre une adresse type: http://photo.domaine.com ET https://photo.domaine.com .

J'ai cru comprendre deci delà que ça fonctionnait pour certains...

Pour l'accès au DSM, je vais laisser tomber. Il y a trop de souci avec les applications ouvertes en local... Je pars me lancer dans l'installation d'un certificat SSL. Si quelqu'un a une solution pour Photo Station, je prends!!

;)

Lien vers le commentaire
Partager sur d’autres sites

Ben si tu mets photo.domaine.fr au lieu de www.domaine.fr dans le fichier, ça doit le faire !

# PhotoStation
<VirtualHost *:>
ServerName photo.domaine.fr
DocumentRoot /var/packages/PhotoStation/target/photo
</VirtualHost>

# photo
<VirtualHost *:443>
ServerName photo.domaine.fr
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on

DocumentRoot /var/packages/PhotoStation/target/photo
</VirtualHost>
 

(Perso j'ai mis www pour photostation car c'est plus 'commun' pour les personnes qui désirent acceder à un 'site' internet, car quand je donnais l'adresse de photostation, à chaque fois on me disait "je mets www devant ?" !!!)

Modifié par aj13fr
Lien vers le commentaire
Partager sur d’autres sites

Re!

Merci pour ce soutien... ;) malheureusement, cela ne fonctionne toujours pas... Voici mon fichier de config (qui vient en sus d'un autre, géré par le DSM pour des sous-domaines de site web):

<IfModule !proxy_module>
LoadModule proxy_module modules/mod_proxy.so
</IfModule>

<IfModule !proxy_connect_module>
LoadModule proxy_connect_module modules/mod_proxy_connect.so
</IfModule>

<IfModule !proxy_http_module>
LoadModule proxy_http_module modules/mod_proxy_http.so
</IfModule>

<IfModule !proxy_ftp_module>
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
</IfModule>

NameVirtualHost *:80

<VirtualHost *:80>
ServerName *
DocumentRoot /var/services/web
</VirtualHost>

<VirtualHost *:80>
ServerName file.domaine.com
ProxyRequests Off
ProxyVia Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:7000/
ProxyPassReverse / http://localhost:7000/
</VirtualHost>

<VirtualHost *:80>
ServerName audio.domaine.com
ProxyRequests Off
ProxyVia Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8800/
ProxyPassReverse / http://localhost:8800/
</VirtualHost>

<VirtualHost *:80>
ServerName video.domaine.com
ProxyRequests Off
ProxyVia Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:9007/
ProxyPassReverse / http://localhost:9007/
</VirtualHost>

<VirtualHost *:80>
ServerName download.domaine.com
ProxyRequests Off
ProxyVia Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8000/
ProxyPassReverse / http://localhost:8000/
</VirtualHost>

<VirtualHost *:80>
ServerName photo.domaine.com
DocumentRoot /var/packages/PhotoStation/target/photo
</VirtualHost>

NameVirtualHost *:443

<VirtualHost *:443>
ServerName file.domaine.com
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
ProxyPass / https://localhost:7001/
ProxyPassReverse / https://localhost:7001/
</VirtualHost>

<VirtualHost *:443>
ServerName audio.domaine.com
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
ProxyPass / https://localhost:8801/
ProxyPassReverse / https://localhost:8801/
</VirtualHost>

<VirtualHost *:443>
ServerName video.domaine.com
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
ProxyPass / https://localhost:9008/
ProxyPassReverse / https://localhost:9008/
</VirtualHost>

<VirtualHost *:443>
ServerName download.domaine.com
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
ProxyPass / https://localhost:8001/
ProxyPassReverse / https://localhost:8001/
</VirtualHost>

<VirtualHost *:443>
ServerName photo.domaine.com
SSLCipherSuite HIGH:MEDIUM
SSLProtocol all -SSLv2
SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/server.crt
SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/server.key
SSLEngine on
SSLProxyEngine on
DocumentRoot /var/packages/PhotoStation/target/photo
</VirtualHost>

A toute fin utile, il me parait important de préciser que mon "host" est en quelque sorte bloqué (volontairement). En effet, toute adresse du type http://domaine.com/quelquechose (en port 80 et 443) est bloqué par virtual host (cf. un autre sujet sur la question).

Bref, si cela a quelconque incidence, il faudrait que je puisse le contourner. Maintenant, deux choses:

1. dans tes configs exemples, je ne vois aucun port de routeur indiqué, c'est normal?

2. doit-on, au niveau du DSM et/ou Photo Station, spécifié un numéro de port particulier (notamment pour le https)?

Merci beaucoup ;-)

Modifié par Hayholten
Lien vers le commentaire
Partager sur d’autres sites

Dans ma config il n'y a pas de port car tout entre en https (443) et photostation est defini en https aussi.

Apres il y a des ports pour le dsm, file, etc....

Je viens de me souvenir d'une chose primordiale ! : ca marche chez moi car je suis resté en dsm4.0 .

La gestion de photostation a été modifiée sur la 4.1 (voir un de mes posts precedents où j'avais posé la question au support de Syno et j'étais repassé en 4.0 à cause de cela)

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.