Shell In A Box - Pag-access sa Linux SSH Terminal pinaagi sa Web Browser


Ang Shell In A Box (gipahayag nga shellinabox) usa ka web-based nga terminal emulator nga gimugna ni Markus Gutschke. Kini adunay built-in nga web server nga nagdagan isip web-based SSH nga kliyente sa usa ka piho nga pantalan ug nag-aghat kanimo sa usa ka web terminal emulator aron ma-access ug makontrol ang imong Linux Server SSH Shell sa layo gamit ang bisan unsang AJAX/JavaScript ug CSS- gi-enable mga browser nga wala magkinahanglan og bisan unsang dugang nga mga plugins sa browser sama sa FireSSH.

Sa kini nga panudlo, akong gihulagway kung giunsa ang pag-install sa Shellinabox ug pag-access sa usa ka hilit nga SSH terminal gamit ang usa ka modernong web browser sa bisan unsang makina. Ang SSH nga nakabase sa web nga pag-access sa mga server sa Linux mapuslanon kaayo kung giprotektahan ka sa usa ka firewall ug ang trapiko sa HTTPS ra ang makalusot.

Pag-instalar sa Shellinabox sa Linux Systems

Sa kasagaran, ang himan sa Shellinabox gilakip sa mga distribusyon sa Linux nga nakabase sa Debian pinaagi sa mga default nga repository gamit ang default package manager sama sa gipakita.

$ sudo apt install openssl shellinabox

Sa Red Hat-based distributions, kinahanglan nimo kining i-install gikan sa tinubdan gamit ang mosunod nga mga command.

# 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

Pag-configure sa Shellinabox sa Linux Systems

Sa kasagaran, ang shellinaboxd naminaw sa TCP port 4200 sa localhost. Alang sa mga hinungdan sa seguridad, giusab nako kini nga default nga pantalan sa usa ka random (ie 6175) aron maglisud si bisan kinsa nga maabot ang imong SSH box.

Usab, sa panahon sa pag-instalar, ang usa ka bag-ong gipirmahan sa kaugalingon nga SSL nga sertipiko awtomatik nga gihimo ubos sa /var/lib/shellinabox aron magamit ang HTTPS protocol.

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

Himua ang mga pagbag-o sa pag-configure sama sa gipakita sa ubos…

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

Kung nahuman na nimo ang pag-configure, mahimo nimong i-restart ug pamatud-an ang serbisyo sa shellinabox pinaagi sa pag-isyu sa mosunod nga mga mando.

$ sudo systemctl restart shellinabox
$ sudo systemctl status shellinabox

Karon atong susihon kung ang Shellinabox nagdagan sa port 6175 gamit ang netstat command.

$ sudo netstat -nap | grep shellinabox

Siguruha nga masiguro nimo ang imong shellinabox sa firewall ug ablihan ang 6175 port alang sa usa ka piho nga IP Address aron ma-access ang imong shell sa Linux sa layo.

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

Pag-access sa Linux SSH Terminal pinaagi sa mga Web Browser

Karon ablihi ang imong web browser, ug navigate sa https://Your-IP-Adress:6175. Kinahanglan nimo nga makita ang usa ka web-based nga SSH terminal. Pag-log in gamit ang imong username ug password ug kinahanglan nimo nga ipakita ang imong shell prompt.

Mahimo nimong i-right-click aron magamit ang daghang mga bahin ug aksyon, lakip ang pagbag-o sa hitsura ug pagbati sa imong kabhang.

Alang sa dugang nga impormasyon, bisitaha ang opisyal nga Shellinabox github panid.