Met services zoals Dropbox heb je gemakkelijk toegang tot je bestanden op meerdere apparaten. U wilt echter misschien meer controle over hen. In minder dan 30 minuten kunt u uw eigen cloud-synchronisatieservice laten draaien op een server die u beheert Nextcloud .
Wat is Nextcloud?
Nextcloud is open-source software waarmee je bestanden kunt synchroniseren tussen je pc en andere apparaten, net zoals je zou doen met Dropbox, Onedrive of Google Drive. Bovendien heeft Nextcloud een levendig app-ecosysteem waarmee u meer kunt doen dan alleen bestanden synchroniseren. U kunt Nextcloud gebruiken voor agenda- en contactbeheer of om een webgebaseerde IMAP-e-mailclient uit te voeren. U kunt zelfs een livechatprogramma opzetten dat exclusief voor u en iedereen die toegang heeft tot uw server.
Voordat we echter op de details ingaan, is er een waarschuwing. Zodra u Nextcloud gaat gebruiken, is het aan u om de server te onderhouden. Dit betekent dat je naast het beheren van de Nextcloud-software ervoor moet zorgen dat het onderliggende serverbesturingssysteem up-to-date blijft met patches. Nextcloud-servers zijn over het algemeen probleemloos, maar als er toch iets misgaat, is het aan jou om het op te lossen.
Het goede nieuws is dat er enorm veel blogs zijn, forums , en helppagina's om u te helpen bij het oplossen van problemen. Als u een probleem tegenkomt, is het waarschijnlijk met iemand anders gebeurd en is er een oplossing beschikbaar.
Wat je nodig hebt
Je hebt de volgende drie items nodig om aan de slag te gaan met Nextcloud:
- Een virtuele server met Ubuntu 18.04
- De Bash-shell op het bureaublad van uw computer.
- Een domeinnaam.
Voor onze voorbeelden maken we verschillende gebruikersnamen en wachtwoorden, waaronder de volgende:
- De root-gebruikersnaam en het wachtwoord voor uw server.
- Een normale server gebruikersnaam en wachtwoord met beheerdersrechten.
- Een gebruikersnaam en wachtwoord van Nextcloud.
Voor deze tutorial gebruiken we een virtuele server met Ubuntu 18.04 van DigitalOcean. U kunt echter elke gewenste provider gebruiken, inclusief Linode of AWS . Welke service u ook kiest, de sleutel is om Ubuntu 18.04 (de huidige langetermijnondersteuningsrelease op dit moment) uit te voeren om mogelijke problemen te voorkomen.
Elke virtuele serverprovider is een beetje anders, maar ze streven er allemaal naar om met een paar muisklikken een server aan de praat te krijgen. Om te beginnen raden we u aan om op proef een server op basisniveau te gebruiken totdat u aan Nextcloud gewend bent. Digital Ocean's $ 5 droplet biedt 1 GB RAM, 1 CPU-kern, 1 TB gegevensoverdracht en 25 GB opslag. Linode biedt een vergelijkbare VPS voor dezelfde prijs.
Tenzij u vertrouwd bent met SSH-sleutels, vraagt u uw provider om op wachtwoord gebaseerde root-inloggegevens om te starten. Nadat uw server actief is en u vertrouwd bent met de opdrachtregel, kunt u de helppagina's van uw provider raadplegen over hoe u SSH-sleutels kunt toevoegen voor een veiligere aanmelding.
Als uw computer Windows 10 gebruikt, moet u installeren
het Windows-subsysteem voor Linux en ontvang een Bash-shell met Linux-hulpprogramma's
doorgaan. Als je Linux of macOS gebruikt, is het Terminal-programma alles wat je nodig hebt. Op de meeste Bash-terminals is SSH geïnstalleerd, maar als dat niet het geval is, typ je gewoon
sudo apt-get install ssh
in het terminalvenster om het te installeren.
Wanneer je koop een domeinnaam , het hoeft geen .COM-adres te zijn. Alleen jij en je goede vrienden en familie zullen het gebruiken. We hebben bijvoorbeeld een .XYZ-domeinnaam gevonden voor slechts $ 1 per jaar, wat prima werkt.
VERWANT: De beste plaatsen om een domeinnaam te kopen
Uw server voorbereiden
Om uw server klaar te maken voor actie, moet u een gewone gebruikersaccount met beheerdersrechten instellen. Het is een vreselijk, vreselijk idee om in te loggen als de almachtige root-gebruiker na de eerste configuratie.
Inmiddels zou u een IP-adres en root-wachtwoord van uw serverprovider moeten hebben. Het IP-adres is hoe u verbinding maakt met de server en het wachtwoord zorgt ervoor dat u binnenkomt.
Typ om te beginnen het volgende (vervang de X's door het IP-adres van uw server) en druk op Enter:
Ons IP-adres is 165.22.81.172, dus we hebben dat in onze opdracht getypt. Als alles volgens plan verloopt, zal de externe server (waar u Nextcloud plaatst) om een wachtwoord vragen. Typ het wachtwoord dat uw serverprovider u heeft gegeven.
U wordt vervolgens gevraagd om een nieuw wachtwoord voor root in te stellen. Kies wat u maar wilt, mis het niet en vergeet het niet!
U bevindt zich nu op uw externe server en het is tijd om aan het werk te gaan. Druk op Enter na elke opdracht in dit artikel om het uit te voeren.
Eerst typen we het volgende om een nieuwe gebruiker aan de server toe te voegen:
adduser ian
Vervang "ian" door de gebruikersnaam die u wilt gebruiken. Nadat u deze opdracht heeft uitgevoerd, wordt u gevraagd om de nieuwe gebruiker een wachtwoord te geven. Nadat u dat heeft gedaan, is de rest van de informatie die de server vraagt, optioneel; Als je het niet wilt opgeven, blijf dan op Enter drukken.
Vervolgens typen we het volgende om onze nieuwe gebruikers beheerdersrechten te geven:
usermod -aG sudo ian
Vervang opnieuw "ian" door de gebruikersnaam die u eerder hebt gekozen.
Nu openen we een tweede terminalvenster en typen we het volgende om ervoor te zorgen dat de nieuwe gebruikersaccounts werken:
Vervang het bovenstaande opnieuw door uw gebruikersnaam en het IP-adres van uw server. Typ het wachtwoord dat u voor dit gebruikersaccount hebt gemaakt wanneer daarom wordt gevraagd. Als het werkt, gaat u terug naar het terminalvenster waarin u als root bent aangemeld.
Nu typen we het volgende om er zeker van te zijn dat het Ubuntu-firewall werkt naar behoren:
ufw staat OpenSSH toe
ufw inschakelen
ufw-status
Die laatste statusopdracht zou iets als de onderstaande afbeelding moeten retourneren, waarmee wordt bevestigd dat de firewall SSH niet blokkeert.
Je zult het gedeelte '80, 443 / tcp' nog niet zien, maar daar komen we later op terug. Laten we nu het rootvenster sluiten en terugkeren naar het tweede terminalvenster met de gewone gebruiker.
Nextcloud installeren
Er was een tijd dat u de Nextcloud-software, PHP, webserversoftware en database allemaal afzonderlijk moest configureren en installeren.
Het is veel gemakkelijker om het officiële Snap-pakket te gebruiken, dat alles regelt met een enkele opdracht. U hoeft zich geen zorgen te maken over de database en u hoeft zich geen zorgen te maken als Apache of Nginx uw site bedient.
Als je precies wilt zien wat het Snap-pakket installeert (spoiler: het is de rest van het LAMP stack , plus Redis), bekijk dan het Nextcloud snap-repository op GitHub .
We typen het volgende:
sudo snap install nextcloud
De "sudo" aan het begin verhoogt het gewone gebruikersaccount zodat het tijdelijke beheerdersrechten heeft. U wordt om uw wachtwoord gevraagd om dit uit te voeren. Als alles goed gaat, wordt Nextcloud over een minuut of twee geïnstalleerd en (bijna) klaar voor actie.
Vervolgens typen we het volgende om een nieuw Nextcloud-gebruikersaccount aan te maken dat kan inloggen op onze site:
sudo nextcloud.manual-install ianpaul correctHorseBatteryStaple
Typ in plaats van ianpaul de gebruikersnaam die u wilt gebruiken om in te loggen op Nextcloud. Het bit "correctHorseBatteryStaple" is ons wachtwoord. Gebruik het niet - het is van een zeer bekende XKCD-strip en is slechts een voorbeeld.
Omgaan met domeinen
Om het leven gemakkelijker te maken, willen we niet altijd een IP-adres gebruiken om toegang te krijgen tot onze server. In plaats daarvan gebruiken we een domeinnaam, die u opnieuw kunt krijgen voor slechts $ 1 per jaar. Voor ons voorbeeld gebruiken we HowToGeekTest.xyz.
Als u eenmaal een domein heeft, wilt u de DNS-instellingen van uw domeinregistreerder (waar u het domein heeft gekocht) beheren en ze naar uw serverprovider verwijzen. Als u bijvoorbeeld DigitalOcean kiest, zijn die instellingen ns1.digitalocean.com, ns2.digitalocean.com en ns3.digitalocean.com.
Ga vervolgens naar uw serverprovider (bijvoorbeeld DigitalOcean, Linode of wat u ook kiest) en voeg het nieuwe domein toe aan uw account. U moet een A-record toevoegen dat naar uw IP-adres verwijst, een CNAME-record als u niet altijd 'www' wilt gebruiken, en NS-records als ze niet automatisch zijn toegevoegd.
De onderstaande afbeelding toont een voorbeeld van DigitalOcean.
Technisch gezien kan het tot 24 uur duren voordat uw domein beschikbaar is, maar het begint meestal binnen een paar minuten te werken.
Terug naar Nextcloud
Nu het domein is ingesteld, kunnen we teruggaan naar het afronden van Nextcloud in de terminal. Als u zich hebt afgemeld bij de server met uw gewone gebruikersaccount ([email protected] in ons voorbeeld), log dan opnieuw in.
Nu typen we het volgende om ons nieuwe domein aan Nextcloud toe te voegen:
sudo nextcloud.occ config: systeem: set vertrouwde_domeinen 1 --waarde = howtogeektest.xyz
Typ na "–value =" uw domein in plaats van het onze (howtogeektest.xyz).
Vervolgens typen we het volgende om ervoor te zorgen dat ons nieuwe domein correct is toegevoegd:
sudo nextcloud.occ config: systeem: krijg vertrouwde_domeinen
De terminal zou zoiets als de onderstaande afbeelding moeten afdrukken.
Vervolgens typen we het volgende om ervoor te zorgen dat we de poorten kunnen gebruiken die we willen door ze door de firewall te laten:
sudo ufw staat 80,443 / tcp toe
Poort 80 wordt gebruikt door niet-versleuteld HTTP-verkeer, terwijl 443 voor SSL / TLS is.
Daarover gesproken, we hebben een gratis SSL / TLS-certificaat nodig van Let's Encrypt, dus we typen het volgende:
sudo nextcloud.enable-https lets-encrypt
Zodra de Let's Encrypt-generator begint te werken, vraagt deze om een e-mailadres en uw Nextcloud-domeinnaam. Volg gewoon de instructies en u zou binnen de kortste keren een beveiligd websitecertificaat moeten hebben. Als Let's Encrypt is gelukt, is het tijd om uw configuratie te testen.
Ga naar uw nieuwe domein (zoals onze howtogeektest.xyz). U zou een inlogpagina van Nextcloud moeten zien (zie hieronder) met een slotpictogram in de adresbalk.
Als je de inlogpagina ziet, ben je klaar om te gaan. Zo niet, wacht dan een paar uur en probeer het opnieuw. Als u het probleem meteen wilt oplossen, kunt u zien of de server reageert via een IP-adres.
Om dit te laten werken, moeten we het volgende typen om het IP-adres aan onze vertrouwde domeinen toe te voegen:
sudo nextcloud.occ config: systeem: set vertrouwde_domeinen 2 --waarde = 165.22.81.172
Houd er rekening mee dat we "vertrouwde_domeinen 2" hebben gebruikt en niet "vertrouwde_domeinen 1." Als u gewoon "vertrouwde_domeinen 1" herhaalt, overschrijft u uw werkelijke domeinnaam in de lijst met vertrouwde domeinen en kunt u deze niet gebruiken.
Zodra dat is gebeurd, typt u het IP-adres in de adresbalk van uw browser en ziet u de aanmeldingspagina hierboven. Zo niet, dan is er iets misgegaan met de installatie.
Aangezien we geen SSL-certificaat voor het IP-adres hebben, kan het niet veilig inloggen. Om die reden raden we u aan om het IP-adres uit de lijst met vertrouwde domeinen te verwijderen nadat u hebt bevestigd dat de server werkt. Typ hiervoor het volgende:
sudo nextcloud.occ config: systeem: verwijder vertrouwde_domeinen 2
Prestaties verbeteren
Als uw Nextcloud-server niet goed presteert, moet u mogelijk de geheugenlimiet verhogen. Standaard is het 128 MB. Om dat te verhogen tot 512 MB, logt u in op de server met behulp van de terminal en typt u het volgende:
sudo snap set nextcloud php.memory-limit = 512M
.
Nu Nextcloud actief is, kunt u inloggen, beschikbare apps bekijken, bestanden delen met anderen en Nextcloud installeren op uw desktop en mobiele apparaten voor synchronisatie met meerdere apparaten. Nextcloud biedt desktopsynchronisatietools en mobiele apps voor Windows, Mac, Linux, iPhone, iPad en Android.
Welkom bij je eigen persoonlijke dropbox!