Checking ttyd connection…
ttyd Not Detected
The web terminal requires ttyd running on port 7681. Follow the steps below to install and start it. Once running, click Retry above.
# Install ttyd sudo apt install -y ttyd # Create a dedicated console user (restricted shell) sudo useradd -m -s /bin/bash cezen-console sudo passwd cezen-console
# /etc/systemd/system/cezen-ttyd.service
[Unit]
Description=Cezen Web Terminal (ttyd)
After=network.target
[Service]
ExecStart=/usr/bin/ttyd --port 7681 --interface 127.0.0.1 \
--credential admin:CezenConsole2024! \
login -f cezen-console
Restart=always
User=root
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable --now cezen-ttyd # Verify sudo systemctl status cezen-ttyd
⚠️ ttyd is bound to 127.0.0.1 only. Nginx proxies /console/ to localhost:7681 so it is accessible through this portal without exposing the port directly.
Nginx Proxy Config
Add this to your Nginx site config so /console/ tunnels to ttyd and /api/ routes to the FastAPI backend.
location /console/ {
proxy_pass http://127.0.0.1:7681/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_read_timeout 86400;
}
location /api/ {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
sudo nginx -t && sudo systemctl reload nginx