Sniedziet citiem lietotājiem ierobežotu kontroli pār savu Raspberry Pi tīmekļa serveri, lai tie varētu veikt rutīnas uzdevumus.
Ja jūs izmantojat Raspberry Pi kā mājas serveri, visticamāk, tā pakalpojumiem piekļūst arī draugi un ģimene. Reizēm viņiem būs jāveic daži rutīnas uzdevumi, kuriem nepieciešama ierobežota servera kontrole.
OliveTin ir pašmitināta lietotne, kurai viņi var piekļūt, izmantojot tīmekļa pārlūkprogrammu, lai izpildītu iepriekš noteiktas komandas un jūsu definētus skriptus.
Kāpēc lietot OliveTin uz Raspberry Pi?
Viena borta datoru sērija Raspberry Pi nodrošina izcilus vieglus mājas serverus, un to ir salīdzinoši viegli iestatīt Raspberry Pi tīmekļa serveri.
Papildus vietņu un emuāru mitināšanai jūsu Raspberry Pi var mitināt fotogalerijas, pavārgrāmatas un tiešsaistes biroja komplekti. Jūs varat straumējiet filmas un pārraides savā televizorā, izmantojot Jellyfin, vai pašam izveidot audiogrāmatu bibliotēku ar audiogrāmatu plauktu.
Arī jūs nevarat būt ierobežots ar iespējamo lietotāju skaitu, tāpēc, ja nedzīvojat viens, jūs, iespējams, kopīgojat piekļuvi saviem Raspberry Pi pakalpojumiem ar citiem savas mājsaimniecības locekļiem.
Serveriem, tāpat kā jebkura cita veida datoriem, ir nepieciešama neregulāra apkope. Jūsu lietotājiem tas var būt nepieciešams sākt vai apturēt noteiktus pakalpojumus, izveidot savienojumu ar VPN, dublējiet failus vietnē Raspberry Pi, vai pārbaudiet tīkla problēmas.
Ja jūsu ģimene un mājinieki ir pazīstams ar Linux komandrindu, un jūs uzticaties viņiem, ka viņi nejauši vai apzināti neizjauc jūsu sistēmu, varat apsvērt iespēju piešķirt viņiem savus SSH akreditācijas datus kopā ar dalība sudo grupā, lai viņi varētu veikt šos uzdevumus, netraucējot jums.
Tas ir vilinošs, bet bīstams piedāvājums, un, ja kaut kas noiet greizi, tas būs jālabo jums. Izmantojot OliveTin, varat definēt ikdienas komandas, kas citiem servera lietotājiem var būt regulāri jāveic. Pēc tam viņi var atvērt tīmekļa pārlūkprogrammu un nospiest pogu, kas palaidīs komandu jūsu Pi — nekad nav jāpieskaras komandrindai.
Kā instalēt OliveTin vietnē Raspberry Pi
Vienkāršākais veids, kā instalēt OliveTin, ir izmantot Docker Compose. Ja jūsu Raspberry Pi vēl nav instalēts Docker un Docker Compose, skatiet mūsu būtisko ceļvedi vietnē kā instalēt Docker un Docker Compose operētājsistēmā Linux.
Izveidojiet savienojumu ar Raspberry Pi serveri, izmantojot Secure Shell (SSH):
ssh pi@tavs-vietējā-pi-ip-adrese
Izveidojiet jaunu OliveTin direktoriju un izmantojiet cd komanda, lai tajā pārvietotos:
mkdir olivetin && cd olivetīns
Izmantojiet nano teksta redaktoru, lai izveidotu jaunu Docker Compose failu:
nanodokeris-komponēt.yml
Kopējiet un ielīmējiet:
versija: "3.5"
pakalpojumi:
olivetīns:
konteinera_nosaukums: olivetīns
attēls: jamesread/olivetin
lietotājs: root
apjomi:
- ~/olivetin:/konfigurācija
- /var/run/docker.sock:/var/palaist/docker.zeķe
porti:
- "1337:1337"
restart: ja vien nav apturēts
tīkli:
tīmeklis:
sadaļa:
ārējais: taisnība
Tagad saglabājiet un izejiet no nano ar Ctrl+O tad Ctrl+X.
Pirms OliveTin palaišanas pirmo reizi ir jāizveido konfigurācijas fails. Šeit jūs definēsit komandas, kas lietotājiem jāizpilda. Pagaidām ievadiet:
pieskartieskonfigurācija.yaml
Izmantojiet OliveTin, lai sniegtu saviem lietotājiem ierobežotu servera kontroli
Terminālī ievadiet:
docker-compose up -d
Šī komanda parādīs Docker Compose atdalītajā režīmā. Docker Compose lejupielādēs OliveTin attēlus un iestatīs konteinerus. Šis process var aizņemt kādu laiku. Kad esat atgriezies komandu uzvednē, pārbaudiet, vai viss darbojas pareizi, izmantojot:
docker-compose ps
Atveriet pārlūkprogrammu un dodieties uz jūsu-pi-local-ip-adrese: 1337. Jums vajadzētu redzēt pelēku tīmekļa lapu ar OliveTin kājeni. Tagad esat gatavs sākt definēt komandas saviem lietotājiem.
Atgriežoties terminālī, izmantojiet nano, lai rediģētu iepriekš izveidoto konfigurācijas failu:
nanokonfigurācija.yaml
Sintakse ir vienkārša, un jūs varat definēt pakalpojumu nosaukumus un veicamās darbības līdzīgi šajā piemērā:
darbības:
- virsraksts: "Reboot serveri"
apvalks: atsāknēšana- virsraksts: "Ping Netflix"
apvalks: pingNetflix.com
- nosaukums: Restartējiet Apache
ikona: "🏁"
apvalks: restartējiet sudo pakalpojumu apache2
title lauks ir nosaukums, ko lietotāji var redzēt, kamēr komanda seko apvalks: ir komanda, kas faktiski tiks izpildīta jūsu Raspberry Pi.
OliveTin atbalsta unikoda ikonas, un jūs varat norādīt to HTML kodu ikonu sadaļā. Varat arī iestatīt pilnu URL attēlam, kuru vēlaties izmantot. Piemēram:
ikona: '<imgsrc = " https://www.makeuseof.com/public/build/images/muo-logo-full-colored-light.svg"platums = "81px"/>'
Lai gan mūsu konfigurācijā ir sniegti piemēri, kas restartēs Raspberry Pi, restartēs Apache un ping Netflix, norādītajām komandām nav ierobežojumu. Varat dot lietotājiem pogu, kas pārkopēs filmas no viena direktorija uz citu, ātri noslaukīs un pārrakstīt noteiktus direktorijus vai izveidot iznīcināšanas slēdzi, kas šifrēs jūsu atmiņas ierīces ar a izlases atslēga.
Kad esat apmierināts ar konfigurāciju, saglabājiet failu un izejiet no nano, nospiežot Ctrl+O tad Ctrl+X.
Jebkurš stdout, kas izveidots pogu nospiešanas rezultātā, tiek reģistrēts. Jūs varat redzēt žurnālus, nospiežot Baļķi pogu augšējā labajā stūrī. Izmantojot OliveTin, jūs varat arī ļaut lietotājiem dot komandas, kas pazīstamas kā argumenti, izmantojot tīmekļa saskarni — vai nu ar tekstlodziņu, vai ar nolaižamajām izvēlēm.
Tā kā pastāv briesmas, kas saistītas ar iespēju nepieredzējušiem lietotājiem izdot priviliģētas patvaļīgas komandas tieši jūsu Raspberry Pi serverim, varat ierobežot argumentu veidu, ko OliveTin pieņems.
Ātrai uzziņai ir šādi veidi:
Tips |
Pieņemtās vērtības |
---|---|
ļoti_bīstama_neapstrādāta_virkne |
Kā norāda nosaukums, lietotājs varēs ievadīt jebkuru tekstu vai komandu un likt to izpildīt |
starpt |
Jebkurš vesels pozitīvs skaitlis |
ascii |
Jebkuras rakstzīmes vai cipars, bet bez atstarpēm vai pieturzīmēm |
ascii_identifikators |
DNS un tamlīdzīgi |
ascii_teikums |
a-z, 0-9, ar atstarpēm, |
url |
Tīmekļa adrese |
Tekstlodziņa definīcija jūsu config.yaml fails ir formatēts šādi:
darbības:
- virsraksts: Atbalss kaut ko komandrindā
ikona: "⛔"
apvalks: atbalss {{ ziņa }}
argumenti:
- vārds: ziņa
veids: ļoti_bīstama_neapstrādāta_virkne
Tekstlodziņš parādīsies, kad kāds nospiedīs atbilstošo pogu, un ļaus jebkuram lietotājam jūsu lokālajā tīklā izpildīt patvaļīgu kodu, izmantojot pārlūkprogrammu. Tā nav pavisam laba ideja.
OliveTin ļauj lietotājiem viegli veikt pamata uzdevumus jūsu Raspberry Pi serverī
Raspberry Pi ir ideāla mājas servera platforma mitināšanas pakalpojumu sniegšanai jūsu ģimenei, un OliveTin ļauj viņiem viegli veikt vienkāršu apkopi, netraucējot jums.
Ir tūkstošiem pašu mitinātu projektu, kurus varat palaist, izmantojot Raspberry Pi, un kas dos labumu jūsu mājsaimniecībai. Veiciet izpēti un uzziniet, par kādiem pakalpojumiem jūs maksājat, par kuriem jūs varētu uzņemt sevi!