Aller au contenu

Redirection HTTPS


Messages recommandés

Hello,

La semaine dernière j'ai enfin désinstallé Haproxy qui n'était plus supporté sur DSM 6.0 pour utiliser la nouvelle fonction de reverse proxy. Tout fonctionne super bien pour mes redirections url/port mais je n'ai par contre plus la redirection automatique vers le HTTPS que j'avais mis en place via Haproxy.

Il existe la redirection HTTPS auto du syno mais qui ne fonctionne que pour quelques services natifs, donc cette solution ne me convient pas vraiment.

Je me suis renseigné sur ce forum et sur internet en général pour trouver une solution mais jusque là je n'ai rien trouvé de convainquant.

Avez vous une solution à proposer pour rediriger le HTTP vers du HTTPS automatiquement, quelque soit le service appelé ?

Merci d'avance,

M.

Lien vers le commentaire
Partager sur d’autres sites

Je m'en suis sorti pour les services web mais j'ai du revoir ma config.

1) Supprimer les éventuelles règles du proxy inversé de DSM

2) Dans web station, créer un virtual host qui servira de règle de redirection avec :

  • Nom d'hôte : service.domain.fr
  • port : 80/443
  • protocole : HTTP/HTTPS
  • nom du sous-dossier  : web/service

Maintenant en entrant service.domain.fr on tombe sur l'application web service, installée dans le dossier web.

3) Créer un autre virtual host pour rediriger le traffic http vers https :

  • Nom d'hôte : domain.fr
  • port : 80
  • protocole : HTTP
  • nom du sous-dossier  : web

4) Créer un fichier .htaccess (le "." au début est important, il fait partie du nom de fichier) dans le dossier web, avec le contenu suivant :

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Dorénavant toutes les requêtes à destination d'un web service seront redirigées vers l'application concernée, et passées en HTTPS si besoin est.

En espérant que cette procédure puisse servir à d'autres :)

 

@Vinky Par contre cette technique ne fonctionne que pour les services web installés dans "/web". Comment tu t'en sors pour rediriger les applications natives, genre DSM ou Download ? Il y a bien l'option native de DSM, mais ça ne me plait pas vraiment d'avoir à ouvrir des ports supplémentaires sur mon routeur.

Merci pour le coup de main en tout cas.

Lien vers le commentaire
Partager sur d’autres sites

Je te confirme que cela fonctionne bien pour les autres applis également (toutes les urls qui sont liées au reverse proxy en tout cas, je n'ai pas essayé d'autres liens)

j'ai egalement activé l'option de redirection dans DSM. Je ne crois pas que ce soit elle qui fasse la redirection sur le reverse proxy

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

Virtual host : 

  • Nom d'hote --> url de dsm (ex : dsm.test.fr)
  • port (port utilisé pour http) : 80 par ex.
  • protocole http
  • fichier .htaccess comme tu l'as déclaré au dessus

Panneau de configuration --> portail des applications : 

  • onglet Application : Pour chaque application --> mettre le NDD souhaité individuellement (ex : audio.dsm.test.fr, video.dsm.test.fr, etc...)
  • onglet proxy inversé : protocole https, Nom d'hôte --> dsm.test.fr, destination : 127.0.0.1, port : 5001 (port inaccessible depuis l'extérieur)

 

Maintenant je peux taper n'importe qu'elle url, exemple : http://truc.dsm.test.fr , je suis redirigé vers https://truc.dsm.test.fr

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

Bonjour, 

Moi j'ai exactement le problème inverse...

Je m'explique : J'avais tout en https et j'en étais très content et je souhaiterai conserver cette configuration mais j'ai des redirections vers https intempestives... En clair j'utilise le paquet DNS Server sur mon syno pour que les url en local passent par l'ip local 192.168.x.x et qu'elles passent par l'IP public en passant par un accès externe.

Là où j'ai un problème c'est que j'utilise des rpi pour certains services (domotique, sono, ...) et il est plus simple de leur attribuer un sous-domaine que de retenir les IP mais lorsque je tente d'y accéder via rpi1.mondomaine.fr il m'envoie automatiquement vers https://rpi1.mondomaine.fr qui est bloqué par mon navigateur car certificat non valide (et pour cause y'en a pas...) alors que je voudrais simplement http://rpi1.mondomaine.fr.

Quelqu'un aurait une idée ??? Je précise que j'ai bien désactivé toutes les  options de redirections http=>https dans les paramètres du syno...

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Merci @Vinky, tout est ok maintenant. J'ai revu ma conf reverse proxy et j'ai tout redirigé sur les ports HTTPS des applications (5001, 8001...), sans utiliser la redirection que DSM propose.

@Giome Tu ne peux pas simplement ajouter un certificat pour tes services hébergés sur les RPIs avec let's encrypt ?

Lien vers le commentaire
Partager sur d’autres sites

@nougalo : j'y ai pensé mais ce n'est pas géré en natif, il me faudrait faire toutes les manips via ssh et je ne maîtrise pas suffisamment pour me lancer là-dedans... De plus si pour la domotique un certificat a du sens (bien que je préfère ne pas activer l'accès externe et piloter uniquement en local et utiliser un accès VPN au besoin) pour la sono ce serait du grand luxe...

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.