shellinabox is a Web based AJAX terminal emulator which was written by Markus Gutschke. It’s not maintained from original author since 2012 and Luka Krajger forked the project and maintaining upto date.
By default shellinaboxd daemon implements a web server, that listens on TCP port
http://localhost:4200, which allows users to login with their username and password and to get access to their login shell.
All client-server communications are encrypted, if SSL/TLS certificates have been installed. During the installation a new self-signed SSL certificate automatically installed and details are available
/var/lib/shellinabox to use
HTTPS. Also we can install our own SSL certificate.
How to install Shellinabox from package manager
In distribution official repository shellinabox package is included, you can simple install the package using distribution package manager. Enable EPEL Repository to get shellinabox package in RHEL based systems.
$ sudo apt-get install openssl shellinabox
$ sudo yum install openssl shellinabox
$ sudo dnf install openssl shellinabox
Start the Service in systemd based systems.
$ sudo systemctl start shellinaboxd.service
Start the Service in sysvinit based systems.
$ sudo service shellinaboxd start
How to install Shellinabox from Source
Make a note, The package which is included, into distribution official repository is old one. If you want latest one, i will advise you to build from source package.
Dependencies for RHEL/CentOS based systems
$ sudo yum install git openssl-devel pam-devel openssl zlib-devel autoconf automake libtool
Dependencies for Fedora
$ sudo dnf install git openssl-devel pam-devel openssl zlib-devel autoconf automake libtool
Dependencies for Debian based systems
$ sudo apt-get install git libssl-dev openssl libpam0g-dev zlib1g-dev dh-autoreconf
Clone source files from github repository and move to project directory.
$ sudo git clone https://github.com/shellinabox/shellinabox.git && cd shellinabox
Run autotools in project directory
$ sudo autoreconf -i
Run configure and make in project directory
$ sudo ./configure && make
Start the Service in system.