dfdea81c20
renamed converge package to matchmaker.
2024-08-12 21:53:26 +02:00
54165f83c7
renamed modukle name so that pkgsite will work.
2024-08-12 21:31:15 +02:00
28b95ff5db
Addes agent address and client address to the client and agent info.
2024-08-12 15:23:07 +02:00
17f5e10547
ClientConnection no longer has public fields.
2024-08-11 19:01:39 +02:00
60e7cac61b
a lot of work to get prometheus monitoring better.
...
Now the duration is updated every second to get more accurate readings. Also, the time series are now cleaned up when they no longer exists. Previously, all time series were deleted and then everything was setup from scratch.
2024-08-11 17:49:52 +02:00
69a8a1aad3
much more clean handling of concurrency in the converge server by separating the administration from the matchmaking by putting admin in a separate package.
2024-08-11 16:17:11 +02:00
fc92286998
Added agent uid to the client info so that client and agent can be correlated in prometheus/grafana.
2024-08-10 18:57:57 +02:00
bd4e2c277b
Now showing information superscripts to hint that there are tooltipos available.
2024-08-10 17:49:41 +02:00
04c8b441ac
Now also logging the user's shell.
2024-08-10 17:28:51 +02:00
a56bb87983
One additional logging so that the user's environment info is also known.
2024-08-10 17:28:25 +02:00
1983ee24de
Code is more robust and should now never try to send a notification to a web client that can block, using a context with cancellation.
2024-08-10 17:27:50 +02:00
55468c7135
added tooltips.
2024-08-10 16:53:07 +02:00
2dffdfa442
Generalized persistence of forms in separate js file.
...
Some minor improvements to the usage instructions.
2024-08-10 16:26:49 +02:00
346996e761
with the previous fix connection loss was not detected anymore, now using the ping method based on writing data which is more robust but may take a bit longer for connection loss to be detected.
2024-08-10 13:23:59 +02:00
ffcf7c8599
the read call to check for connectivity was doing more harm than good. Removed it. In the end there were situations where the read was blocking indefinitely, finally leading to a deadlock situation.
2024-08-10 13:01:40 +02:00
7c387d5bb4
added environment info from the client.
2024-08-10 13:00:48 +02:00
Erik Brakkee
210b4ca0dd
remove some console logs in the javascript
...
prometheus now listening on separate port
fixed powershell command for setting up authorized keys.
2024-08-08 20:28:15 +02:00
14d72d077b
read of 0 bytes to detect connection loss.
2024-08-08 00:09:35 +02:00
4ced070495
consistent lower case on the usage page
2024-08-07 23:16:03 +02:00
11b0e997b1
an attempt to avoid flickering of the image (not 100% successful)
2024-08-07 23:12:25 +02:00
727ba4d75a
Added a banner and logo.
2024-08-07 23:09:40 +02:00
21e91a700c
prometheus monitoring now more complete. Including a guid to uniquely identify agents and clients.
2024-08-07 21:16:11 +02:00
b4da91f0e4
Merge remote-tracking branch 'origin/main'
2024-08-07 21:00:56 +02:00
86535683fa
ClientId is now a string instead of an int.
2024-08-07 21:00:41 +02:00
Erik Brakkee
9d1c6d6616
prometheus support step 1
...
updates to documentation.
2024-08-07 20:50:17 +02:00
68804761bf
public id is now shown on the sessions page since authorized keys are
...
used which is safer.
2024-08-06 22:50:24 +02:00
7af575119d
eliminated the username.
2024-08-06 22:38:59 +02:00
95926c5896
getting the bootstrap icons (not checking them in).
...
Split up instructions for working with agents.
2024-08-05 23:19:41 +02:00
7e60e23df1
A lot of work in getting cut and paste from the UI to
...
work properly.
Wrote two web components. One for cut and paste in general, and another for code samples.
2024-08-05 22:51:49 +02:00
02914ae40f
Simple validation of the id and the authorized keys.
2024-08-04 23:31:12 +02:00
1b76add15b
Alternative contextpath is now supported.
...
This will simplify hosting in cases where you have no control over DNS but only over one domain.
2024-08-03 23:10:57 +02:00
b875540d6b
Preparation for alternative context path.
...
The contextpath parameter in converge.go is
temporary and should be removed later. What is needed is autodetectio of the context path for the usage page and passing on the context for rendering.
2024-08-03 22:40:26 +02:00
a6bbafe593
fixed issue in usage page where local shell was not used at all.
2024-08-03 21:18:44 +02:00
d3f9c9fd5a
Lots of work on making easier interactive documentation, especially to make working with SSH public keys really easy.
...
Next step is to do more validation in the UI.
Specifically:
* validate authorized keys
* detection of accidental use of a private key
Then, password based access can be disabled.
2024-08-03 21:03:29 +02:00
db44a20d5a
large parts of the usage is now dynamic.
...
Still need to generate instructions for authorized keys. A lot of troubleshooting for the form to cookie persistence.
2024-08-03 18:29:14 +02:00
91e1139881
work in progress:
...
* usage page now has more dynamic part where user
can enter id and publis ssh keys and the server will
generate the appropriate commmands to execute depending on the local and remote shell.
2024-08-03 12:54:32 +02:00
7b9d1cb1b2
relative link to websocket did not work for some reason, reverted back to /.... link
2024-08-03 08:46:16 +02:00
Erik Brakkee
21463a5cad
* session will now expire some time after last user
...
activity and updated documentation.
* downloads will now download again. Because of hx-boost
the downloads where rendered in the browser. Now
disabling hx-boost for the downloads section.
* relative link for sessions page
2024-08-02 20:58:46 +02:00
5a91d86b39
fixed typo
2024-08-01 21:23:41 +02:00
b49a4e7613
remark about tcptows
2024-08-01 21:01:27 +02:00
0d60b70ada
Updated documentation:
...
* remote shell usage for linux, cmd, and powershell
* help of wsproxy.
2024-08-01 20:53:52 +02:00
ff97c1ccd2
Now by default wsproxy uses a specific protocol to establish connections to the server. It does this by adding the ?wsproxy query parameter.
...
The server then sends it the protocol version and the client connection info describing whether an agent was found or not. This improves usability for users.
With the --raw option it bypasses this query parameter and wsproxy then works in the old way as a simple stdio-websocket connector. It then still works with converge server but can also be used for simple websocket troubleshooting.
2024-08-01 20:22:41 +02:00
5c251daa47
Using # instead of id in the sessions page to avoid confusion with the term id used in the docs.
2024-08-01 19:21:39 +02:00
Erik Brakkee
2e12d0a9fd
Now displaying agent number instead of id.
...
Passing timezone to server side for rendering of time stamps
Configuration of preferred shells.
2024-08-01 19:16:00 +02:00
4c52fb0f12
Rendering status as HTML tables.
2024-07-31 21:12:09 +02:00
885b7790d7
doing the same thing as before but now rendering the
...
status using a template.
2024-07-31 19:52:01 +02:00
Erik Brakkee
f0dd810541
many small changes
...
* removed the Async utility
* now using Ping message to webclient for keep alive instaed of actual content
* added remote shell to AgentInfo
* retry of connections to the agent
* better logging for SynchronizeStreams
2024-07-31 19:30:38 +02:00
658aaf3880
typo in usage.html
2024-07-30 23:55:09 +02:00
01c9cdd60a
usage fix (agent was renamed by intellij to session)
...
Now using embedded timezone database by go so setting the TZ variable will work.
2024-07-30 23:48:52 +02:00
9a3618f06b
Live updates of the sessions.
...
V1 in ascii-art. To be improved.
2024-07-30 21:51:30 +02:00