GNU/Linux >> Znalost Linux >  >> Linux

Jak spouštět příkazy Shell přes HTTP Server

Dnes budeme diskutovat o zajímavé a užitečné utilitě s názvem "shell2http" které lze použít ke spouštění příkazů shellu přes http server. Na svém linuxovém boxu můžete spustit libovolné příkazy a výstup poslat svému kolegovi nebo příteli v místní síti, aby je zkontroloval. Může zobrazit výstup na webovém prohlížeči. Tento nástroj může být užitečný, pokud nechcete dát SSH přístup svému příteli. Jen se ho zeptejte, jaký výstup příkazu by chtěl vidět, a spusťte tento příkaz ve vašem místním systému a umožněte mu jej zobrazit ve webovém prohlížeči odkudkoli v místní síti. Váš přítel nepotřebuje přístup SSH k zobrazení výsledků jakéhokoli výstupu.

Stáhnout - Příručka zdarma:"Příručka programování modulu jádra Linuxu"

shell2http – Spouštění příkazů shellu prostřednictvím serveru HTTP

shell2http lze stáhnout z následujícího odkazu v závislosti na distribuci, kterou používáte. Bude podporovat GNU/Linux, Windows a Mac OS X.

  • Stáhněte si shell2http

Nebo spusťte následující příkazy ke stažení z terminálu:

Ujistěte se, že jste nainstalovali stahovač příkazového řádku wget a nástroj pro kompresi rozbalte .

Na systémech založených na RPM spusťte následující příkaz jako uživatel root a nainstalujte je.

$ yum install wget unzip

Na systémech založených na DEB spusťte:

$ sudo apt-get install wget unzip

Chcete-li stáhnout 64bitový shell2http:

$ wget https://github.com/msoap/shell2http/releases/download/1.7/shell2http-1.7.linux.amd64.zip

Chcete-li stáhnout 32bitový shellhttp:

$ wget https://github.com/msoap/shell2http/releases/download/1.7/shell2http-1.7.linux.386.zip

Extrahujte komprimovaný soubor na libovolné místo podle vašeho výběru.

$ unzip shell2http-1.7.linux.xxx.zip

Přejděte do extrahované složky a začněte používat shell2http.

Řekněme, že váš přítel chce zobrazit nainstalovanou verzi linuxového jádra vašeho systému.

Chcete-li to provést, spusťte:

$ shell2http -host 192.168.1.150 -port 8080 /kernel "uname -r"

Zde 192.168.1.150 je IP adresa vašeho místního systému. 8080 je číslo portu. /kernel - je cesta k zobrazení výstupu příkazu. A "uname -r" je příkaz k zobrazení verze jádra vašeho systému.

Ukázkový výstup:

2017/02/03 14:57:21 register: /kernel (uname -r)
2017/02/03 14:57:21 listen http://192.168.1.150:8080/

Pravděpodobně budete muset otevřít port „8080“ ve vašem firewallu nebo routeru. Na systémech, které používají firewall (např. RHEL, CentOS), spusťte následující příkaz jako uživatel root a otevřete port 8080:

# firewall-cmd --add-port=8080/tcp --permanent

Restartujte službu brány firewall pomocí příkazu:

# firewall-cmd --reload

Na systémech Debian a Ubuntu spusťte:

$ sudo ufw allow 8080

Jen se ujistěte, že port 8080 nebyl používán jinými aplikacemi. Pokud ano, uveďte v příkazu jiný port a povolte tento port také přes firewall.

Nyní řekněte svému příteli, aby otevřel svůj webový prohlížeč a nasměroval jej na "http://IP-adresa:8080/kernel" nebo "http://hostname:8080/kernel" . Je to jednoduché.

Ukázkový výstup:

Pokud chce váš přítel analyzovat využití disku, spusťte na místním systému následující příkaz.

$ shell2http -host 192.168.1.150 -port 8080 /diskusage "du -h"

A požádejte ho, aby otevřel cestu - http://IP-adresa:8080/diskusage ve svém webovém prohlížeči.

Chcete-li příkaz ukončit, stiskněte CTRL+C .

Docela šikovné, ne? Samozřejmě, že je!

Můžete také spojit dva příkazy a poslat výstupy svému příteli, jak je uvedeno níže.

V níže uvedeném příkladu spustím du a ps příkazy a odeslat výstup na http server.

$ shell2http /diskspace "df -h" /ps "ps aux"2017/02/03 15:09:34 register: /diskspace (df -h)

Ukázkový výstup:

2017/02/03 15:09:34 register: /ps (ps aux)
2017/02/03 15:09:34 listen http://:8080/

Všimli jste si výše uvedeného příkazu? Nezmínil jsem se o IP adrese mého systému. shell2http bude fungovat bez uvedení IP adresy nebo názvu hostitele.

Nyní může váš přítel zobrazit výstup místa na disku z adresy URL – http://IP-adresa:8080/diskspace a zobrazte výstup příkazu „ps“ pomocí adresy URL – http://IP-adresa:8080/ps .

Výstup na disku:

Výstup příkazu PS:

Odmítnutí odpovědnosti: Nástroj shell2http používejte opatrně pouze ve vaší důvěryhodné síti. Pokud neučiníte nezbytná opatření, může být váš server snadno ohrožen.


Linux
  1. Jak přiřadit výstup příkazu Linux k proměnné

  2. Jak přiřadit výstup příkazu proměnné shellu?

  3. Jak spouštět příkazy v Gnuplot pomocí skriptu Shell?

  1. 5 způsobů, jak spouštět příkazy UNIX / Linux (a skripty Shell) na pozadí

  2. Spouštějte příkazy na vzdáleném počítači pomocí PHP

  3. Jak mohu zacyklit výstup příkazu shellu?

  1. Jak provést příkaz v prostředí Shell bez jeho uložení do historie? [Tipy pro Linux]

  2. Jak odstranit první/poslední „n“ řádky z výstupu příkazu v prostředí Shell?

  3. Přesměrování výstupu příkazu v dockeru