Kā piekļūt Linux servera terminālim tīmekļa pārlūkprogrammā, izmantojot Wetty (Web + tty) rīku


Kā sistēmas administrators, iespējams, izveidojat savienojumu ar attālajiem serveriem, izmantojot programmu, piemēram, GNOME Terminal (vai tamlīdzīgu), ja atrodaties Linux darbvirsmā, vai SSH klientu, piemēram, Putty, ja jums ir Windows mašīna, kamēr veicat citas darbības. uzdevumi, piemēram, tīmekļa pārlūkošana vai e-pasta pārbaude.

Vai tas nebūtu fantastiski, ja būtu veids, kā piekļūt attālajam Linux serverim tieši no tīmekļa pārlūkprogrammas? Par laimi mums visiem, ir rīks ar nosaukumu Wetty (Web + tty), kas ļauj mums to izdarīt - bez nepieciešamības pārslēgt programmas un visu no tā paša tīmekļa pārlūkprogrammas loga.

Wetty instalēšana centOS 7 un Debian 8

Wetty ir pieejams tā izstrādātāja GitHub krātuvē. Tādēļ neatkarīgi no izplatīšanas, kuru izmantojat, dažas atkarības vispirms jāinstalē manuāli, pirms lokāli klonē repozitoriju un instalē programmu.

Fedorā bāzētos distros (CentOS 7 un RHEL 7 vispirms ir jāiespējo EPEL repozitorijs):

# yum update && yum install epel-release git nodejs npm

Debian un tā atvasinājumos NodeJS versija, kas pieejama izplatīšanas krātuvēs no 2015. gada septembra (0.10.29), ir vecāka par minimālo versiju, kas nepieciešama Wetty instalēšanai (0.10.31), tāpēc tā jāinstalē no NodeJS GitHub izstrādātāja krātuve:

# aptitude install curl
# curl --silent --location https://deb.nodesource.com/setup_0.12 | bash -
# aptitude update && aptitude install -y git nodejs npm

Pēc šo atkarību instalēšanas klonējiet GitHub repozitoriju:

# git clone https://github.com/krishnasrinivas/wetty

Mainiet darba direktoriju uz wetty, kā norādīts iepriekš redzamajā ziņojumā:

# cd wetty

pēc tam instalējiet Wetty, palaižot:

# npm install

Ja instalēšanas laikā tiek parādīti kļūdu ziņojumi, lūdzu, pirms to turpināšanas, tos novērsiet. Manā gadījumā vajadzība pēc jaunākas NodeJS versijas Debianā bija problēma, kas bija jāatrisina pirms veiksmīgas npm instalēšanas.

Wetty un Access Linux Terminal palaišana no tīmekļa pārlūkprogrammas

Šajā brīdī jūs varētu sākt tīmekļa saskarni vietējā 8080 portā Wetty, palaižot (tas pieņem, ka jūsu pašreizējais darba direktorijs ir/wetty):

# node app.js -p 8080

Kā redzat attēlā zemāk:

Bet dariet sev labu un NEVADAT lietotājvārdu un paroli, jo šis savienojums nav drošs, un jūs nevēlaties, lai jūsu akreditācijas dati pārvietotos pa vadu neaizsargāti.

Šī iemesla dēļ jums vienmēr vajadzētu palaist Wetty, izmantojot HTTPS. Izveidosim pašparakstītu sertifikātu, lai nodrošinātu savienojumu ar attālo serveri:

# openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes

Un pēc tam izmantojiet to, lai palaistu Wetty, izmantojot HTTPS.

Lūdzu, ņemiet vērā, ka jums būs jāatver pielāgotais HTTPS ports, kurā vēlaties palaist Wetty:

# firewall-cmd --add-service=https # Run Wetty in the standard HTTPS port (443)
# firewall-cmd --permanent --add-service=https
# firewall-cmd --add-port=XXXX/tcp # Run Wetty on TCP port XXXX
# nohup node app.js --sslkey key.pem --sslcert cert.pem -p 8080 &

Pēdējā komanda iepriekšminētajā secībā Wetty tiks sākta fonā, klausoties portā 8080. Tā kā mēs izmantojam pašparakstītu sertifikātu, ir sagaidāms, ka pārlūkprogramma parādīs drošības brīdinājumu - to ir pilnīgi droši ignorēt un pievienot drošības izņēmumu - vai nu pastāvīgi, vai pašreizējai sesijai:

Pēc drošības izņēmuma apstiprināšanas jūs varēsit pieteikties savā VPS, izmantojot Wetty. Pats par sevi saprotams, ka visas komandas un programmas varat palaist tā, it kā jūs sēdētu reāla vai virtuāla termināļa priekšā, kā redzat šādā ekrānā: