Shell F'Kaxxa - Aċċess Linux SSH Terminal permezz tal-Web Browser


Shell In A Box (pronunzjata bħala shelinabox) huwa emulator tat-terminal ibbażat fuq il-web maħluq minn Markus Gutschke. Għandu web server inkorporat li jaħdem bħala klijent SSH ibbażat fuq il-web fuq port speċifikat u jqanqlek għal emulatur tat-terminal tal-web biex taċċessa u tikkontrolla l-Linux Server tiegħek SSH Shell mill-bogħod billi tuża kwalunkwe AJAX/JavaScript u CSS- ppermettiet browsers mingħajr il-ħtieġa ta’ plugins tal-browser addizzjonali bħal FireSSH.

F'dan it-tutorja, niddeskrivi kif tinstalla Shellinabox u taċċessa terminal SSH remot billi tuża web browser modern fuq kwalunkwe magna. L-aċċess SSH ibbażat fuq il-web għal servers Linux huwa utli ħafna meta tkun protett b'firewall u t-traffiku HTTPS biss jista' jgħaddi.

Installazzjoni ta' Shellinabox fuq Sistemi Linux

B'mod awtomatiku, l-għodda Shellinabox hija inkluża fuq distribuzzjonijiet Linux ibbażati fuq Debian permezz ta 'repożitorji default bl-użu tal-maniġer tal-pakkett default kif muri.

$ sudo apt install openssl shellinabox

Fuq distribuzzjonijiet ibbażati fuq Red Hat, trid tinstallah mis-sors billi tuża l-kmandi li ġejjin.

# 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

Konfigurazzjoni ta' Shellinabox fis-Sistemi Linux

B'mod awtomatiku, shelinaboxd jisma' fuq il-port TCP 4200 fuq localhost. Għal raġunijiet ta' sigurtà, nibdel dan il-port default għal każwali (jiġifieri 6175) biex jagħmilha diffiċli għal xi ħadd biex jilħaq il-kaxxa SSH tiegħek.

Barra minn hekk, waqt l-installazzjoni, jinħoloq awtomatikament ċertifikat SSL ġdid iffirmat minnu nnifsu taħt /var/lib/shellinabox biex juża protokoll HTTPS.

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

Agħmel il-bidliet fil-konfigurazzjoni kif muri hawn taħt...

# 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"

Ladarba tkun għamilt il-konfigurazzjoni, tista 'terġa' tibda u tivverifika s-servizz tal-shellinabox billi toħroġ il-kmandi li ġejjin.

$ sudo systemctl restart shellinabox
$ sudo systemctl status shellinabox

Issa ejja nivverifikaw jekk Shellinabox tkunx qed taħdem fuq il-port 6175 billi tuża l-kmand netstat.

$ sudo netstat -nap | grep shellinabox

Kun żgur li tassigura l-shellinabox tiegħek fuq il-firewall u tiftaħ il-port 6175 għal Indirizz IP speċifiku biex taċċessa l-qoxra tal-Linux tiegħek mill-bogħod.

------- 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

Aċċessa Linux SSH Terminal permezz tal-Web Browsers

Issa iftaħ il-web browser tiegħek, u naviga għal https://Your-IP-Adress:6175. Għandek tkun tista' tara terminal SSH ibbażat fuq il-web. Idħol billi tuża l-username u l-password tiegħek u għandek tiġi ppreżentata bil-pront tal-qoxra tiegħek.

Tista' tikklikkja bil-lemin biex tuża diversi karatteristiċi u azzjonijiet, inkluż li tbiddel id-dehra u s-sensazzjoni tal-qoxra tiegħek.

Għal aktar informazzjoni, żur il-paġna uffiċjali ta’ Shellinabox github.