GNU/Linux >> Znalost Linux >  >> Linux

[Linux] :Shellinabox – Webový přístup k vašemu SSH terminálu

V tomto tutoriálu uvidíme, jak nainstalovat Shellinabox (Vyslovováno jako „Shell In A Box“) pro vzdálený přístup k terminálu Linux SSH pomocí webových prohlížečů podporujících AJAX/JavaScript a CSS. Za předpokladu, že váš linuxový server má povolenou bránu firewall a povoluje pouze nezbytné porty (říká HTTP(y)), pak je Shellinabox ideálním řešením, jak uživatelům poskytnout webový terminál Shell.

Instalace Shellinabox v systému Linux

Ve výchozím nastavení Shellinabox balíček je součástí všech repozitářů distribuce Linuxu včetně Debianu, Ubuntu a CentOS. Ujistěte se, že je váš repozitář povolený a dostupný pro instalaci shellinaboxu.

Na Debianu a Ubuntu

root@ubuntu:~# apt-cache search shellinabox
 shellinabox - publish command line shell through AJAX interface
 root@ubuntu:~#
root@ubuntu:~# apt-get install shellinabox
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 The following NEW packages will be installed:
 shellinabox
 ....
 ....
 Setting up shellinabox (2.14-1) ...
 Processing triggers for ureadahead (0.100.0-16) ...
 root@ubuntu:~#

Na RHEL, CentOS a Fedora

Nakonfigurujte úložiště yum na distribucích založených na RedHat. Dále musíte nakonfigurovat úložiště EPEL:

Jak povolit EPEL Repo:

Pro EL5:

[root@centos export]# rpm -Uvh
http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

Pro EL6:

[root@centos export]# rpm -Uvh
 http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

Pro EL7:

[root@centos export]# rpm -Uvh
 http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

Poté nainstalujte shellinabox pomocí následujícího yum příkaz.

#yum install shellinabox
 Loaded plugins: security
 Setting up Install Process
 Resolving Dependencies
 --> Running transaction check
 ---> Package shellinabox.x86_64 0:2.14-27.git88822c1.el5 set to be updated
 --> Finished Dependency Resolution
 ....
 ....
 ....
Complete!

Konfigurovat Shellinabox

Shellinabox má vestavěný webový server, který běží jako webový SSH klient a naslouchá na portu 4200. Z bezpečnostních důvodů můžete tento výchozí port změnit na náhodný port (např.:4312 nebo podle toho, co je volné). Ve výchozím nastavení se nový certifikát SSL s vlastním podpisem vytvoří automaticky pod „/var/lib/shellinabox ” pro použití protokolu HTTPS.

Jak zjistit, který port je volný

#telnet localhost <port_no>
or
#netstat -anp | grep <port_no>

V Debianu a Ubuntu

#vim /etc/default/shellinabox
# TCP port that shellinboxd's webserver listens on
 SHELLINABOX_PORT=4200

Na RHEL, CentOS a Fedora

# vi /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on
 PORT=4200

Spustit servisního démona Shellinabox

Po dokončení konfigurace můžete službu spustit zadáním následujícího příkazu:

V Debianu a Ubuntu

#service shellinabox start

Na RHEL a CentOS

#service shellinaboxd start

Ověřte službu

Zkontrolujte, zda se služba spustila správně a naslouchá na portu 4200 (port se může lišit v závislosti na výše uvedené konfiguraci) pomocí netstat příkaz, jak je znázorněno níže:

root@ubuntu:# netstat -anp | grep shellinabox
 tcp        0      0 0.0.0.0:4200            0.0.0.0:*               LISTEN      31331/shellinaboxd

Jak používat Shellinabox v prohlížeči

Otevřete webový prohlížeč a přejděte na https://server-ip:4200 . Nyní byste měli vidět webový terminál SSH, jak je znázorněno níže, s výzvou k přihlášení. Můžete se přihlásit pomocí svého SSH uživatelského jména a hesla a po úspěšném přihlášení se zobrazí výzva shellu.

Po odhlášení:


Linux
  1. Zaznamenejte svou terminálovou relaci pomocí Asciinema

  2. Jak vytvořit webový terminál pomocí xterm.js pro ssh do systému v místní síti

  3. Omezte přístup SSH na základě hesla na uživatele, ale povolte ověřování pomocí klíče

  1. Jaký je váš oblíbený trik s linuxovým terminálem?

  2. Jaký je váš oblíbený emulátor terminálu Linux?

  3. Vydejte se na dobrodružství ve svém linuxovém terminálu

  1. Jaký je váš oblíbený emulátor terminálu?

  2. Osm způsobů, jak chránit přístup SSH ve vašem systému

  3. Omezte přístup SSH podle IP adresy