Utilizzo di shellinabox per accedere alla shell di una macchina Linux via Web

From RVM Wiki
Jump to navigation Jump to search

Installazione

Versione Debian

  • Questa versione ha problemi con i tasti - _ + in Firefox
sudo apt-get install shellinabox openssl

Compilazione pacchetto deb

  • Crea il pacchetto da gthub
cd /tmp
git clone https://github.com/shellinabox/shellinabox.git
sudo apt-get install git libssl-dev libpam0g-dev zlib1g-dev dh-autoreconf
cd shellinabox/
autoreconf -i
./configure && make
dpkg-buildpackage -b
dpkg -i ../shellinabox_*.deb

Configurazione

  • Cambio porta, abilitazione shell di login, e binding solo su localhost
sudoedit /etc/default/shellinabox
SHELLINABOX_PORT=4201
# ...
SHELLINABOX_ARGS="--no-beep -s/:LOGIN --localhost-only"
  • Abilitazione black background
cd /etc/shellinabox/options-enabled/
sudo mv "00+Black on White.css" "00-Black on White.css"
sudo mv "00_White On Black.css" "00+White On Black.css"
sudo /etc/init.d/shellinabox restart

Proxy

sudo apt-get install apache2
sudo a2enmod proxy
sudoedit /etc/apache2/conf.d/shellinabox
<Location /shell>
   ProxyPass http://localhost:4201/
   Order allow,deny
   Allow from 192.168.1.0/24
</Location>

Redirect permanent /shell https://myserver.example.priv.priv/shell
sudo /etc/init.d/apache2 restart

Autenticazione HTTP

sudoedit /etc/apache2/conf.d/shellinabox
<Location shell>
   # ....
   AuthUserFile /etc/shellinabox/htpasswd
   AuthName "Shell"
   AuthType Basic
   require valid-user
<Location shell>
sudo htpasswd -c /etc/shellinabox/htpasswd traffico
sudo /etc/init.d/apache2 restart

Test

  • Loggarsi su https:/myserver.example.priv/shell
  • Loggarsi su http:/myserver.example.priv/shell

Riferimenti