GoTTY - jagage oma Linuxi terminali (TTY) veebirakendusena
GoTTY on lihtne GoLangil põhinev käsurea tööriist, mis võimaldab teil oma terminali (TTY) veebirakendusena jagada. See muudab käsurea tööriistad veebirakendusteks.
See kasutab Chrome OS-i terminaliemulaatorit (hterm) JavaScripti põhise terminali käivitamiseks veebibrauserites. Ja mis veelgi tähtsam, GoTTY käitab veebipesa serverit, mis sisuliselt edastab TTY-st väljundi klientidele ja võtab klientidelt sisendi vastu (see tähendab, et klientide sisend on lubatud) ja edastab selle TTY-le.
Selle arhitektuur (hterm + veebipesa idee) sai inspiratsiooni Wetty programmist, mis võimaldab terminali HTTP ja HTTPS kaudu.
GoTTY käitamiseks peaks teil olema Linuxi installitud GoLang (Go programmeerimiskeel) keskkond.
Kuidas installida GoTTY Linuxi süsteemidesse
Kui teil on juba toimiv GoLangi keskkond, käivitage selle installimiseks käsk go get:
# go get github.com/yudai/gotty
Ülaltoodud käsk installib GoTTY binaarse keskkonnamuutuja GOBIN, proovige kontrollida, kas see on nii:
# ls $GOPATH/bin/
Kuidas kasutada GoTTY-d Linuxis
Selle käivitamiseks võite kasutada muutujat GOBIN env ja käsu automaatne täitmine järgmiselt:
# $GOBIN/gotty
Muul juhul käivitage GoTTY või mõni muu Go-programm, ilma et sisestaksite täieliku tee kahendkoodini, lisage oma GOBIN-muutuja failis ~/.profile
PATH-i, kasutades allolevat ekspordikäsku:
export PATH="$PATH:$GOBIN"
Salvestage fail ja sulgege see. Seejärel hankige fail ülaltoodud muudatuste tegemiseks:
# source ~/.profile
GoTTY käskude käitamise üldine süntaks on järgmine:
Usage: gotty [options] <Linux command here> [<arguments...>]
Nüüd käivitage GoTTY mis tahes käsuga, näiteks käsk df, et vaadata veebibrauserist süsteemi kettasektsioonide ruumi ja kasutamist:
# gotty df -h
GoTTY käivitab veebiserveri vaikimisi porti 8080. Seejärel avage oma veebibrauseris URL: http://127.0.0.1:8080/
ja näete töötavat käsku, nagu töötaks see teie terminalis:
Kuidas kohandada GoTTY-d Linuxis
Saate muuta vaikevalikuid ja oma terminali (hterm) profiilifailis ~/.gotty
, see laadib selle faili vaikimisi juhul, kui see on olemas.
See on peamine kohandamisfail, mida loevad käsklused, nii et looge see järgmiselt:
# touch ~/.gotty
Ja GoTTY kohandamiseks määrake seadistusvõimaluste jaoks oma kehtivad väärtused (leiate kõik seadistusvõimalused siit):
// Listen at port 9000 by default port = "9000" // Enable TSL/SSL by default enable_tls = true // hterm preferences // Smaller font and a little bit bluer background color preferences { font_size = 5, background_color = "rgb(16, 16, 32)" }
Oma faili index.html saate määrata käsurealt suvandi --index
abil:
# gotty --index /path/to/index.html uptime
Kuidas kasutada GoTTY turvafunktsioone
Kuna GoTTY ei paku vaikimisi usaldusväärset turvalisust, peate teatud allpool selgitatud turvaelemente käsitsi kasutama.
Pange tähele, et vaikimisi ei luba GoTTY klientidel sisestada TTY-sse, see võimaldab ainult akna suuruse muutmist.
Siiski võite kasutada valikuid -w
või --permit-write
, et kliendid saaksid kirjutada TTY-sse, mis pole soovitatav serveri turvaohtude tõttu.
Järgmine käsk kasutab faili fossmint.txt avamiseks veebibrauseris redigeerimiseks käsurea redaktorit:
# gotty -w vi fossmint.txt
Allpool on vi-liides veebibrauserist vaadatuna (kasutage siin vi-käske nagu tavaliselt):
Proovige aktiveerida põhiline autentimismehhanism, kus klientidel tuleb GoTTY serveriga ühenduse loomiseks sisestada määratud kasutajanimi ja parool.
Allpool olev käsk piirab kliendi juurdepääsu, kasutades valikut -c
, et küsida kasutajatelt määratud mandaate (kasutajanimi: test ja parool: @ 67890):
# gotty -w -p "9000" -c "test:@67890" glances
Teine võimalus serverile juurdepääsu piiramiseks on valiku -r
kasutamine. Siin genereerib GoTTY juhusliku URL-i, nii et ainult URL-i tundvad kasutajad pääsevad serverile juurde.
Kasutage veebibrauseri liidese pealkirja määratlemiseks ka valikut –tiitli-vormingus „GoTTY - {{.Command}} ({{.Hostname}})” ja süsteemi jälgimise statistika kuvamiseks kasutatakse käsku pilgud:
# gotty -r --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances
Järgmine on ülaltoodud käsu tulemus veebibrauseri liideselt vaadatuna:
Kuna vaikimisi ei ole kõik serveri ja klientide vahelised ühendused krüpteeritud, peate GoTTY kaudu salajase teabe, näiteks kasutajaandmete või muu teabe saatmisel kasutama -t
või - -tls
valik, mis võimaldab seansil TLS/SSL-i:
GoTTY loeb vaikimisi sertifikaadifaili ~/.gotty.crt
ja võtmefaili ~/.gotty.key
ning alustab seetõttu ka ise allkirjastatud sertifikaadi loomist võtmefailina, kasutades allpool olevat käsku openssl (vastake sert- ja võtmefailide genereerimiseks esitatud küsimusele):
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ~/.gotty.key -out ~/.gotty.crt
Seejärel kasutage GoTTY-d turvalisel viisil, kui SSL/TLS on lubatud järgmiselt:
# gotty -tr --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances
Võite kasutada pilkude käsku (veenduge, et olete installinud tmux):
# gotty tmux new -A -s gotty glances
Erineva konfiguratsioonifaili lugemiseks kasutage valikut –config “/ path/to/file” nii:
# gotty -tr --config "~/gotty_new_config" --title-format "GoTTY - {{ .Command }} ({{ .Hostname }})" glances
GoTTY versiooni kuvamiseks käivitage käsk:
# gotty -v
Kasutamisnäidete leidmiseks külastage GoTTY GitHubi hoidlat: https://github.com/yudai/gotty
See on kõik! Kas olete seda proovinud? Kuidas leiate GoTTY? Jagage oma mõtteid meiega allpool oleva tagasisidevormi kaudu.