Shell Sa Usa ka Kahon - Usa ka Web-Based SSH Terminal aron Ma-access ang Remote Linux Servers


Ang Shell In A Box (gipahayag nga shellinabox) usa ka web based terminal emulator nga gimugna ni Markus Gutschke. Kini adunay built-in nga web server nga nagdagan ingon usa ka web-based nga 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 nga mga browser nga wala kinahanglana bisan unsang dugang nga mga plugin sa browser sama sa FireSSH.

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

Pag-instalar sa Shellinabox sa Linux

Sa kasagaran, ang himan sa Shellinabox gilakip sa daghang mga distribusyon sa Linux pinaagi sa mga default nga repository, lakip ang Debian, Ubuntu ug Linux Mint.

Siguruha nga ang imong repository nakahimo ug magamit aron ma-install ang Shellinabox gikan sa kana nga repository. Aron masusi, pangitaa ang Shellinabox gamit ang apt-cache nga sugo ug dayon i-install kini gamit ang apt-get nga sugo. \\

$ sudo apt-cache search shellinabox
$ sudo apt-get install openssl shellinabox

Sa mga pag-apod-apod nga nakabase sa Red Hat, kinahanglan nimo nga ma-enable ang EPEL repository ug dayon i-install kini gamit ang mosunod nga yum nga mando. (Dili kinahanglan nga i-enable sa mga tiggamit sa Fedora ang EPEL, bahin na kini sa proyekto sa Fedora).

# yum install openssl shellinabox

Pag-configure sa Shellinabox

Sa kasagaran, ang shellinaboxd naminaw sa TCP port 4200 sa localhost. Alang sa hinungdan sa seguridad, akong giusab kini nga default nga pantalan sa usa ka random (ie 6175) aron maglisud si bisan kinsa nga makaabut sa imong SSH box. Usab, sa panahon sa pag-instalar usa ka bag-ong gipirmahan nga SSL nga sertipiko nga awtomatiko nga gihimo sa ilawom sa /var/lib/shellinabox aron magamit ang HTTPS protocol.

$ sudo vi /etc/default/shellinabox
# TCP port that shellinboxd's webserver listens on
SHELLINABOX_PORT=6175

# specify the IP address of a destination SSH server
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125"

# if you want to restrict access to shellinaboxd from localhost only
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125 --localhost-only"
# vi /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on
PORT=6175

# specify the IP address of a destination SSH server
OPTS="-s /:SSH:172.16.25.125"

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

Pagsugod sa Shellinabox

Kung nahuman na nimo ang pag-configure, mahimo nimong sugdan ang serbisyo pinaagi sa pag-isyu sa pagsunod sa mando.

$ sudo service shellinaboxd start
# service shellinaboxd start
# systemctl enable shellinaboxd.service
# systemctl start shellinaboxd.service

I-verify ang Shellinabox

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

$ sudo netstat -nap | grep shellinabox
or
# netstat -nap | grep shellinabox
tcp        0      0 0.0.0.0:6175            0.0.0.0:*               LISTEN      12274/shellinaboxd

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

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

Mga Reperensya nga Link

Shellinabox Homepage