Sådan bygger du din egen cloud-filsynkronisering med Nextcloud

Tjenester som Dropbox gør det nemt for dig at få adgang til dine filer på flere enheder. Men du vil måske have mere kontrol over dem. På mindre end 30 minutter kan du have din egen cloud-synkroniseringstjeneste op at køre på en server, du styrer via Nextcloud.

Hvad er Nextcloud?

Nextcloud er open source-software, der giver dig mulighed for at synkronisere filer mellem din pc og andre enheder, ligesom du ville gøre med Dropbox, Onedrive eller Google Drive. Derudover har Nextcloud et levende app-økosystem, der giver dig mulighed for at gøre mere end blot at synkronisere filer. Du kan bruge Nextcloud til kalender- og kontaktstyring eller til at køre en webbaseret IMAP-e-mail-klient. Du kan endda oprette et live chatprogram eksklusivt for dig og alle andre, der kan få adgang til din server.

Inden vi kommer ind i detaljerne, er der dog en advarsel. Når du begynder at bruge Nextcloud, er det op til dig at vedligeholde serveren. Det betyder, at du udover at administrere Nextcloud-softwaren skal sørge for, at det underliggende serveroperativsystem forbliver opdateret med patches. Nextcloud-servere er generelt problemfrie, men hvis noget går galt, er det op til dig at rette det.

Den gode nyhed er, at der er masser af blogs, fora, og hjælpesider for at hjælpe dig med fejlfinding. Hvis du støder på et problem, er det sandsynligvis sket med en anden, og der er en løsning derude.

Hvad du skal bruge

Standard Nextcloud-webgrænsefladen.

Du skal bruge følgende tre elementer for at komme i gang med Nextcloud:

En virtuel server, der kører Ubuntu 18.04
Bash-skallen på din computers skrivebord.
Et domænenavn.

Til vores eksempler opretter vi flere brugernavne og adgangskoder, herunder følgende:

Rodbrugernavnet og adgangskoden til din server.
Et almindeligt serverbrugernavn og adgangskode med administrative rettigheder.
Et Nextcloud brugernavn og adgangskode.

Til formålet med denne vejledning bruger vi en virtuel server, der kører Ubuntu 18.04 fra DigitalOcean. Du kan dog bruge en hvilken som helst udbyder, inklusiv Linode eller AWS. Uanset hvilken tjeneste du vælger, er nøglen at køre Ubuntu 18.04 (den nuværende langsigtede supportudgivelse i skrivende stund) for at undgå potentielle problemer.

Hver virtuelle serverudbyder er lidt anderledes, men de sigter alle efter at få en server op at køre med et par museklik. Til at starte med anbefaler vi, at du bruger en basisserver på prøvebasis, indtil du vænner dig til Nextcloud. Digital Ocean’s $5 droplet tilbyder 1 GB RAM, 1 CPU-kerne, 1 TB dataoverførsel og 25 GB lagerplads. Linode tilbyder en lignende VPS til samme pris.

  Sådan ganges tal i Google Sheets

Medmindre du er fortrolig med SSH-nøgler, skal du bede din udbyder om adgangskodebaserede root-loginoplysninger for at starte. Når din server kører, og du er fortrolig med kommandolinjen, kan du tjekke din udbyders hjælpesider om, hvordan du tilføjer SSH-nøgler for et mere sikkert login.

Hvis din computer kører Windows 10, skal du installere Windows-undersystemet til Linux og få en Bash-shell med Linux-værktøjer for at fortsætte. Hvis du bruger Linux eller macOS, er Terminal-programmet alt, hvad du behøver. De fleste Bash-terminaler kommer med SSH installeret, men hvis ikke, skriv bare sudo apt-get install ssh i terminalvinduet for at installere det.

Når du køber et domænenavn, behøver det ikke at være en .COM-adresse. Kun du og dine nære venner og familie vil bruge det. For eksempel fandt vi et .XYZ-domænenavn til kun $1 om året, hvilket vil fungere fint.

Forberedelse af din server

For at gøre din server klar til handling, skal du oprette en almindelig brugerkonto med administrative rettigheder. Det er en frygtelig, frygtelig idé at logge ind som den almægtige root-bruger efter den indledende konfiguration.

Nu burde du have en IP-adresse og root-adgangskode fra din serverudbyder. IP-adressen er, hvordan du opretter forbindelse til serveren, og adgangskoden får dig ind.

For at starte skal du skrive følgende (erstat X’erne med din servers IP-adresse), og tryk derefter på Enter:

ssh [email protected]

Vores IP-adresse er 165.22.81.172, så det skrev vi i vores kommando. Hvis alt går efter planen, vil fjernserveren (hvor du vil placere Nextcloud) bede om en adgangskode. Indtast adgangskoden, som din serverudbyder gav dig.

Du bliver derefter bedt om at indstille en ny adgangskode til root. Vælg hvad du kan lide, bare gå ikke glip af eller glem det!

Du er nu inde på din fjernserver, og det er tid til at komme på arbejde. Tryk på Enter efter hver kommando i denne artikel for at køre den.

Først skriver vi følgende for at tilføje en ny bruger til serveren:

adduser ian

Erstat “ian” med det brugernavn, du vil bruge. Når du udfører denne kommando, bliver du bedt om at give den nye bruger en adgangskode. Når du har gjort det, er resten af ​​de oplysninger, serveren anmoder om, valgfri; hvis du ikke vil give det, skal du bare fortsætte med at trykke på Enter.

Dernæst skriver vi følgende for at give vores nye bruger administrative rettigheder:

usermod -aG sudo ian

Igen skal du erstatte “ian” med det brugernavn, du tidligere valgte.

Nu åbner vi et andet terminalvindue og skriver følgende for at sikre, at de nye brugerkonti fungerer:

ssh [email protected]

Igen skal du erstatte ovenstående med dit brugernavn og din servers IP-adresse. Indtast adgangskoden, du oprettede til denne brugerkonto, når du bliver bedt om det. Hvis det virker, skal du gå tilbage til terminalvinduet, hvor du er logget ind som root.

  Komplet til Gmail tilbyder ordforslag, når du skriver en e-mail [Chrome]

Nu skriver vi følgende for at sikre, at Ubuntu-firewallen fungerer korrekt:

ufw tillade OpenSSH
ufw aktivere
ufw status

Den sidste statuskommando skulle returnere noget som billedet nedenfor, hvilket bekræfter, at firewallen ikke blokerer SSH.

Outputtet fra

Du vil ikke se “80, 443/tcp”-delen endnu, men vi kommer til det senere. Lad os nu lukke rodvinduet og vende tilbage til det andet terminalvindue med den almindelige bruger.

Installation af Nextcloud

Der var engang, hvor du skulle konfigurere og installere Nextcloud-softwaren, PHP, webserversoftwaren og databasen hver for sig.

Det er meget nemmere at bruge den officielle Snap-pakke, som tager sig af alt med en enkelt kommando. Der er ingen roder rundt med databasen eller behov for at bekymre dig, hvis Apache eller Nginx betjener dit websted.

Hvis du vil se præcis, hvad Snap-pakken installerer (spoiler: det er resten af ​​LAMP-stakken plus Redis), så tjek Nextcloud snap repository på GitHub.

Vi skriver følgende:

sudo snap installer nextcloud

“Sudo” i begyndelsen hæver den almindelige brugerkonto, så den har midlertidige administrative rettigheder. Du bliver bedt om din adgangskode for at udføre dette. Hvis alt går vel, vil Nextcloud om et minut eller to være installeret og (næsten) klar til handling.

Dernæst skriver vi følgende for at oprette en ny Nextcloud-brugerkonto, der kan logge ind på vores side:

sudo nextcloud.manual-install ianpaul correctHorseBatteryStaple

I stedet for “ianpaul”, skriv det brugernavn, du vil bruge til at bruge log ind på Nextcloud. “correctHorseBatteryStaple”-bitten er vores adgangskode. Brug det ikke – det er fra en meget kendt XKCD tegneserie og er blot et eksempel.

Håndtering af domæner

For at gøre livet lettere, ønsker vi ikke at bruge en IP-adresse hele tiden for at få adgang til vores server. I stedet bruger vi et domænenavn, som du igen kan få for så lidt som $1 om året. For vores eksempel bruger vi wdzwdzTest.xyz.

Når du har et domæne, vil du gerne administrere DNS-indstillingerne fra din domæneregistrator (hvor du købte domænet) og henvise dem til din serverudbyder. Hvis du for eksempel vælger DigitalOcean, vil disse indstillinger være ns1.digitalocean.com, ns2.digitalocean.com og ns3.digitalocean.com.

Gå derefter til din serverudbyder (for eksempel DigitalOcean, Linode eller hvad du nu vælger), og tilføj det nye domæne til din konto. Du skal tilføje en A-record, der peger på din IP-adresse, en CNAME-record, hvis du ikke vil bruge “www” hele tiden, og NS-poster, hvis de ikke blev tilføjet automatisk.

Billedet nedenfor viser et eksempel fra DigitalOcean.

Teknisk set kan det tage op til 24 timer, før dit domæne er tilgængeligt, men det begynder normalt at virke inden for et par minutter.

Tilbage til Nextcloud

Med domænet sat op, kan vi komme tilbage til at færdiggøre Nextcloud i terminalen. Hvis du loggede ud af serveren med din almindelige brugerkonto ([email protected] i vores eksempel), log ind igen.

  Deja Vu: En kort historie om hver Mac CPU-arkitektur

Nu skriver vi følgende for at tilføje vores nye domæne til Nextcloud:

sudo nextcloud.occ config:system:set betroede_domæner 1 –value=wdzwdztest.xyz

Efter “–value=”, skriv dit domæne i stedet for vores (wdzwdztest.xyz).

Derefter skriver vi følgende for at sikre, at vores nye domæne blev tilføjet korrekt:

sudo nextcloud.occ config:system:get betroede_domæner

Terminalen skal udskrive noget som billedet nedenfor.

Det

Dernæst skriver vi følgende, og sørg for, at vi kan bruge de porte, vi ønsker, ved at lade dem gennem firewallen:

sudo ufw tillade 80.443/tcp

Port 80 bruges af ukrypteret HTTP-trafik, mens 443 er til SSL/TLS.

Apropos det, vi skal bruge et gratis SSL/TLS-certifikat fra Let’s Encrypt, så vi skriver følgende:

sudo nextcloud.enable-https lader-kryptere

Når Let’s Encrypt-generatoren begynder at køre, beder den om en e-mailadresse og dit Nextcloud-domænenavn. Bare følg instruktionerne, og du skulle have et sikkert webstedscertifikat på ingen tid. Hvis Let’s Encrypt lykkedes, er det tid til at teste din opsætning.

Gå til dit nye domæne (som vores wdzwdztest.xyz). Du bør se en Nextcloud-loginside (se nedenfor) med et låseikon i adresselinjen.

Hvis du ser login-siden, er du klar til at gå. Hvis ikke, vent et par timer og prøv igen. Hvis du gerne vil foretage fejlfinding med det samme, kan du se, om serveren svarer via IP-adresse.

For at dette skal virke, skal vi indtaste følgende for at tilføje IP-adressen til vores betroede domæner:

sudo nextcloud.occ config:system:set betroede_domæner 2 –value=165.22.81.172

Bemærk, at vi brugte “trusted_domains 2” og ikke “trusted_domains 1.” Hvis du bare gentager “trusted_domains 1”, vil du overskrive dit faktiske domænenavn på listen over betroede domæner og vil ikke være i stand til at bruge det.

Når det er gjort, skal du indtaste IP-adressen i din browsers adresselinje, og du bør se login-siden ovenfor. Hvis ikke, er der gået noget galt med installationen.

Da vi ikke har et SSL-certifikat til IP-adressen, vil den ikke kunne logge på sikkert. Af den grund foreslår vi, at du sletter IP’en fra listen over pålidelige domæner, efter du har bekræftet, at serveren fungerer. For at gøre dette skal du skrive følgende:

sudo nextcloud.occ config:system:slet betroede_domæner 2

Forøgelse af ydeevnen

Hvis din Nextcloud-server ikke fungerer godt, skal du muligvis øge hukommelsesgrænsen. Som standard er den 128 MB. For at øge det til 512 MB, skal du logge ind på serveren ved hjælp af terminalen og skrive følgende:

sudo snap sæt nextcloud php.memory-limit=512M.

Nu hvor Nextcloud er oppe at køre, kan du logge ind, gennemse tilgængelige apps, dele filer med andre og installere Nextcloud på din desktop og mobile enheder til synkronisering af flere enheder. Nextcloud tilbyder skrivebordssynkroniseringsværktøjer og mobilapps til Windows, Mac, Linux, iPhone, iPad og Android.

Velkommen til din egen personlige dropbox!