ttyd for Debian =============== 1. Default configuration ------------------------ After installing ttyd it will by default listen on http://localhost:7681 in multi-user read-write "login"-mode: * multi-user means that more than one user can connect at the same time. * read-write means that anyone connecting to the website can input data. * Login mode means that the user gets a login prompt (like getty) where user and password has to be entered. Edit /etc/default/ttyd and check the ttyd(1) manpage for more information about available options. 2. Reverse proxy ---------------- To make ttyd accessible on the network, it is advised to hide it behind a reverse proxy that does TLS and performs user authentication. To enable the apache2 proxy configuration, the following modules and configuration need to be enabled: * sudo a2enmod proxy proxy_http proxy_http2 proxy_wstunnel * sudo a2enconf ttyd * sudo service apache2 reload ttyd is then accessible as . 3. Apache authentication ------------------------ The apache reverse-proxy configuration automatically includes /etc/ttyd/apache2-auth.conf, if existing, to protect access to '/ttyd'. There are some examples in /usr/share/doc/ttyd/examples that can be used as starting point. To enable HTTP basic authentication, the following steps can be used: * sudo mkdir -p /etc/ttyd * sudo ln -s /usr/share/doc/ttyd/examples/apache2-authbasic-file.conf \ /etc/ttyd/apache2-auth.conf * sudo htpasswd -c -b /etc/ttyd/htpasswd daniel password123 * sudo service apache2 reload This will allow the user 'daniel' to access ttyd with the password 'password123'. Further users can be added, see htpasswd(1). -- Daniel Baumann Sun, 21 Feb 2021 17:19:20 +0100