Săriți la conținut

Documentație

HestiaCP

HestiaCP este un panou de control open source pentru găzduire web. Provibr vorbește cu API-ul lui printr-o cheie de acces și administrează conturile de acolo: le creează, le suspendă și le reactivează, le mută în alt pachet și le șterge.

Activarea API-ului și accesul agentului

HestiaCP are un API propriu pe portul 8083, același port ca panoul. Începând cu versiunea 1.10 este activ implicit; setarea se află în Server settings, Security.

Panoul mai ține și o listă a adreselor care au voie să folosească acel API, iar la o instalare nouă lista este goală, ceea ce acolo înseamnă nimeni, nu oricine. Cât timp adresa publică a mașinii cu agentul dumneavoastră nu figurează în ea, fiecare apel este respins, deși cheia este bună.

Se setează în același ecran al panoului sau dintr-un terminal pe gazda panoului:

shell
v-change-sys-config-value API_ALLOWED_IP '<agent-ip>'
Comenzile și ieșirea din terminal sunt în engleză peste tot, în panou și în aceste pagini. Un singur text, un singur adevăr: ce citiți aici este literalmente ce va afișa gazda dumneavoastră.

O cheie de acces pentru Provibr

Cheia se creează în Access keys, pentru utilizatorul admin, lăsând lista de permisiuni goală:

shell
v-add-access-key admin "" "provibr-agent"
Comenzile și ieșirea din terminal sunt în engleză peste tot, în panou și în aceste pagini. Un singur text, un singur adevăr: ce citiți aici este literalmente ce va afișa gazda dumneavoastră.
Gol înseamnă toate comenzile, iar HestiaCP acceptă asta doar pentru administrator. Setul de permisiuni billing livrat din fabrică se apropie, dar lasă pe dinafară cele două comenzi care citesc pachetele și domeniile unui cont: cu acel set, amândouă rămân goale. O cheie poate fi revocată separat, iar de aceea Provibr cere una în loc de parola panoului.
HestiaCP blochează o adresă după cinci autentificări respinse, iar o comandă din afara permisiunilor unei chei se numără printre ele. De atunci panoul nu mai răspunde deloc: legătura nu mai eșuează cu un mesaj, ci expiră. Blocarea se ridică pe panou cu v-delete-firewall-ban, urmat de adresă și de cuvântul HESTIA.

Ce cere Provibr

Patru câmpuri. Agentul le păstrează în seiful lui, pe gazda dumneavoastră; Provibr nu le poate citi înapoi.

  • Adresa panoului, cu port, de exemplu https://panel.example.com:8083. Fără port, Provibr completează 8083.
  • ID-ul cheii: 20 de caractere. Nu este un secret. Panoul îl afișează singur.
  • Secretul: 40 de caractere, litere, cifre și semne de punctuație.
  • Amprenta SHA-256 a certificatului, cât timp panoul îl folosește pe cel autosemnat.
Http-ul necriptat este respins. Portul 8083 vorbește doar TLS, așa că o adresă http nu indică niciodată API-ul.

Certificatul

Un HestiaCP proaspăt instalat prezintă un certificat autosemnat. Dacă completați amprenta, agentul are încredere exact în acel certificat în loc să oprească verificarea. O citiți de pe orice mașină care ajunge la panou:

shell
openssl s_client -connect <host>:8083 </dev/null 2>/dev/null | \
  openssl x509 -noout -fingerprint -sha256
Comenzile și ieșirea din terminal sunt în engleză peste tot, în panou și în aceste pagini. Un singur text, un singur adevăr: ce citiți aici este literalmente ce va afișa gazda dumneavoastră.

De îndată ce dați panoului un certificat Let's Encrypt pe propriul nume de gazdă, lanțul se validează singur, iar câmpul poate rămâne gol. Acolo este și alegerea mai bună: un astfel de certificat se reînnoiește cam la nouăzeci de zile, iar unul fixat ar trebui înlocuit aici de fiecare dată. Testul de conexiune vă spune pe care dintre cele două îl aveți.

Pachete

HestiaCP descrie într-un pachet ce poate folosi un cont: spațiu pe disc, trafic și câte domenii, baze de date și căsuțe poștale. Provibr citește lista aceea și indică un pachet după nume; ce este în el rămâne al dumneavoastră.

Un plan de găzduire web în Provibr indică un pachet dintr-o integrare. Asta comandă clientul, iar prețul îl stabiliți dumneavoastră.

Ce face Provibr cu un cont

Cinci acțiuni, toate adresate prin numele de utilizator, același nume pe care Provibr îl păstrează drept identitate a acelui server.

  • Crearea unui cont, cu un domeniu, un pachet și o adresă de contact.
  • Suspendarea și reactivarea lui. Un cont suspendat nu se numără în capacitate.
  • Mutarea lui în alt pachet.
  • Ștergerea lui, cu tot ce ia panoul cu el.
Crearea costă două apeluri pe HestiaCP: unul pentru utilizator și unul pentru domeniu, pentru că nu există nicio comandă care să le facă pe amândouă. Dacă al doilea eșuează, de pildă fiindcă domeniul aparține deja altcuiva, agentul șterge utilizatorul tocmai creat și raportează eroarea inițială. Un domeniu respins nu lasă, așadar, niciodată un cont pe jumătate.

Spațiu pe disc și trafic

Fiecare citire a panoului aduce limita și consumul fiecărui cont, în megaocteți. Apar pe pagina serverului și în grafice, fără un al doilea apel care ar putea rămâne în urma primului.

Provibr nu administrează DNS, căsuțe poștale sau baze de date pe HestiaCP și nu există consolă. Acestea rămân în panoul însuși, unde dumneavoastră și clienții dumneavoastră le folosiți în continuare.

Conturile care există deja

Conturile create în afara Provibr pot fi importate din pagina integrării: agentul enumeră ce se află pe panou, iar dumneavoastră alegeți care dintre ele devin server în Provibr.

Un cont importat se numără în capacitate din acel moment, ca orice alt server web.

Ce nu face

Provibr administrează conturi, nu panoul: nu instalează HestiaCP, nu îl actualizează, nu schimbă setări de server și nu atinge DNS, poșta sau bazele de date. Citirea unui panou cu multe conturi costă un apel în plus pentru fiecare cont, pentru domenii, fiindcă HestiaCP nu are nicio comandă care să le enumere pe toate deodată.