From SME Server
Jump to navigationJump to search

Warning.png Warning:
Ajaxterm is no longer maintained since 2010 by its original author. You should consider to avoid this software as it may not be secure! As an example of an alternative try Shellinabox


Michael Weinberger


Contrib 9:
The latest version of smeserver-ajaxterm is available in the SME repository, click on the version number(s) for more information.


Ajaxterm is a web based terminal. See https://github.com/antonylesuisse/qweb and http://antony.lesuisse.org/software/ajaxterm/HEADER.html


/usr/bin/yum install --enablerepo=smecontribs smeserver-ajaxterm
expand-template /etc/httpd/conf/httpd.conf
service ajaxterm restart
service httpd-e-smith restart

after every ajaxterm restart you should issue a httpd-e-smith restart otherwise you will obtain a proxy error and httpd will disable the redirector.


Point your browser to https://yourdomain.com/ajaxterm/index.html

  • Login in to browser prompt as admin.
  • Login to shell access as any user, NB, you may need to enter the servername at Host and port and SSH Port depending on your configuration.




The Ajaxterm service is configurable by properties of the ajaxterm record in the SME server configuration database.

Restrict to login on localhost

config setprop Ajaxterm allowOnlyLocalhost yes
service ajaxterm restart

Only a login to local host is possible (default setting). Ajaxterm runs the 'su --login USER' command to login. You are asked for a username and password

Allow ssh login on all hosts

config setprop Ajaxterm allowOnlyLocalhost no
service ajaxterm restart

Ajaxterm runs the 'ssh' command to login to a host. You are asked for hostname or IP, ssh port, username and password. If localhost or is given as the host Ajaxterm falls back to the 'su --login USER' login command.

Browser login (Basic Auth)

By default login with user admin is required on browser login. You can change this to any other user or a list of users separated by blanks.

config setprop Ajaxterm basicAuthUsers "user [user] ..."
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart 

Terminal size

By default the size of the terminal is 80 x 25 characters. Use the following commands to set a new size.

config setprop Ajaxterm width NEWWIDTH
config setprop Ajaxterm height NEWHEIGHT
service ajaxterm restart

Note: Increasing the size may decrease the speed.

Web alias

The default web alias is ajaxterm. You can change it to any other name:

config setprop Ajaxterm webAlias NEWALIAS
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

Then point your browser to the new URL: https://yourdomain.com/NEWALIAS/index.html

Ajaxterm service port

By default Ajaxterm runs as a service (a python script) listening on port 8022. You can change the port using the following commands:

config setprop Ajaxterm servicePort NEWPORT
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart
service ajaxterm restart


This removes the installed Ajaxterm package.

service ajaxterm stop
/usr/bin/yum erase smeserver-ajaxterm
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart


Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-ajaxplorer component or use this link

"No open bugs found."