ttyd - Share your terminal over the web
-ttyd is a simple command-line tool for sharing terminal over the web, inspired by GoTTY.
-
ttyd - Share your terminal over the web
+ttyd is a simple command-line tool for sharing terminal over the web, inspired by GoTTY.
+
Features
--
-
- Build on libwebsockets with C for speed -
- Full terminal emulation based on hterm -
- SSL support based on OpenSSL -
- Run any custom command with options -
- Basic authentication support -
- Cross platform: macOS, Linux, OpenWrt/LEDE -
Installation
-Install on macOS
-Install with homebrew:
-brew install ttyd
- Install on Linux
-Ubuntu 16.04 as example:
+-
+
- Built on top of Libwebsockets with C for speed +
- Fully-featured terminal based on Xterm.js with CJK (Chinese, Japanese, Korean) and IME support +
- SSL support based on OpenSSL +
- Run any custom command with options +
- Basic authentication support and many other custom options +
- Cross platform: macOS, Linux, FreeBSD, OpenWrt/LEDE +
Installation
+Install on macOS
+Install with homebrew:
+brew install ttyd
+ Install on Linux
+Ubuntu 16.04 as example:
sudo apt-get install cmake g++ pkg-config git vim-common libwebsockets-dev libjson-c-dev libssl-dev
git clone https://github.com/tsl0922/ttyd.git
cd ttyd && mkdir build && cd build
cmake ..
make && make install
- ++NOTE: You may need to compile libwebsockets from source for ubuntu versions old than 16.04, since they have outdated-libwebsockets-devpackage (Issue #6). -Install on OpenWrt/LEDE
----opkg install ttyd- NOTE: This may only works for LEDE snapshots currently, if the install command fails, compile it yourself. --Usage
+
Install on OpenWrt/LEDE
+opkg install ttyd
+ + NOTE: This may only works for LEDE snapshots currently, if the install command fails, compile it yourself. ++
Usage
+Command-line Options
ttyd is a tool for sharing terminal over the web
USAGE:
- ttyd [options] []
+ ttyd [options] <command> [<arguments...>]
VERSION:
- 1.1.0
+ 1.2.0
OPTIONS:
- --port, -p Port to listen (default: 7681)
+ --port, -p Port to listen (default: 7681, use `0` for random port)
--interface, -i Network interface to bind
--credential, -c Credential for Basic Authentication (format: username:password)
--uid, -u User id to run with
@@ -74,19 +71,31 @@ OPTIONS:
--ssl-ca, -A Ssl ca file path
--debug, -d Set log level (0-9, default: 7)
--version, -v Print the version and exit
- --help, -h Print this text and exit
- ttyd starts web server at port 7681 by default, the command will be started with arguments as options. For example, run:
ttyd bash
- Then open http://localhost:7681, now you can see and control the bash console on your web broswer!
- TIP: You may replace-bashwithloginto get a login prompt first. -