Ajaxterm- A web based terminal that help you use ssh from a web browser

Ajaxterm is a web based terminal. It was totally inspired and works almost  on all OS. Ajaxterm written in python (and some AJAX javascript for client side) and depends only on python2.3 or better. Ajaxterm is ”’very simple to install”’ on Linux, MacOS X, FreeBSD, Solaris, cygwin and any Unix that runs python2.3.

Lets  show  the  easy  install on  debian based  systems (Ubuntu, Linuxmint…)  In my case i used Ubuntu 10.10

Installation of Ajaxterm in debian based systems:

1- Open terminal and type the following command:

sudo apt-get install ajaxterm

2- Now you  have  to  edit  ssh_config and  enable   PasswordAuthentication then restart ssh.

sudo sed -i s:PasswordAuthentication.*:PasswordAuthentication yes: /etc/ssh/sshd_config
sudo service ssh restart


To test this if is working, open your browser and type :


Install Ajaxterm in other linux distributions:

To install Ajaxterm from source, issue the following commands

    wget http://antony.lesuisse.org/ajaxterm/files/Ajaxterm-0.10.tar.gz
    tar zxvf Ajaxterm-0.10.tar.gz
    cd Ajaxterm-0.10

Then point your browser to this URL : http://localhost:8022/

How  to access your  sshd  server  from  outside the  LAN  network using Ajaxterm?

– Make  a  clone  copy  from default  to ssl website  like 

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl

– Enable some  modules  for  proxy and  ssl

sudo a2enmod proxy_http
sudo a2enmod ssl
sudo a2ensite default-ssl

– Create  Ajaxterm  directory

sudo mkdir /srv/ajaxterm

– Create a username and password to protect the webpage of Ajaxterm:

sudo htpasswd -bc /srv/ajaxterm/.htpasswd pirat9 xxxxxxxx   

Now edit   the  virtualhost on  website


and  add these lines

ProxyRequests Off

                AuthUserFile /srv/ajaxterm/.htpasswd
                AuthName EnterPassword
                AuthType Basic
                require valid-user

                Order Deny,allow
                Allow from all

        ProxyPass / http://localhost:8022/
        ProxyPassReverse / http://localhost:8022/

Now restart apache and  dont  forget  to open  port 443  on your  router .

{loadposition user9}