Aller au contenu

Haproxy : Ssh Et Ssl Sur Le M


Messages recommandés

  • 1 mois après...

J'aurai une dernière question, comment ajouter ce type de chose en passant par l'interface GUI :

listen ssl :5443
tcp-request inspect-delay 2s
acl is_ssl req_ssl_ver 2:3.1
tcp-request content accept if is_ssl
use_backend ssh if !is_ssl
server www-ssl 127.0.0.1:5444
timeout client 2h
option forwardfor
option httpclose

Ou pour ce type de chose, je peux directement modifier le fichier de conf ?

Merci d'avance pour votre retour.

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines après...

Bonjour Diaoul et merci de ta réponse,

Voici ma config :

global
daemon
maxconn 256
log localhost user info
spread-checks 10

defaults
# mode http
stats enable
default-server inter 30s fastinter 5s
log global
# option httplog
timeout connect 5s
timeout client 50s
timeout server 50s
timeout tunnel 1h

listen stats :8280
mode http
stats uri /
stats show-legends
stats refresh 10s
stats realm Haproxy Statistics
stats auth admin:password


listen ssl :5443
tcp-request inspect-delay 2s
acl is_ssl req_ssl_ver 2:3.1
tcp-request content accept if is_ssl
use_backend ssh if !is_ssl
server www-ssl 127.0.0.1:5444
timeout client 2h
option forwardfor
option httpclose

frontend http
bind :5080
mode http
option http-server-close
use_backend proxy if { hdr_beg(Host) -i proxy. }
http-request redirect scheme https if { hdr_beg(Host) -i audio. file. dl. free. cam. }
default_backend web


frontend https
bind :5444 ssl crt /usr/local/haproxy/var/crt/default.pem
mode http
option http-server-close
option forwardfor

use_backend audio if { hdr_beg(Host) -i audio. }
use_backend file if { hdr_beg(Host) -i file. }
use_backend dl if { hdr_beg(Host) -i dl. }
use_backend free if { hdr_beg(Host) -i free. }
use_backend cam if { hdr_beg(Host) -i cam. }
default_backend web

backend web
mode http
server web localhost:80 check

backend audio
mode http
server audio localhost:8800 check

backend proxy
mode http
server proxy localhost:8280 check

backend file
mode http
server file localhost:7000 check

backend dl
mode http
server dl localhost:8000 check

backend cam
mode http
server cam localhost:9900 check

backend free
mode http
server free mafreebox.free.fr:80 check

backend ssh
mode tcp
server ssh :22
timeout server 2h

Avec la nouvelle version, ça ne fonctionne plus -> Je n'arrive pas à gérer à la fois la redirection des sous-domaines et la redirection du port 443 -> 22 si le protocole ssh est utilisé...

Tu as une idée ?

Merci.

Fabien

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

Bonjour à tous,

grâce à l'aide précieuse de Willy Tarreau de haproxy, j'ai réussi à faire fonctionner ssh et ssl sur port 443 comme avant.

Voici la config nécessaire pour la partie listen ssl :

listen ssl :5443
option logasap
option tcplog
tcp-request inspect-delay 3s
tcp-request content accept if !REQ_CONTENT
use_backend ssh if !REQ_CONTENT
server ssl :5444
timeout client 2h

Bonne journée à tous.

Fabien

Lien vers le commentaire
Partager sur d’autres sites

Salut Fabien,

Merci pour ta config, cela a réglé la partie ssl, je peux enfin me connecter en https sur mes différents sous domaines. Cependant, il m'est toujours impossible d'ouvrir une session ssh sur le port 443. Il doit y avoir une chose qui m'échappe dans ma conf. Peux tu m'envoyer ton fichier haproxy.cfg complet que je compare avec le mien? En MP, si tu préfères.

Cordialement et merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Salut Friedrich,

Voici ma config :

global
daemon
maxconn 256
log localhost user info
spread-checks 10
# debug

defaults
default-server inter 30s fastinter 5s
log global
timeout connect 5s
timeout client 50s
timeout server 50s
timeout tunnel 1h

listen stats :8280
mode http
stats uri /
stats show-legends
stats refresh 10s
stats realm Haproxy Statistics
stats auth admin:password

listen ssl :5443
option logasap
option tcplog
tcp-request inspect-delay 3s
tcp-request content accept if !REQ_CONTENT
use_backend ssh if !REQ_CONTENT
server ssl :5444
timeout client 2h

frontend http
bind :5080
mode http
option http-server-close
http-request redirect scheme https if { hdr_beg(Host) -i audio. file. dl. free. proxy. plex. syno. cam. }
redirect prefix if { hdr_end(Host) .domain.fr }
default_backend web

frontend https
bind :5444 ssl crt /usr/local/haproxy/var/crt/default.pem
mode http
option http-server-close
option forwardfor
rspirep ^Location: http://(.*)$ Location: https://1
use_backend audio if { hdr_beg(Host) -i audio. }
use_backend file if { hdr_beg(Host) -i file. }
use_backend dl if { hdr_beg(Host) -i dl. }
use_backend free if { hdr_beg(Host) -i free. }
use_backend plex if { hdr_beg(Host) -i plex. }
use_backend proxy if { hdr_beg(Host) -i proxy. }
use_backend syno if { hdr_beg(Host) -i syno. }
use_backend cam if { hdr_beg(Host) -i cam. }
default_backend web

backend web
mode http
server web :80 check

backend audio
mode http
server audio :8800 check

backend proxy
mode http
server proxy :8280 check

backend file
mode http
server file :7000 check

backend dl
mode http
server dl :8000 check

backend plex
mode http
redirect prefix http://domain.fr:32400/manage
# server plex :32400 check

backend free
mode http
server free mafreebox.free.fr:80 check

backend syno
mode http
server syno :9007 check

backend ssh
mode tcp
server ssh 192.168.1.1 :22
timeout server 2h

backend cam
mode http
redirect prefix https://domain.fr:5001/webman/3rdparty/SurveillanceStation/cgi

Tu te connectes comment en ssh ?

Fabien

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

Salut,

Je ne comprends pas, ma conf est semblable à la tienne mais toujours impossible de faire du ssh sur le 443.

Je lance la commande suivante:

ssh root@domain.fr -p 443

Et j'ai le message suivant:

ssh_exchange_identification: Connection closed by remote host

Cordialement

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

Salut,

Je viens de tester depuis mon taf avec un putty, et oh miracle cela fonctionne bien.

Je constate donc que la solution fourni par HaProxy fonctionne ou pas selon le client SSH utilisé.

J'ai testé depuis mon iphone avec WebSSH (appli gratos disponible sur l'AppStore) et le client SSH natif de mon MacBook. Là, je constate que cela ne fonctionne pas.

Si quelque d'autre passe par là, cela serait intéressant de voir si je suis le seul à rencontrer ce problème.

Il serait également intéressant de partager mon problème avec Willy Tarreau de haproxy. Il a peut être une explication rationnelle.

Cordialement

Lien vers le commentaire
Partager sur d’autres sites

  • 7 mois après...
  • 4 ans après...

je déterre ce post, car je souhaiterait (au minimum) pouvoir me connecter en ssh (même si pas le même port que pour SL).

L'idée est de faire pointer hyperbackup vers mon haproxy (v 1.8 installé ur Debian 9.6)

N'étant pas pro du tout, il me faut votre aide ...

Merci

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.