Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
anytermd(1)							   anytermd(1)

       anytermd	- A terminal-emulating HTTP daemon

       anytermd	 [--command  arg]  [--device  arg]  [--port  arg] [--user arg]
       [--auth	arg]  [--charset  arg]	[--foreground]	 [--diff]   [--nodiff]
       [--max-sessions	 arg]	[--max-http-connections	  arg]	[--local-only]
       [--name arg]

       anytermd	--help

       Anyterm provides	a terminal window on a web page, so you	can  run  com-
       mand-line programs on a machine even when the only access to it is over

       Anyterm consists	of some	Javascript on a	web  page,  an	XmlHttpRequest
       channel	on  standard  ports  back to the server, an HTTP proxy such as
       Apache's	mod_proxy and the Anyterm daemon. The daemon, anytermd,	uses a
       pseudo-terminal	to  communicate	with a shell or	other application, and
       includes	terminal emulation. Key	presses	are picked up by the Javscript
       which sends them	to the daemon; changes to the emulated screen are sent
       from the	daemon to the Javascript which updates	its  display.  Perfor-
       mance is	quite reasonable and SSL can be	used to	secure the connection.
       For security reasons, it	is highly recommended that anytermd NOT	be ex-
       posed directly to the Internet!	See the	section	SECURITY below.

       Default values are indicated in parentheses ().

       -c | --command arg (=/bin/bash)
	      Command to run in	terminal

       -d | --device arg
	      Device to	connect	to (e.g. serial	port)

       -p | --port arg (=8080)
	      Port number to listen on

       -u | --user arg
	      User to run as

       -a | --auth arg (=none)
	      Authorisation: none|null|trivial

       -s | --charset arg (=ascii)
	      Character	set

       -f | --foreground
	      run in foreground

       --diff Send only	differences to browser

       -n | --nodiff
	      Send whole screen	to browser each	time

       -m | --max-sessions arg (=20)
	      Maximum number of	simultaneous sessions

       --max-http-connections arg (=unlimited)
	      Maximum number of	simultaneous HTTP connections

	      Accept connections only from localhost

       --name arg (=anyterm)
	      Name used	for logging and	pid file

       --help show help	message

       Do not run anytermd as root.

       Anyterm's  code	has  not  been audited for security. It	is almost cer-
       tainly possible to cause	it to crash by sending it invalid  input,  and
       experience suggests that	this sort of weakness can also be exploited to
       allow arbitary code execution.

       Note that all CGI applications and similar programs are subject to this
       sort  of	 problem,  though  some	 are  better  written than others. The
       Anyterm code does not need run with a higher priviledge level than  any
       other  web application, so weaknesses in	Anyterm	do not put your	system
       at any higher risk than weaknesses in any other web application would.

       Avoid exposing anytermd directly	to the Internet.

       anytermd	should be used only as a backend service, reachable only via a
       frontend	 HTTPS	proxy,	such  as Apache, that requires authentication. gives examples of how to  set  this

       A  more	complete  and  up-to-date  discussion  of  security  issues in
       anytermd	can be found at

       If you just want	to test	Anyterm, you can do:

       anytermd	--local-only

       and then	connect	to http://localhost:8080 with your  Javascript-enabled
       web  browser.  The brower should	display	a terminal window containing a
       bash command prompt owned by the	user who started anytermd.

       If you want to set up SSH-over-HTTP access on localhost:8022, you might
       run it as:

       anytermd	 --command  "/usr/bin/ssh  -o  your-username@localhost"	--port
       8022 --user nobody --charset utf-8 --local-only

       Anyterm is more fully documented	on its web site,
       The web site may	be more	up-to-date than	this man page.

       Anyterm	is written by Phil Endecott.  This man page was	contributed by
       Eric Rossen.

Phil Endecott			    1.1.27			   anytermd(1)


Want to link to this manual page? Use this URL:

home | help