mirror of
https://github.com/m1ngsama/TNT.git
synced 2026-02-08 00:54:03 +00:00
TNT's Not Tunnel
- Upgrade RSA key size from 2048 to 4096 bits for stronger encryption - Fix key file permission time window with atomic generation: * Use umask(0077) before file creation * Generate key to temporary file first * Atomically rename to final location - Add configurable bind address via TNT_BIND_ADDR environment variable - Add configurable SSH log level via TNT_SSH_LOG_LEVEL (0-4) These changes address: - Weak 2048-bit RSA keys - Permission race condition during key generation - Hardcoded bind address limiting deployment flexibility - Inflexible logging configuration Environment variables: - TNT_BIND_ADDR: Bind address (default: 0.0.0.0) - TNT_SSH_LOG_LEVEL: SSH logging verbosity 0-4 (default: 1) |
||
|---|---|---|
| .github/workflows | ||
| include | ||
| src | ||
| .gitignore | ||
| CHANGELOG.md | ||
| CICD.md | ||
| DEPLOYMENT.md | ||
| HACKING | ||
| install.sh | ||
| LICENSE | ||
| Makefile | ||
| QUICKREF | ||
| README | ||
| README.md | ||
| test_basic.sh | ||
| test_stress.sh | ||
| tnt.service | ||
TNT
Terminal chat server. Vim-style interface. SSH-based.
Install
curl -sSL https://raw.githubusercontent.com/m1ngsama/TNT/main/install.sh | sh
Or download from releases.
Run
tnt # port 2222
tnt -p 3333 # custom port
PORT=3333 tnt # env var
Connect: ssh -p 2222 localhost
Keys
INSERT (default)
ESC→ NORMALEnter→ sendBackspace→ delete
NORMAL
i→ INSERT:→ COMMANDj/k→ scrollg/G→ top/bottom?→ help
COMMAND
:list→ users:help→ commandsESC→ back
Build
make # normal
make debug # with symbols
make asan # sanitizer
make check # static analysis
Requires: libssh
Deploy
See DEPLOYMENT.md for systemd setup.
Files
messages.log chat history
host_key SSH key (auto-gen)
tnt.service systemd unit
Test
./test_basic.sh # functional
./test_stress.sh 50 # 50 clients
Docs
README- man page styleHACKING- dev guideDEPLOYMENT.md- productionCICD.md- automationQUICKREF- cheat sheet
License
MIT