87 lines
2.4 KiB
Markdown
87 lines
2.4 KiB
Markdown
|
|
# Sessman 3270
|
|
|
|
A simple session manager for 3270 systems extending go3270
|
|
|
|
Written by a human with AI assistance as an attempt to see what hybrid development could consist of and produce. There is a default user in the example config with the same username as password.
|
|
|
|
|
|
## Features
|
|
|
|
- Persistent 3270 sessions originating from the sessman host
|
|
- Ability to reconnect to persistent session from another 3270
|
|
- PA3 hotkey to background the current session and return to the menu
|
|
- Multi user by design, public or password based authentication
|
|
- Line Commands to (H)old, (R)esume, (K)ill or start a (B)ackgrounded session
|
|
- Admin commands to kill sessions or shut down server remotely
|
|
- Cross platform, runs anywhere Go is supported
|
|
|
|
|
|
## Deployment
|
|
|
|
This project uses native Go tools, to generate a build run
|
|
|
|
```bash
|
|
go build
|
|
```
|
|
Installing sessman3270 consists of copying the config.toml.dist file and changing it to fit your needs.
|
|
- If you wish to use SSL/TLS this is set by command line flags
|
|
|
|
|
|
## Run
|
|
|
|
```bash
|
|
Usage of ./sessman3270:
|
|
-P Allow public access
|
|
-c string
|
|
Path to toml config file (default "config.toml")
|
|
-k string
|
|
Path to TLS private key file (PEM)
|
|
-l string
|
|
Listen address (default "0.0.0.0:2323")
|
|
-p string
|
|
Generate bcrypt hash for password and exit
|
|
-public
|
|
Allow public access
|
|
-t string
|
|
Path to TLS certificate file (PEM)
|
|
|
|
```
|
|
|
|
The most basic way to run sessman3270 is to start the executable, it will look for a config.toml or exit.
|
|
|
|
```bash
|
|
./sessman3270
|
|
```
|
|
|
|
Override the listen host with `-l`
|
|
```bash
|
|
./sessman3270 -l 192.168.1.20:623
|
|
```
|
|
|
|
Generate a password hash with `-p`
|
|
|
|
```bash
|
|
./sessman3270 -p $mySecretP4ssw0rd
|
|
```
|
|
|
|
Enable TLS by providing a key and certificate
|
|
|
|
```bash
|
|
./sessman3270 -c config.toml -k privkey.pem -t fullchain.pem
|
|
```
|
|
## Screenshots
|
|
|
|
| Login Screen | Session Overview |
|
|
| :---: | :---: |
|
|
|  |  |
|
|
|
|
## Acknowledgements
|
|
|
|
- [Go3270](https://https://github.com/racingmars/go3270)
|
|
- [Proxy3270](https://github.com/racingmars/proxy3270)
|
|
- [TUBES for z/OS](https://www.macro4.com/products/tubes-zos/)
|
|
- [Qwen3.6-35B-A3B-MTP-GGUF](https://huggingface.co/byteshape/Qwen3.6-35B-A3B-MTP-GGUF)
|
|
- [Gemini 3.8 Flash](https://blog.google/innovation-and-ai/models-and-research/gemini-models/3-8-flash-and-3-8-flash-cyber/)
|
|
|