Tutorial instalare Virtualmin, Webmin, Ubuntu pe VPS
Update:
Romanian: Tutorial instalare Virtualmin și Webmin pe VPS (OVH) cu Ubuntu 18.04
English: Tutorial Virtualmin setup on VPS from OVH running Ubuntu 18.04
Material realizat cu susținerea SmartVPS, un serviciu Teen Telecom. Cei care optează pentru un plan VPS de la ei au 10% discount folosind codul: 10SMARTSTANDARD
Acesta este un material care prezintă pas cu pas instalarea Webmin, Virtualmin pe un VPS (Virtual Private Server).
Se adresează celor care doresc să experimenteze administrarea unui server Linux, hosting, sau celor care doresc să-și administreze propriile domenii cu o flexibilitate mai mare decât cea pe care le-o oferă o soluție de shared hosting.
Chestiuni teoretice, prezentare soft
- Ubuntu: Este un sistem de operare Linux, derivat din Debian. Este dezvoltat de către Canonical și este oferit gratuit, monetizarea venind din vânzarea suportului tehnic. Ubuntu oferă sisteme de operare pentru servere, desktop-uri cât și pentru terminale mobile. Ne vom axa aici pe sistemul de operare pentru servere, în special suitele LTS, Long Term Support. Mai multe detalii aici: http://www.ubuntu.com/server
- Webmin / Virtualmin: Webmin este o unealtă web pentru configurarea sistemelor Unix. Virtualmin este un panou de control care oferă posibilitatea de a configura domenii pentru hosting. Este bazat pe Webmin și este o foarte bună alternativă, gratuită, la CPanel.
- VPS: Virtual Private Server sau Virtual Dedicated Server. Este o mașină virtuală, independentă, izolată. Pe un server fizic pot rula mai multe astfel de mașini virtuale permițând astfel partajarea resurselor. Fiecare masina virtuală poate rula propriul ei sistem de operare, poate fi oprită, restartată funcționând ca un server fizic, diferența fiind că restart-ul, boot-ul și alte operațiuni se fac la nivel software fiind astfel mult mai rapide. Management-ul unei mașini virtuale se face dintr-un panou de control, oferit de cei la care aveți VPS-ul.
Cei de la Teen, care îmi asigură acest VPS , oferă OpenVZ ca soluție de virtualizare pentru abonamentele de tip standard. Este o soluție de virtualizare bazată pe kernel-ul Linux cu impact minim asupra performantei. Detalii și panoul de control oferit de SmartVPS vor fi detaliate mai jos. - PuTTY: este un emulator de terminal, gratuit. Îl puteți downloada de aici: http://www.putty.org/ . Vă permite să vă conectați prin SSH la VPS și puteți gestiona server-ul folosind comenzi într-o consolă. Presupune cunoștințe mai avansate decât folosirea Webmin, dar vă poate salva în momentul în care apar probleme și Webmin refuză să pornească.
Achiziționarea VPS-ului:
Pe http://smartvps.ro/ puteți vedea toate planurile oferite. Voi vorbi strict despre planul Standard S care oferă pentru 10 euro lunar: Intel(R) Xeon(R) CPU L5639 @ 2.13GHz, 1 cores, 1GB RAM și 20GB stocare SSD. Din pagina de comandă vă puteți configura hostname-ul și parola de root. Apoi alegeți imaginea pe care o doriți instalată și finalizați comanda. În cazul de față vom selecta Ubuntu 14.04 64bit.
După finalizare și confirmare veți primi o serie de emailuri inclusiv datele de acces la VPS Control - panoul de administrare al VPS-ului.
Management VPS:
Vă autentificați aici: http://admin.smartvps.ro/ cu datele primite pe email. După autentificare vi se prezintă o listă cu VPS-ul achiziționat. În cazul în care aveți mai multe VPS-uri și/sau mai multe planuri vor apărea toate aici.
Click pe butonul de Manage sau direct pe hostname și puteți administra respectivul VPS.
Vi se prezintă statusul VPS-ului, spațiul liber și starea RAM-ului. Tot aici aveți opțiuni pentru Reboot, Shutdown sau Boot. Reboot-ul sau Boot-ul sunt rapide, datorită faptului că este un restart al unei mașini virtuale, de ordinul a 5-10 secunde.
Aveți și opțiunea de reinstalare a sistemului de operare cu mențiunea că prin această reinstalare se pierd toate informațiile de pe VPS.
În partea de jos aveți opțiunile pentru TUN/TAP si PPP utile pentru VPN-uri. Tab-urile de Hostname și Root password sunt de la sine înțelese. La Network aveți un buton pentru Reverse DNS care momentan se poate schimba doar printr-un ticket tehnic. Reverse DNS-ul este foarte util pentru a nu fi clasificați ca SPAM de unele servere de email.
Mai multe despre Reverse DNS și configurare aici.
Instalare Webmin si Virtualmin:
Pornim PuTTY, selectăm SSH, port 22 și la Hostname / IP trecem IP-ul din VPS Control.
Dacă sunteți la prima conectare, PuTTY va afișa un Security Alert referitor la o cheie ssh-rsa. Îi dați Yes și va afișa ecranul de login:
Aici vă autentificați cu utilizatorul root și parola aleasă la comanda pachetului de VPS sau parola pe care ați setat-o în VPS Control.
După conectarea cu succes, putem trece la instalarea Webmin și Virtualmin. Întâi verificăm dacă hostname-ul este FQDN, adică Fully Qualified Domain Name, cu comanda:
hostname -f
Dacă ne afișează hostname-ul complet, cum apare în VPS Control, putem trece la descărcarea script-ului de instalare.
Virtualmin este 100% compatibil cu Ubuntu 14.04 și avem un script de instalare disponibil aici: http://software.virtualmin.com/gpl/scripts/install.sh
Pentru a descărca script-ul, rulăm în PuTTY următoarea comandă:
wget http://software.virtualmin.com/gpl/scripts/install.sh
Acum vom rula scriptul și vom aștepta câteva minute până la finalizare:
/bin/sh install.sh
Confirmăm cu y și așteptăm finalizarea instalarii Virtualmin.
Acum vă puteți conecta la https://IP:10000/ înlocuind IP-ul cu IP-ul VPS-ului vostru din VPS Control. Veți primi o avertizare referitoare la un certificat de securitate. Nu este nici o problemă, dați accept sau Proceed.
După login vi se prezintă un ecran pentru finalizarea configurării, Post Installation Wizard
Trebuie parcurse toate secțiunile, folosind butonul Next
Pentru un sistem care va fi solicitat vom dori să utilizăm cât mai puțin RAM pentru Webmin că să putem aloca resurse cât mai multe pentru site-urile găzduite.
Așadar vom alege No pentru Preload Virtualmin libraries?, Run email domain lookup server?, Run ClamAV server scanner?, Run SpamAssassin server filter?
Ajungem la serverul pentru bazele de date. În cele mai multe dintre cazuri veți folosi MySQL și vom dezactiva PostgresSQL.
În următorul ecran trebuie aleasă parola utilizatorului root pentru MySQL. Alegeți o parolă cât mai complexă pentru că utilizatorul root are acces total. Nu voi aborda aici securizarea MySQL, dezactivarea userului root etc. Urmează într-un material viitor.
Urmează alegerea modului în care MySQL va utiliza RAM-ul disponibil. Personal am ales varianta de 512M pentru că este puțin probabil să avem un site atât de mare încât să avem nevoie de mai mult, iar dacă totuși este nevoie recomand achiziționarea unui plan VPS cu 2 sau 4 core-uri și mai mult RAM.
Următorul pas ar trebui să fie deja completat, Primary Nameserver să fie hostname-ul FQDN.
În următorul ecran avem de ales Password storage mode. Putem stoca parolele în clar, ceea ce permite opțiunea de reamintire a parolei, sau le putem stoca criptate. Dezavantajul stocării parolelor în clar este că sunt vizibile în cazul în care sistemul este compromis însă dacă nu aveți aceeași parolă peste tot, atacatorul nu se poate folosi de parolă pentru a accesa alte servicii pe care le folosiți. Deja în momentul în care serverul este compromis, prima grijă nu mai sunt parolele.
După Next apare ecranul general:
Apăsăm pe Re-check and refresh configuration și vom primi o eroare referitoare la serverul de DNS.
Click pe list of DNS servers și adăugăm 127.0.0.1 în lista de DNS servers. De asemenea verificăm și corectăm Hostname-ul din primul câmp.
Save, apply configuration, System information (sidebar-ul din stanga) și mai facem încă o data Re-check and refresh configuration.
Vom primi următoarea eroare:
Your Postfix configuration is missing the system's mail hostname UNKNOWN from the mydestination line, which will cause mail to bounce.În sidebar, stânga sus, dăm click pe Webmin - Servers - Postfix Mail Server. Intrăm în General Options și modificăm Internet hostname of this mail system din UNKNOWN în Default (provided by system) .Save and apply, Reload configuration.
Click pe Virtualmin (stanga sus) - System Settings - Features and plugins.
Aici dezactivăm tot ce nu avem nevoie, în cazul de față dezactivăm Mailman și Webalizer reporting. Save.
Webmin - Networking - Network configuration - Network interfaces - Active now. Notăm cum se numește interfața care are IPv4-ul corect. În cazul de față venet0:0 .
Virtualmin - System settings - Virtualmin configuration. Aici la configuration category selectăm Networking settings și setăm Network interface for virtual addresses venet0:0 (valoare găsită mai sus la Network interfaces). Save.
System information - Re-check and refresh configuration. De data asta ar trebui ca totul să fie în ordine și să vedeți imaginea de mai jos:
Recomandabil este să faceți un Reboot la VPS dupa ce ați terminat configurarea. Intrați în VPS Control și aveți buton pentru Reboot. În câteva secunde VPS-ul va reporni.
Urmănd pașii de mai sus, RAM-ul utilizat de Webmin și Virtualmin este în jur de 100MB. Dacă nu dezactivam ClamAV-ul, preload-ul la librarii și SpamAssasin-ul am fi avut între 500 si 600 MB ocupați având prea puțin spatiu de manevră dacă ar fi apărut vârfuri de încărcare pe site.
Recomand de asemenea și instalarea update-urilor care vă apar în ecranul de System information.
Pentru a utiliza cât mai eficient resursele eu dezactivez Background Status Collection. Intrați la Webmim - Webmin - Webmin configuration - Background Status Collection. Aici setăm background collection la o valoare mai mare sau chiar Never. Save.
Din system information putem oricând să facem un Refresh System information și vom avea datele actualizate.
Dacă în ecranul de System information este raportat greșit Time on system, click pe el, change timezone, Europe/Bucharest - Save.
System information - refresh system information și ar trebui să fie totul ok.
Acum suntem gata să găzduim site-uri, dar despre asta într-un articol viitor.