Files
2026-10-19 18:42:35 +00:00

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 |
| :---: | :---: |
| ![Login Screen](Screenshots/LOGIN.png) | ![Session Overview](Screenshots/OVERVIEW.png) |
## 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/)