Cum să vă construiți propria sincronizare a fișierelor în cloud cu Nextcloud

Servicii precum Dropbox vă ajută să vă accesați fișierele de pe mai multe dispozitive. Cu toate acestea, poate doriți mai mult control asupra lor. În mai puțin de 30 de minute, puteți avea propriul dvs. serviciu de sincronizare în cloud pe un server pe care îl controlați prin intermediul Nextcloud.

Ce este Nextcloud?

Nextcloud este un software open-source care vă permite să sincronizați fișiere între computer și alte dispozitive, așa cum ați face cu Dropbox, Onedrive sau Google Drive. În plus, Nextcloud are un ecosistem de aplicații vibrant care vă permite să faceți mai mult decât să sincronizați fișiere. Puteți utiliza Nextcloud pentru gestionarea calendarului și a contactelor sau pentru a rula un client de e-mail IMAP bazat pe web. Puteți chiar să configurați un program de chat live exclusiv pentru dvs. și pentru oricine altcineva care vă poate accesa serverul.

Înainte de a intra în detalii, totuși, există un avertisment. Odată ce începeți să utilizați Nextcloud, rămâne la latitudinea dvs. să întrețineți serverul. Aceasta înseamnă că, pe lângă gestionarea software-ului Nextcloud, trebuie să vă asigurați că sistemul de operare al serverului de bază rămâne actualizat cu corecții. Serverele Nextcloud sunt, în general, fără probleme, dar dacă ceva nu merge bine, depinde de dvs. să îl remediați.

Vestea bună este că există o grămadă de bloguri, forumuri, și pagini de ajutor pentru a vă ajuta în depanarea. Dacă întâmpinați o problemă, probabil că i s-a întâmplat altcuiva și există o soluție.

De ce vei avea nevoie

Interfața web implicită Nextcloud.

Veți avea nevoie de următoarele trei elemente pentru a începe să utilizați Nextcloud:

Un server virtual care rulează Ubuntu 18.04
Shell-ul Bash de pe desktopul computerului dvs.
Un nume de domeniu.

Pentru exemplele noastre, vom crea mai multe nume de utilizator și parole, inclusiv următoarele:

Numele de utilizator și parola root pentru serverul dvs.
Un nume de utilizator și o parolă de server obișnuit cu privilegii administrative.
Un nume de utilizator și o parolă Nextcloud.

În scopul acestui tutorial, folosim un server virtual care rulează Ubuntu 18.04 de la DigitalOcean. Cu toate acestea, puteți utiliza orice furnizor doriți, inclusiv Linode sau AWS. Indiferent de serviciul pe care îl alegeți, cheia este să rulați Ubuntu 18.04 (versiunea actuală de asistență pe termen lung la acest articol) pentru a evita eventualele probleme.

Fiecare furnizor de server virtual este puțin diferit, dar toți își propun să pună în funcțiune un server cu câteva clicuri de mouse. Pentru început, vă sfătuim să utilizați un server la nivel de bază pe bază de probă până când vă obișnuiți cu Nextcloud. Oceanul digital Droplet de 5 USD oferă 1 GB de RAM, 1 nucleu CPU, 1 TB de transfer de date și 25 GB de stocare. Linode oferă un VPS similar la același preț.

  Ce sunt unitățile NVMe și ar trebui să cumpărați unul?

Dacă nu vă simțiți confortabil cu cheile SSH, cereți furnizorului dvs. detalii de conectare la root bazate pe parolă pentru a începe. După ce serverul dvs. rulează și vă simțiți confortabil cu linia de comandă, puteți verifica paginile de ajutor ale furnizorului dvs. despre cum să adăugați chei SSH pentru o conectare mai sigură.

Dacă computerul dvs. rulează Windows 10, va trebui să instalați subsistemul Windows pentru Linux și să obțineți un shell Bash cu utilitare Linux pentru a continua. Dacă utilizați Linux sau macOS, programul Terminal este tot ce aveți nevoie. Majoritatea terminalelor Bash vin cu SSH instalat, dar, dacă nu, trebuie doar să tastați sudo apt-get install ssh în fereastra terminalului pentru a-l instala.

Când cumpărați un nume de domeniu, nu trebuie să fie o adresă .COM. Numai tu, prietenii tăi apropiați și familia îl vei folosi. De exemplu, am găsit un nume de domeniu .XYZ pentru doar 1 USD pe an, care va funcționa foarte bine.

Pregătirea serverului dvs

Pentru a pregăti serverul pentru acțiune, trebuie să configurați un cont de utilizator obișnuit cu privilegii administrative. Este o idee groaznică, teribilă să te autentifici ca utilizator root atotputernic după configurarea inițială.

Până acum, ar trebui să aveți o adresă IP și o parolă de root de la furnizorul dvs. de server. Adresa IP este modul în care vă conectați la server, iar parola vă introduce.

Pentru a începe, tastați următoarele (înlocuiți X-urile cu adresa IP a serverului dvs.), apoi apăsați Enter:

ssh [email protected]

Adresa noastră IP este 165.22.81.172, așa că am introdus-o în comanda noastră. Dacă totul decurge conform planului, serverul de la distanță (unde vei pune Nextcloud) va cere o parolă. Introduceți parola pe care ți-a dat-o furnizorul de server.

Apoi vi se va cere să setați o nouă parolă pentru root. Alege orice iti place, doar nu-l rataci si nu-l uita!

Acum vă aflați în serverul dvs. la distanță și este timpul să vă puneți la treabă. Apăsați Enter după fiecare comandă din acest articol pentru a o executa.

Mai întâi, introducem următoarele pentru a adăuga un nou utilizator pe server:

adduser ian

Înlocuiți „ian” cu numele de utilizator pe care doriți să îl utilizați. Odată ce executați această comandă, vi se cere să oferiți noului utilizator o parolă. După ce faci asta, restul informațiilor pe care serverul le solicită sunt opționale; dacă nu doriți să-l furnizați, apăsați în continuare pe Enter.

Apoi, introducem următoarele pentru a acorda noului nostru utilizator privilegii de administrare:

usermod -aG sudo ian

Din nou, înlocuiți „ian” cu numele de utilizator pe care l-ați ales anterior.

Acum deschidem o a doua fereastră de terminal și introducem următoarele pentru a ne asigura că noile conturi de utilizator funcționează:

ssh [email protected]

Din nou, înlocuiți cele de mai sus cu numele dvs. de utilizator și adresa IP a serverului dvs. Introduceți parola pe care ați creat-o pentru acest cont de utilizator când vi se solicită. Dacă funcționează, reveniți la fereastra terminalului în care sunteți conectat ca root.

  Modificați gestul Google Now pentru a lansa aplicații sau pentru a efectua alte acțiuni

Acum, introducem următoarele pentru a ne asigura că firewall-ul Ubuntu funcționează corect:

ufw permite OpenSSH
ufw activare
starea ufw

Ultima comandă de stare ar trebui să returneze ceva ca imaginea de mai jos, confirmând că firewall-ul nu va bloca SSH.

Ieșirea de la

Nu veți vedea încă partea „80, 443/tcp”, dar vom ajunge la asta mai târziu. Acum, să închidem fereastra rădăcină și să revenim la a doua fereastră de terminal cu utilizatorul obișnuit.

Instalarea Nextcloud

A fost o perioadă când a trebuit să configurați și să instalați software-ul Nextcloud, PHP, software-ul pentru server web și baza de date, toate separat.

Este mult mai ușor să folosești pachetul oficial Snap, care se ocupă de totul cu o singură comandă. Nu trebuie să vă încurcați cu baza de date sau să vă faceți griji dacă Apache sau Nginx vă servesc site-ul.

Dacă doriți să vedeți exact ce instalează pachetul Snap (spoiler: este restul stivei LAMP, plus Redis), consultați Depozitul snap Nextcloud pe GitHub.

Introducem următoarele:

sudo snap install nextcloud

„Sudo” de la început ridică contul de utilizator obișnuit, astfel încât acesta să aibă drepturi administrative temporare. Vi se va cere parola pentru a efectua acest lucru. Dacă totul merge bine, într-un minut sau două, Nextcloud va fi instalat și (aproape) gata de acțiune.

Apoi, introducem următoarele pentru a crea un nou cont de utilizator Nextcloud care se poate conecta la site-ul nostru:

sudo nextcloud.manual-install ianpaul corectHorseBatteryStaple

În loc de „ianpaul”, introduceți numele de utilizator pe care doriți să îl utilizați pentru a vă conecta la Nextcloud. Bitul „correctHorseBatteryStaple” este parola noastră. Nu-l folosi – este de la un foarte cunoscut benzi desenate XKCD si este doar un exemplu.

Tratează cu Domeniile

Pentru a face viața mai ușoară, nu vrem să folosim o adresă IP tot timpul pentru a ne accesa serverul. În schimb, vom folosi un nume de domeniu, pe care, din nou, îl puteți obține cu doar 1 USD pe an. Pentru exemplul nostru, folosim wdzwdzTest.xyz.

Odată ce aveți un domeniu, veți dori să gestionați setările DNS de la registratorul de domeniu (de unde ați cumpărat domeniul) și să le îndreptați către furnizorul dvs. de server. Dacă alegeți DigitalOcean, de exemplu, acele setări ar fi ns1.digitalocean.com, ns2.digitalocean.com și ns3.digitalocean.com.

Apoi, accesați furnizorul dvs. de server (de exemplu, DigitalOcean, Linode sau orice ați ales) și adăugați noul domeniu în contul dvs. Va trebui să adăugați o înregistrare A care indică adresa dvs. IP, o înregistrare CNAME dacă nu doriți să utilizați „www” tot timpul și înregistrări NS dacă nu au fost adăugate automat.

Imaginea de mai jos arată un exemplu de la DigitalOcean.

Din punct de vedere tehnic, poate dura până la 24 de ore până când domeniul dvs. este disponibil, dar de obicei începe să funcționeze în câteva minute.

Înapoi la Nextcloud

Cu domeniul configurat, putem reveni la finalizarea Nextcloud în terminal. Dacă te-ai deconectat de la server cu contul tău de utilizator obișnuit ([email protected] în exemplul nostru), conectați-vă din nou.

  13 modele AI populare pentru a construi aplicații AI generative

Acum, introducem următoarele pentru a adăuga noul nostru domeniu la Nextcloud:

sudo nextcloud.occ config:system:set trusted_domains 1 –value=wdzwdztest.xyz

După „–value=”, introduceți mai degrabă domeniul dvs. decât al nostru (wdzwdztest.xyz).

Apoi, introducem următoarele pentru a ne asigura că noul nostru domeniu a fost adăugat corect:

sudo nextcloud.occ config:system:get trusted_domains

Terminalul ar trebui să imprime ceva ca imaginea de mai jos.

The

Apoi, introducem următoarele, ne asigurăm că putem folosi porturile pe care le dorim, lăsându-le să treacă prin firewall:

sudo ufw permit 80.443/tcp

Portul 80 este folosit de traficul HTTP necriptat, în timp ce 443 este pentru SSL/TLS.

Apropo de asta, vom avea nevoie de un certificat SSL/TLS gratuit de la Let’s Encrypt, așa că scriem următoarele:

sudo nextcloud.enable-https les-encrypt

Odată ce generatorul Let’s Encrypt începe să ruleze, acesta vă solicită o adresă de e-mail și numele dvs. de domeniu Nextcloud. Doar urmați instrucțiunile și ar trebui să aveți un certificat de site securizat în cel mai scurt timp. Dacă Let’s Encrypt a funcționat, este timpul să vă testați configurația.

Accesați noul dvs. domeniu (cum ar fi wdzwdztest.xyz). Ar trebui să vedeți o pagină de conectare Nextcloud (vezi mai jos) cu o pictogramă de lacăt în bara de adrese.

Dacă vedeți pagina de autentificare, sunteți gata de plecare. Dacă nu, așteptați câteva ore și încercați din nou. Dacă doriți să depanați imediat, puteți vedea dacă serverul răspunde prin adresa IP.

Pentru ca acest lucru să funcționeze, trebuie să introducem următoarele, pentru a adăuga adresa IP la domeniile noastre de încredere:

sudo nextcloud.occ config:system:set trusted_domains 2 –value=165.22.81.172

Rețineți că am folosit „trusted_domains 2” și nu „trusted_domains 1”. Dacă doar repeți „domenii_de_încredere 1”, vei suprascrie numele actual al domeniului în lista de domenii de încredere și nu îl vei putea folosi.

După ce ați terminat, introduceți adresa IP în bara de adrese a browserului dvs. și ar trebui să vedeți pagina de conectare de mai sus. Dacă nu, ceva nu a mers prost la instalare.

Deoarece nu avem un certificat SSL pentru adresa IP, acesta nu se va putea autentifica în siguranță. Din acest motiv, vă sugerăm să ștergeți IP-ul din lista de domenii de încredere după ce confirmați că serverul funcționează. Pentru a face acest lucru, tastați următoarele:

sudo nextcloud.occ config:system:delete trusted_domains 2

Creșterea performanței

Dacă serverul dvs. Nextcloud nu funcționează bine, este posibil să fie necesar să creșteți limita de memorie. În mod implicit, este de 128 MB. Pentru a crește la 512 MB, te-ai conecta la server utilizând terminalul și ai tasta următoarele:

sudo snap set nextcloud php.memory-limit=512M.

Acum că Nextcloud este activ și rulează, puteți să vă conectați, să examinați aplicațiile disponibile, să partajați fișiere cu alții și să instalați Nextcloud pe desktop și pe dispozitivele dvs. mobile pentru sincronizarea cu mai multe dispozitive. Nextcloud oferă instrumente de sincronizare desktop și aplicații mobile pentru Windows, Mac, Linux, iPhone, iPad și Android.

Bine ați venit în propria dvs. casetă personală!