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.