Ricerca nel sito web

Shell In A Box: accedi al terminale SSH Linux tramite browser Web


Shell In A Box (pronunciato come shellinabox) è un emulatore di terminale basato sul web creato da Markus Gutschke. Dispone di un server Web integrato che funziona come client SSH basato sul Web su una porta specificata e richiede un emulatore di terminale Web per accedere e controllare il tuo >Linux Server SSH Shell in remoto utilizzando qualsiasi browser AJAX/JavaScript e abilitato per CSS senza la necessità di plug-in aggiuntivi del browser come come FireSSH.

In questo tutorial descrivo come installare Shellinabox e accedere a un terminale SSH remoto utilizzando un browser Web moderno su qualsiasi macchina. L'accesso SSH basato sul Web ai server Linux è molto utile quando sei protetto con un firewall e solo il traffico HTTPS può passare.

Installazione di Shellinabox su sistemi Linux

Per impostazione predefinita, lo strumento Shellinabox è incluso nelle distribuzioni Linux basate su Debian tramite repository predefiniti utilizzando il gestore pacchetti predefinito come mostrato.

Installa Shellinabox su Debian, Ubuntu e Mint

sudo apt install openssl shellinabox

Installa Shellinabox su RHEL, Fedora, Rocky e AlamLinux

Sulle distribuzioni basate su Red Hat, devi installarlo dall'origine utilizzando i seguenti comandi.

yum install git openssl-devel pam-devel zlib-devel autoconf automake libtool
git clone https://github.com/shellinabox/shellinabox.git && cd shellinabox
autoreconf -i
./configure && make

Configurazione di Shellinabox nei sistemi Linux

Per impostazione predefinita, shellinaboxd è in ascolto sulla porta TCP 4200 su localhost. Per motivi di sicurezza, cambio questa porta predefinita in una casuale (ad esempio 6175) per rendere difficile a chiunque raggiungere la tua casella SSH.

Inoltre, durante l'installazione, un nuovo certificato SSL autofirmato viene creato automaticamente in "/var/lib/shellinabox" per utilizzare il protocollo HTTPS.

sudo vi /etc/default/shellinabox
OR 
sudo nano /etc/default/shellinabox

Apportare le modifiche alla configurazione come mostrato di seguito...

Should shellinaboxd start automatically
SHELLINABOX_DAEMON_START=1

TCP port that shellinboxd's webserver listens on
SHELLINABOX_PORT=6175

Parameters that are managed by the system and usually should not need
changing:
SHELLINABOX_DATADIR=/var/lib/shellinabox
SHELLINABOX_USER=shellinabox
SHELLINABOX_GROUP=shellinabox

Any optional arguments (e.g. extra service definitions).  Make sure
that that argument is quoted.
#
  Beeps are disabled because of reports of the VLC plugin crashing
  Firefox on Linux/x86_64.
SHELLINABOX_ARGS="--no-beep"

specify the IP address of an SSH server
OPTS="-s /:SSH:192.168.0.140"

if you want to restrict access to shellinaboxd from localhost only
OPTS="-s /:SSH:192.168.0.140 --localhost-only"

Una volta terminata la configurazione, puoi riavviare e verificare il servizio shellinabox immettendo i seguenti comandi.

sudo systemctl restart shellinabox
sudo systemctl status shellinabox

Ora verifichiamo se Shellinabox è in esecuzione sulla porta 6175 utilizzando il comando netstat.

sudo netstat -nap | grep shellinabox

Assicurati di proteggere la tua shellinabox sul firewall e di aprire la porta 6175 per un indirizzo IP specifico per accedere al tuo Shell Linux in remoto.

------- On Debian, Ubuntu and Mint -------
sudo ufw allow 6175/tcp
sudo ufw allow from 192.168.0.103 to any port 6175   

------- On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux -------
sudo firewall-cmd --zone=public --add-port=6175/tcp  
sudo firewall-cmd --zone=public --add-source=192.168.0.103/6175 --permanent

Accedi al terminale SSH Linux tramite browser Web

Ora apri il tuo browser web e vai a https://Your-IP-Adress:6175. Dovresti essere in grado di vedere un terminale SSH basato sul web. Accedi utilizzando il tuo nome utente e password e ti verrà presentato il prompt della shell.

Puoi fare clic con il pulsante destro del mouse per utilizzare diverse funzionalità e azioni, inclusa la modifica dell'aspetto della shell.

Per ulteriori informazioni, visitare la pagina github ufficiale di Shellinabox.