Secure websocket (wss) fails when using forward_auth

I’ve implemented my custom authentication gateway that have worked perfectly during the past six months but today, when I decided to add electerm-web app to the protected set, it’s failing.

Here’s the Caddyfile:

#electerm-web
electerm-web.example.com:25100 {
	forward_auth 127.0.0.1:40000 {
		uri /verify
	}
	reverse_proxy 127.0.0.1:40104
}

When I try to reach electerm-web.example.com:25100, the initial loading screen of electerm-web shows up but it stays in that screen forever. Upon checking the chrome’s dev tools, I could see that electerm-web is trying to make wss connection to the endpoint but for some reason it’s failing.

WebSocket connection to ‘wss://electerm-web.example.com:25100/common/s?sessionId=&sftpId=&token=eyJXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjpXucgtml1h0UG-5Z0YLCTafK5XI’ failed:

Note 1: authentication gateway generates a cookie (let’s call it XXX_token) after successful authentication and uses that to verify the incoming request.

Note 2: I know that the issue has to do with forward_auth directive because if I remove it and just use reverse_proxy, electerm-web works just fine.

Any help is really appreciated.

log of electerm-web.example.com:25100:

|2024/07/26 06:40:53.318|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /, headers: {Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Pragma: [no-cache], Sec-Ch-Ua-Mobile: [?0], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Fetch-Site: [none], Sec-Fetch-Mode: [navigate], Cookie: [], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Upgrade-Insecure-Requests: [1], Sec-Fetch-Dest: [document], Sec-Ch-Ua-Platform: [\Windows\], Accept: [text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7], Sec-Fetch-User: [?1], Priority: [u=0, i]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.030243659, size: 22365, status: 200, resp_headers: {Server: [Caddy], Content-Type: [text/html; charset=utf-8], Content-Length: [22365], Etag: [W/\575d-l/hQU5OOxPszVrTAug765TDG6aI\], Date: [Fri, 26 Jul 2024 06:40:53 GMT]}}|
|---|---|---|---|---|
|2024/07/26 06:40:53.639|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /css/2.39.88-basic.css, headers: {Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Priority: [u=0], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Site: [same-origin], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Pragma: [no-cache], Cache-Control: [no-cache], Sec-Fetch-Mode: [no-cors], Cookie: [], Sec-Ch-Ua-Mobile: [?0], Accept: [text/css,*/*;q=0.1], Referer: [https://electerm-web.example.com:25100/], Accept-Encoding: [gzip, deflate, br, zstd], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Dest: [style]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.009876857, size: 3931, status: 200, resp_headers: {Etag: [W/\f5b-190eaecdcf5\], Content-Type: [text/css; charset=UTF-8], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Content-Length: [3931], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Server: [Caddy], Accept-Ranges: [bytes]}}|
|2024/07/26 06:40:53.641|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /js/rle-2.39.88.js, headers: {Accept: [*/*], Sec-Fetch-Site: [same-origin], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Pragma: [no-cache], Sec-Ch-Ua-Mobile: [?0], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/], Cookie: [], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], Priority: [u=1], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Origin: [https://electerm-web.example.com:25100]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.010927428, size: 7127, status: 200, resp_headers: {Cache-Control: [public, max-age=0], Content-Type: [application/javascript; charset=UTF-8], Content-Length: [7127], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Accept-Ranges: [bytes], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\1bd7-190eaecdcf5\], Server: [Caddy]}}|
|2024/07/26 06:40:53.652|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /js/basic-2.39.88.js, headers: {Pragma: [no-cache], Origin: [https://electerm-web.example.com:25100], Sec-Fetch-Site: [same-origin], Cookie: [], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], Priority: [u=1], Sec-Ch-Ua-Mobile: [?0], Accept: [*/*], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.021684439, size: 4604, status: 200, resp_headers: {Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Server: [Caddy], Cache-Control: [public, max-age=0], Etag: [W/\11fc-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Accept-Ranges: [bytes], Content-Type: [application/javascript; charset=UTF-8], Content-Length: [4604]}}|
|2024/07/26 06:40:53.805|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /images/electerm.png, headers: {Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Site: [same-origin], Sec-Fetch-Mode: [no-cors], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Accept: [image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Priority: [u=2, i], Pragma: [no-cache], Sec-Fetch-Dest: [image], Referer: [https://electerm-web.example.com:25100/], Accept-Encoding: [gzip, deflate, br, zstd]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.176052862, size: 16732, status: 200, resp_headers: {Etag: [W/\415c-190eaecdcf5\], Content-Length: [16732], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Server: [Caddy], Accept-Ranges: [bytes], Content-Type: [image/png], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT]}}|
|2024/07/26 06:40:53.833|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /css/2.39.88-index.css, headers: {Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/], Accept-Encoding: [gzip, deflate, br, zstd], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [text/css,*/*;q=0.1], Sec-Fetch-Dest: [style], Cookie: [], Pragma: [no-cache], Cache-Control: [no-cache], Sec-Fetch-Mode: [no-cors], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Priority: [u=0]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.203896933, size: 32945, status: 200, resp_headers: {Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\80b1-190eaecdcf5\], Content-Length: [32945], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Cache-Control: [public, max-age=0], Content-Type: [text/css; charset=UTF-8], Server: [Caddy], Accept-Ranges: [bytes]}}|
|2024/07/26 06:40:53.999|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /images/electerm-watermark.png, headers: {Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Pragma: [no-cache], Accept: [image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8], Sec-Fetch-Dest: [image], Accept-Encoding: [gzip, deflate, br, zstd], Cookie: [], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [no-cors], Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/], Priority: [u=1, i], Cache-Control: [no-cache], Sec-Ch-Ua-Mobile: [?0]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.002137291, size: 5647, status: 200, resp_headers: {Etag: [W/\160f-190eaecdcf5\], Content-Type: [image/png], Server: [Caddy], Cache-Control: [public, max-age=0], Content-Length: [5647], Date: [Fri, 26 Jul 2024 06:40:53 GMT], Accept-Ranges: [bytes], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT]}}|
|2024/07/26 06:40:54.030|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/path-2.39.88-b01dcf55.js, headers: {Cache-Control: [no-cache], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Sec-Fetch-Site: [same-origin], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/js/basic-2.39.88.js], Sec-Fetch-Mode: [cors], Cookie: [], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Priority: [u=1], Pragma: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Accept: [*/*], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.003691573, size: 870, status: 200, resp_headers: {Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\366-190eaecdcf5\], Content-Length: [870], Accept-Ranges: [bytes], Content-Type: [application/javascript; charset=UTF-8], Date: [Fri, 26 Jul 2024 06:40:54 GMT], Server: [Caddy], Cache-Control: [public, max-age=0]}}|
|2024/07/26 06:40:54.185|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/dayjs-2.39.88-d59f72c5.js, headers: {Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Dest: [script], Pragma: [no-cache], Sec-Fetch-Site: [same-origin], Origin: [https://electerm-web.example.com:25100], Sec-Fetch-Mode: [cors], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Referer: [https://electerm-web.example.com:25100/js/basic-2.39.88.js], Accept-Encoding: [gzip, deflate, br, zstd], Priority: [u=1], Accept: [*/*]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.136820357, size: 7055, status: 200, resp_headers: {Date: [Fri, 26 Jul 2024 06:40:54 GMT], Accept-Ranges: [bytes], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Server: [Caddy], Cache-Control: [public, max-age=0], Etag: [W/\1b8f-190eaecdcf5\], Content-Type: [application/javascript; charset=UTF-8], Content-Length: [7055]}}|
|2024/07/26 06:40:54.562|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/lodash-es-2.39.88-56ead73d.js, headers: {Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Accept: [*/*], Sec-Fetch-Dest: [script], Priority: [u=1], Sec-Ch-Ua-Mobile: [?0], Origin: [https://electerm-web.example.com:25100], Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/js/basic-2.39.88.js]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.530345599, size: 30226, status: 200, resp_headers: {Etag: [W/\7612-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:54 GMT], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Content-Type: [application/javascript; charset=UTF-8], Content-Length: [30226], Accept-Ranges: [bytes], Server: [Caddy]}}|
|2024/07/26 06:40:55.898|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/react-2.39.88-fc7967b2.js, headers: {Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Site: [same-origin], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Accept-Encoding: [gzip, deflate, br, zstd], Cookie: [], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [cors], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Accept: [*/*], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/js/rle-2.39.88.js], Priority: [u=1]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 1.871896983, size: 132357, status: 200, resp_headers: {Accept-Ranges: [bytes], Etag: [W/\20505-190eaecdcf5\], Content-Length: [132357], Date: [Fri, 26 Jul 2024 06:40:54 GMT], Server: [Caddy], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Content-Type: [application/javascript; charset=UTF-8]}}|
|2024/07/26 06:40:56.953|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/xterm-addon1-2.39.88-a6918604.js, headers: {Cache-Control: [no-cache], Accept: [*/*], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/js/rle-2.39.88.js], Priority: [u=1], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Pragma: [no-cache], Sec-Fetch-Site: [same-origin], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Origin: [https://electerm-web.example.com:25100], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 2.927526123, size: 285449, status: 200, resp_headers: {Server: [Caddy], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\45b09-190eaecdcf9\], Content-Length: [285449], Content-Type: [application/javascript; charset=UTF-8], Date: [Fri, 26 Jul 2024 06:40:54 GMT]}}|
|2024/07/26 06:40:57.285|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /rle.wasm, headers: {Cache-Control: [no-cache], Accept: [*/*], Cookie: [], Sec-Fetch-Dest: [empty], Referer: [https://electerm-web.example.com:25100/], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Sec-Fetch-Site: [same-origin], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], Priority: [u=1, i]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.139321057, size: 20654, status: 200, resp_headers: {Server: [Caddy], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\50ae-190eaecde55\], Date: [Fri, 26 Jul 2024 06:40:57 GMT], Content-Type: [application/wasm], Content-Length: [20654]}}|
|2024/07/26 06:40:57.693|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/antd1-2.39.88-c36bd786.js, headers: {Sec-Fetch-Mode: [cors], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Origin: [https://electerm-web.example.com:25100], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Site: [same-origin], Accept: [*/*], Cookie: [], Priority: [u=1], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Accept-Encoding: [gzip, deflate, br, zstd], Pragma: [no-cache], Cache-Control: [no-cache], Sec-Fetch-Dest: [script], Referer: [https://electerm-web.example.com:25100/js/basic-2.39.88.js]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 3.661552612, size: 420906, status: 200, resp_headers: {Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Server: [Caddy], Etag: [W/\66c2a-190eaecdcf9\], Content-Length: [420906], Date: [Fri, 26 Jul 2024 06:40:54 GMT], Content-Type: [application/javascript; charset=UTF-8]}}|
|2024/07/26 06:40:57.825|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/antd-2.39.88-889368f9.js, headers: {Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [*/*], Referer: [https://electerm-web.example.com:25100/js/basic-2.39.88.js], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Fetch-Dest: [script], Priority: [u=1], Sec-Fetch-Site: [same-origin], Cache-Control: [no-cache], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [cors], Cookie: []}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 3.793307588, size: 482405, status: 200, resp_headers: {Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\75c65-190eaecdcf9\], Content-Type: [application/javascript; charset=UTF-8], Content-Length: [482405], Date: [Fri, 26 Jul 2024 06:40:54 GMT], Server: [Caddy]}}|
|2024/07/26 06:40:58.006|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /js/worker-2.39.88.js, headers: {Sec-Fetch-Mode: [same-origin], Sec-Fetch-Dest: [worker], Referer: [https://electerm-web.example.com:25100/], Priority: [u=4, i], Accept: [*/*], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Fetch-Site: [same-origin], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], If-None-Match: [W/\57f-190eaecdcf5\], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001901527, size: 0, status: 304, resp_headers: {Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Server: [Caddy], Etag: [W/\57f-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT]}}|
|2024/07/26 06:40:58.067|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /favicon.ico, headers: {Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Site: [same-origin], Accept-Encoding: [gzip, deflate, br, zstd], Cache-Control: [no-cache], Sec-Ch-Ua-Mobile: [?0], Sec-Fetch-Dest: [image], Priority: [u=1, i], Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8], Referer: [https://electerm-web.example.com:25100/], Cookie: [], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [no-cors], Accept-Language: [en-US,en;q=0.9,fa;q=0.8]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001909458, size: 1150, status: 200, resp_headers: {Etag: [W/\47e-190eaecde55\], Content-Length: [1150], Accept-Ranges: [bytes], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Content-Type: [image/x-icon], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Server: [Caddy], Cache-Control: [public, max-age=0]}}|
|2024/07/26 06:40:58.166|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /js/electerm-2.39.88.js, headers: {Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Accept: [*/*], Sec-Fetch-Dest: [script], Priority: [u=1], If-None-Match: [W/\98451-190eaecdcf5\], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Origin: [https://electerm-web.example.com:25100], Sec-Fetch-Site: [same-origin], Sec-Fetch-Mode: [cors], Referer: [https://electerm-web.example.com:25100/], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Ch-Ua-Platform: [\Windows\], Accept-Encoding: [gzip, deflate, br, zstd]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001846686, size: 0, status: 304, resp_headers: {Server: [Caddy], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\98451-190eaecdcf5\]}}|
|2024/07/26 06:40:58.369|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/@ant-design/icons-2.39.88-569b74b0.js, headers: {Sec-Fetch-Dest: [script], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Site: [same-origin], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Mode: [cors], Priority: [u=1], Cookie: [], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Sec-Ch-Ua-Mobile: [?0], Accept: [*/*], Accept-Encoding: [gzip, deflate, br, zstd], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], If-None-Match: [W/\dcd5-190eaecdcf5\]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.004263754, size: 0, status: 304, resp_headers: {Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\dcd5-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Server: [Caddy]}}|
|2024/07/26 06:40:58.370|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/trzsz-2.39.88-d242b335.js, headers: {Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Site: [same-origin], Sec-Fetch-Dest: [script], Cookie: [], Priority: [u=1], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Mode: [cors], Accept-Encoding: [gzip, deflate, br, zstd], If-None-Match: [W/\15a67-190eaecdcf5\], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [*/*]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.004680973, size: 0, status: 304, resp_headers: {Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\15a67-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Server: [Caddy], Accept-Ranges: [bytes]}}|
|2024/07/26 06:40:58.370|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/manate-2.39.88-3a27ba52.js, headers: {Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Sec-Fetch-Site: [same-origin], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Sec-Ch-Ua-Platform: [\Windows\], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Fetch-Mode: [cors], Sec-Fetch-Dest: [script], Accept-Encoding: [gzip, deflate, br, zstd], Cookie: [], Priority: [u=1], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [*/*], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], If-None-Match: [W/\12a2-190eaecdcf5\]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.004156774, size: 0, status: 304, resp_headers: {Server: [Caddy], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\12a2-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT]}}|
|2024/07/26 06:40:58.528|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/xterm-addon2-2.39.88-ed2733f1.js, headers: {Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Fetch-Mode: [cors], Sec-Fetch-Dest: [script], Origin: [https://electerm-web.example.com:25100], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [*/*], Cookie: [], If-None-Match: [W/\1c35e-190eaecdcf9\], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Priority: [u=1], Sec-Ch-Ua-Mobile: [?0], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Site: [same-origin]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.003300066, size: 0, status: 304, resp_headers: {Server: [Caddy], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\1c35e-190eaecdcf9\], Date: [Fri, 26 Jul 2024 06:40:58 GMT]}}|
|2024/07/26 06:40:58.529|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/zmodem-ts-2.39.88-1da997d2.js, headers: {Accept-Language: [en-US,en;q=0.9,fa;q=0.8], If-None-Match: [W/\765-190eaecdcf5\], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Sec-Fetch-Site: [same-origin], Sec-Fetch-Dest: [script], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [cors], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Accept-Encoding: [gzip, deflate, br, zstd], Priority: [u=1], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept: [*/*], Cookie: [], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.003916177, size: 0, status: 304, resp_headers: {Date: [Fri, 26 Jul 2024 06:40:58 GMT], Server: [Caddy], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\765-190eaecdcf5\]}}|
|2024/07/26 06:40:58.529|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/xterm-2.39.88-2149f0c6.js, headers: {Sec-Fetch-Dest: [script], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Site: [same-origin], Sec-Fetch-Mode: [cors], If-None-Match: [W/\4366b-190eaecdcf9\], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Sec-Ch-Ua-Mobile: [?0], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Priority: [u=1], Accept: [*/*], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Origin: [https://electerm-web.example.com:25100], Accept-Encoding: [gzip, deflate, br, zstd]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.003156283, size: 0, status: 304, resp_headers: {Date: [Fri, 26 Jul 2024 06:40:58 GMT], Accept-Ranges: [bytes], Server: [Caddy], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\4366b-190eaecdcf9\]}}|
|2024/07/26 06:40:58.769|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/vscode-icons-js-2.39.88-da48f89a.js, headers: {Sec-Fetch-Mode: [cors], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], If-None-Match: [W/\1035d-190eaecdcf5\], Sec-Ch-Ua-Platform: [\Windows\], Accept: [*/*], Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Accept-Encoding: [gzip, deflate, br, zstd], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Mobile: [?0], Cookie: [], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Dest: [script], Priority: [u=1]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.004393006, size: 0, status: 304, resp_headers: {Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Server: [Caddy], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\1035d-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT]}}|
|2024/07/26 06:40:58.770|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /chunk/react-utils-2.39.88-198791d4.js, headers: {Cookie: [], If-None-Match: [W/\5408-190eaecdcf5\], Priority: [u=1], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Accept: [*/*], Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/js/electerm-2.39.88.js], Origin: [https://electerm-web.example.com:25100], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [cors], Sec-Fetch-Dest: [script], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept-Encoding: [gzip, deflate, br, zstd], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT], Accept-Language: [en-US,en;q=0.9,fa;q=0.8]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.003725735, size: 0, status: 304, resp_headers: {Etag: [W/\5408-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Accept-Ranges: [bytes], Cache-Control: [public, max-age=0], Server: [Caddy], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT]}}|
|2024/07/26 06:40:58.993|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /api/get-constants, headers: {Sec-Fetch-Mode: [cors], Sec-Fetch-Site: [same-origin], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], If-None-Match: [W/\34d7-o/1CEdvSgbBrM/a1DypqPNwI4Y8\], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Referer: [https://electerm-web.example.com:25100/], Priority: [u=1, i], Token: [eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI], Sec-Ch-Ua-Platform: [\Windows\], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Dest: [empty], Cookie: [], Accept: [application/json], Content-Type: [application/json]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.007130611, size: 13530, status: 200, resp_headers: {Server: [Caddy], Content-Length: [13530], Etag: [W/\34da-x9vcm7FjWe+inr6nndNejDFVhxs\], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Content-Type: [application/json; charset=utf-8]}}|
|2024/07/26 06:40:59.506|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 59998, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Pragma: [no-cache], Cache-Control: [no-cache], Upgrade: [websocket], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Websocket-Version: [13], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Key: [meCUZLtdjGb761Omg72Zcw==], Connection: [Upgrade], Accept-Encoding: [gzip, deflate, br, zstd]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001225264, size: 0, status: 302, resp_headers: {Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:40:58 GMT], Location: [https://electerm-web.example.com:50000/login]}}|
|2024/07/26 06:40:59.767|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 51908, client_ip: 88.88.88.88, proto: HTTP/3.0, method: GET, host: electerm-web.example.com:25100, uri: /images/electerm.svg, headers: {Accept-Encoding: [gzip, deflate, br, zstd], Sec-Ch-Ua: [\Not/A)Brand\;v=\8\, \Chromium\;v=\126\, \Google Chrome\;v=\126\], Sec-Ch-Ua-Mobile: [?0], Accept: [image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8], Sec-Fetch-Site: [same-origin], Referer: [https://electerm-web.example.com:25100/], Priority: [i], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Fetch-Dest: [image], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], If-None-Match: [W/\754-190eaecdcf5\], Sec-Ch-Ua-Platform: [\Windows\], Sec-Fetch-Mode: [no-cors], If-Modified-Since: [Thu, 25 Jul 2024 17:25:10 GMT]}, tls: {resumed: false, version: 772, cipher_suite: 4865, proto: h3, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.00200734, size: 0, status: 304, resp_headers: {Accept-Ranges: [bytes], Server: [Caddy], Cache-Control: [public, max-age=0], Last-Modified: [Thu, 25 Jul 2024 17:25:10 GMT], Etag: [W/\754-190eaecdcf5\], Date: [Fri, 26 Jul 2024 06:40:59 GMT]}}|
|2024/07/26 06:41:00.114|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 60004, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Connection: [Upgrade], Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Upgrade: [websocket], Origin: [https://electerm-web.example.com:25100], Accept-Encoding: [gzip, deflate, br, zstd], Cache-Control: [no-cache], Sec-Websocket-Version: [13], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Cookie: [], Sec-Websocket-Key: [0Po7vKQw0mwjV7ek4IS1+g==]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.000748715, size: 0, status: 302, resp_headers: {Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Location: [https://electerm-web.example.com:50000/login], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:40:59 GMT]}}|
|2024/07/26 06:41:00.785|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43658, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Connection: [Upgrade], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Accept-Encoding: [gzip, deflate, br, zstd], Cookie: [], Sec-Websocket-Key: [G74kcKZy8RI3U92l/400Lg==], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Websocket-Version: [13], Pragma: [no-cache], Cache-Control: [no-cache], Upgrade: [websocket]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.000862227, size: 0, status: 302, resp_headers: {Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:41:00 GMT], Location: [https://electerm-web.example.com:50000/login]}}|
|2024/07/26 06:41:01.386|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43674, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Upgrade: [websocket], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Version: [13], Cookie: [], Cache-Control: [no-cache], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Connection: [Upgrade], Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Websocket-Key: [/vj7+vMjKd7rtFQMfL/TKA==], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.000687152, size: 0, status: 302, resp_headers: {Date: [Fri, 26 Jul 2024 06:41:00 GMT], Location: [https://electerm-web.example.com:50000/login], Content-Length: [0], Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000]}}|
|2024/07/26 06:41:02.087|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43676, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Pragma: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Connection: [Upgrade], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Sec-Websocket-Version: [13], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Key: [ZoVmnYCWHUMN1H9itwOTtA==], Upgrade: [websocket], Cache-Control: [no-cache], Accept-Encoding: [gzip, deflate, br, zstd], Cookie: []}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.000964458, size: 0, status: 302, resp_headers: {Content-Length: [0], Date: [Fri, 26 Jul 2024 06:41:01 GMT], Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Location: [https://electerm-web.example.com:50000/login]}}|
|2024/07/26 06:41:02.745|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43692, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Connection: [Upgrade], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Pragma: [no-cache], Cache-Control: [no-cache], Upgrade: [websocket], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Version: [13], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cookie: [], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Websocket-Key: [PstUAK6Po4c8j4QspgZl5g==]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.000979809, size: 0, status: 302, resp_headers: {Location: [https://electerm-web.example.com:50000/login], Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:41:02 GMT]}}|
|2024/07/26 06:41:06.645|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43704, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {Pragma: [no-cache], Sec-Websocket-Version: [13], Sec-Websocket-Key: [AjocX4o/JjcFGBAqMTi0uQ==], Origin: [https://electerm-web.example.com:25100], Cookie: [], Accept-Encoding: [gzip, deflate, br, zstd], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Cache-Control: [no-cache], User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Upgrade: [websocket], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Connection: [Upgrade]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001043261, size: 0, status: 302, resp_headers: {Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:41:06 GMT], Location: [https://electerm-web.example.com:50000/login]}}|
|2024/07/26 06:41:08.031|e[34mINFOe[0m|http.log.access.log0|handled request|{request: {remote_ip: 88.88.88.88, remote_port: 43714, client_ip: 88.88.88.88, proto: HTTP/1.1, method: GET, host: electerm-web.example.com:25100, uri: /common/s?sessionId=&sftpId=&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRlZmF1bHRfdXNlciIsImlhdCI6MTcyMTkzMjExNCwiZXhwIjo1NTA4ODQ0MTE0fQ.TAwxPD-BedXEVq4WpXucgtml1h0UG-5Z0YLCTafK5XI, headers: {User-Agent: [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36], Cookie: [], Cache-Control: [no-cache], Origin: [https://electerm-web.example.com:25100], Sec-Websocket-Version: [13], Accept-Language: [en-US,en;q=0.9,fa;q=0.8], Connection: [Upgrade], Pragma: [no-cache], Sec-Websocket-Extensions: [permessage-deflate; client_max_window_bits], Upgrade: [websocket], Accept-Encoding: [gzip, deflate, br, zstd], Sec-Websocket-Key: [x+ubQ2Vm7nnZKgLYQjXC3g==]}, tls: {resumed: true, version: 772, cipher_suite: 4865, proto: http/1.1, server_name: electerm-web.example.com}}, bytes_read: 0, user_id: , duration: 0.001092641, size: 0, status: 302, resp_headers: {Server: [Caddy, Kestrel], Alt-Svc: [h3=\:25100\; ma=2592000], Content-Length: [0], Date: [Fri, 26 Jul 2024 06:41:07 GMT], Location: [https://electerm-web.example.com:50000/login]}}|

Please fill out the help topic template as per the forum rules. Show your debug logs. Without logs, it’s hard to say what’s going on.

1 Like

Updated with the logs;

https://electerm-web.example.com:50000/login is the authentication gateway for entering credentials.

Those are just access logs. What we need to see is your runtime logs (i.e. Caddy’s stderr output) with the debug global option enabled.

1 Like

I resolved the issue based on debug logs.
Thank you for pointing out that.

What was the problem?

2 Likes

Completely accidentally. the URI and query parameter that my authentication gateway was using was the same as electerm-web’s wss service which was causing the issue.

I renamed it to something more peculiar to resolve this issue and probable future cases.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.