Is there a proper way to host SMP and XFTP servers behind a reverse proxy ?

Open
#1,744 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Quiet

Research direction

Start by investigating the HAProxy TCP proxy with SNI approach described in the issue, including TLS 1.3 passthrough for SMP and XFTP and sharing port 443 with other domains. Done should be a documented supported configuration or a clear explanation of the limitation and an alternative deployment approach.

Written by the indexing model from the issue text.

Description

The small embedded web server for SMP is the easy piece as there is an option to use http: 8000 and so any reverse proxy can send the traffic to that.

My question is more on SMP and XFTP protocols, any of you had a chance to make it work with a HAProxy with TCP Proxy using SNI ?

My issue is that ideally it would be better to use 443 (if I only use 5223 I see this warning when launching the server: > WARNING: the clients will use port 443 by default soon.) but how can it use 443 if other domains are ?

As SMP is based on TLS1.3 is is possible to use the SSL routing based on SNI on HA Proxy ? This mode is only reading the SNI and don't touch on SSL (no offloading) and keep the TLS managed by the backends (here SMP and XFTP).

Any of you using something like this ? Or is there another alternative to host SMP/XFTP with other domains on 443 on the same IP address ? (which is a pretty common setup)

Thanks

Dominant language
Haskell
Stars
847
Forks
111
Avg merge
3d 11h
Merged PRs (30d)
9

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from simplex-chat/simplexmq

All issues in simplex-chat/simplexmq

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.