Qutuda Shell - Veb Brauzer vasitəsilə Linux SSH Terminalına daxil olun


Shell In A Box (shellinabox kimi tələffüz olunur) Markus Qutschke tərəfindən yaradılmış veb əsaslı terminal emulyatorudur. O, müəyyən bir portda veb-əsaslı SSH müştərisi kimi işləyən daxili veb serverə malikdir və istənilən AJAX/JavaScript və CSS-dən istifadə edərək uzaqdan Linux Server SSH Shell-ə daxil olmaq və idarə etmək üçün sizi veb terminal emulyatoruna dəvət edir. aktivləşdirilmişbrauzerlər FireSSH kimi əlavə brauzer plaginlərinə ehtiyac olmadan.

Bu dərslikdə mən Shellinabox-u necə quraşdırmağı və istənilən maşında müasir veb brauzerdən istifadə edərək uzaq SSH terminalına necə daxil olmağı təsvir edirəm. Linux serverlərinə veb-əsaslı SSH girişi bir firewall ilə qorunduğunuz zaman çox faydalıdır və yalnız HTTPS trafiki keçə bilər.

Linux Sistemlərində Shellinabox quraşdırılması

Varsayılan olaraq, Shellinabox aləti göstərildiyi kimi standart paket menecerindən istifadə edərək defolt depolar vasitəsilə Debian əsaslı Linux paylamalarına daxil edilir.

$ sudo apt install openssl shellinabox

Red Hat əsaslı paylamalarda siz onu aşağıdakı əmrlərdən istifadə edərək mənbədən quraşdırmalısınız.

# 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

Linux Sistemlərində Shellinabox konfiqurasiyası

Varsayılan olaraq, shellinaboxd localhost-da TCP 4200 portunu dinləyir. Təhlükəsizlik səbəbləri ilə hər kəsin SSH qutunuza çatmasını çətinləşdirmək üçün bu standart portu təsadüfi (yəni 6175) portuna dəyişirəm.

Həmçinin, quraşdırma zamanı HTTPS protokolundan istifadə etmək üçün “/var/lib/shellinabox” altında avtomatik imzalanmış yeni SSL sertifikatı yaradılır.

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

Aşağıda göstərildiyi kimi konfiqurasiya dəyişikliklərini edin...

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

Konfiqurasiyanı tamamladıqdan sonra aşağıdakı əmrləri verməklə shellinabox xidmətini yenidən başladıb yoxlaya bilərsiniz.

$ sudo systemctl restart shellinabox
$ sudo systemctl status shellinabox

İndi Shellinabox-un netstat əmrindən istifadə edərək 6175 portunda işlədiyini yoxlayaq.

$ sudo netstat -nap | grep shellinabox

Shellinabox-unuzu firewallda qoruduğunuza əmin olun və Linux qabığınıza uzaqdan daxil olmaq üçün xüsusi IP ünvanı üçün 6175 portunu açın.

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

Veb Brauzerlər vasitəsilə Linux SSH Terminalına daxil olun

İndi veb brauzerinizi açın və https://Your-IP-Adress:6175 ünvanına keçin. Veb əsaslı SSH terminalını görə bilməlisiniz. İstifadəçi adınızı və şifrənizi istifadə edərək daxil olun və sizə shell sorğusu təqdim edilməlidir.

Qabığınızın görünüşünü və hissini dəyişdirmək də daxil olmaqla, bir neçə xüsusiyyət və əməliyyatdan istifadə etmək üçün sağ klikləyə bilərsiniz.

Əlavə məlumat üçün rəsmi Shellinabox github səhifəsinə daxil olun.