Subj : Re: synchronet behind a reverse proxy To : martylake From : martylake Date : Wed Nov 24 2021 01:23:38 > Self-hosting is such a journey ! Everytime something is broken, I realize > it's my understanding of the whole setup that's broken too and I have to > learn something new. I am in the process of replacing traefik with haproxy. I got ssh, webv4 and telnet working so far. ws is a bit problematic because haproxy (from 2.1 https://www.haproxy.com/fr/blog/haproxy-2-1/ ) Defaulted HTTP Representation to HTX . Which means it feeds lowercased headers, and one needs to override this behavior by providing a dictionnary of headers not to be lowercased, and this insulting option h1-case-adjust-bogus-server With that solved, if I disable synchronet's HA_PROXY, the ws telnet works great. But if I enable HA_PROXY, term is complaining that ws did not provide enough information and shut downs the connexion. Here are some logs (is it good etiquette to paste logs like that in a post?), do you have an idea of what piece of configuration might be missing there ? ``` 11/24 09:16:12 srvc 0037 WS connection accepted from: 172.18.0.8 port 44168 11/24 09:16:12 srvc 0037 WS JavaScript service thread started 11/24 09:16:12 srvc 0037 WS Handshake Line: GET / HTTP/1.1 11/24 09:16:12 srvc 0037 WS Handshake Line: Host: forum.talbot.audio:11235 11/24 09:16:12 srvc 0037 WS Handshake Line: user-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:94.0) Gecko/20100101 Firefox/94.0 11/24 09:16:12 srvc 0037 WS Handshake Line: accept: */* 11/24 09:16:12 srvc 0037 WS Handshake Line: accept-language: fr,en-US;q=0.7,en;q=0.3 11/24 09:16:12 srvc 0037 WS Handshake Line: accept-encoding: gzip, deflate, br 11/24 09:16:12 srvc 0037 WS Handshake Line: Sec-WebSocket-Version: 13 11/24 09:16:12 srvc 0037 WS Handshake Line: Origin: https://forum.talbot.audio 11/24 09:16:12 srvc 0037 WS Handshake Line: Sec-WebSocket-Protocol: binary, base64, plain 11/24 09:16:12 srvc 0037 WS Handshake Line: sec-websocket-extensions: permessage-deflate 11/24 09:16:12 srvc 0037 WS Handshake Line: Sec-WebSocket-Key: U0lWMoq6Dw1Cr+ymvKzytw== 11/24 09:16:12 srvc 0037 WS Handshake Line: dnt: 1 11/24 09:16:12 srvc 0037 WS Handshake Line: Connection: Upgrade 11/24 09:16:12 srvc 0037 WS Handshake Line: sec-fetch-dest: websocket 11/24 09:16:12 srvc 0037 WS Handshake Line: sec-fetch-mode: websocket 11/24 09:16:12 srvc 0037 WS Handshake Line: sec-fetch-site: same-site 11/24 09:16:12 srvc 0037 WS Handshake Line: pragma: no-cache 11/24 09:16:12 srvc 0037 WS Handshake Line: cache-control: no-cache 11/24 09:16:12 srvc 0037 WS Handshake Line: Upgrade: websocket 11/24 09:16:12 srvc 0037 WS Handshake Line: X-Forwarded-For: 192.168.1.254 11/24 09:16:12 srvc 0037 WS Handshake Line: 11/24 09:16:12 srvc 0037 WS Connecting to localhost:23 11/24 09:16:12 term 0040 Working out client address from HAProxy PROTO 11/24 09:16:13 term 0040 multisock read_socket() - No data? 11/24 09:16:13 term 0040 * HAPROXY looking for version - failed [fffc01fffb17fffb1c] 11/24 09:16:13 srvc 0037 WS Server socket no longer connected 11/24 09:16:13 srvc 0037 WS service thread terminated (1 clients remain, 1 total, 3 served) nov. 24 10:16:13 alfred a02100129bc0[609]: 192.168.1.254:32852 [24/Nov/2021:09:16:12.448] fe_http~ be_ws_sbbs/sbbs_ws 0/0/2/43/1131 101 187 - - ---- 3/3/0/0/0 0/0 "GET / HTTP/1.1" ``` --- SBBSecho 3.14-Linux * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705) .