Implement Phase 1.4: replaces the hardcoded banner/timeout stub with a proper shell system. Adds a Shell interface with weighted registry for shell selection, a RecordingChannel wrapper (pass-through for now, prep for Phase 2.3 replay), and a bash-like shell with fake filesystem, terminal line reader, and command handling (pwd, ls, cd, cat, whoami, hostname, id, uname, exit). Sessions now log command/output pairs to the store and record the shell name. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
613 B
Plaintext
30 lines
613 B
Plaintext
log_level = "info"
|
|
log_format = "text" # "text" or "json"
|
|
|
|
[ssh]
|
|
listen_addr = ":2222"
|
|
host_key_path = "oubliette_host_key"
|
|
max_connections = 500
|
|
|
|
[auth]
|
|
accept_after = 10
|
|
credential_ttl = "24h"
|
|
|
|
[[auth.static_credentials]]
|
|
username = "root"
|
|
password = "toor"
|
|
|
|
[[auth.static_credentials]]
|
|
username = "admin"
|
|
password = "admin"
|
|
|
|
[storage]
|
|
db_path = "oubliette.db"
|
|
retention_days = 90
|
|
retention_interval = "1h"
|
|
|
|
[shell]
|
|
hostname = "ubuntu-server"
|
|
# banner = "Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-89-generic x86_64)\r\n\r\n"
|
|
# fake_user = "" # override username in prompt; empty = use authenticated user
|