Jak si vytvořit vlastní synchronizaci cloudových souborů s Nextcloud

Služby jako Dropbox vám usnadňují přístup k souborům na více zařízeních. Možná však nad nimi budete chtít větší kontrolu. Za méně než 30 minut můžete mít svou vlastní cloudovou synchronizační službu spuštěnou na serveru, který ovládáte prostřednictvím Nextcloud.

Co je Nextcloud?

Nextcloud je software s otevřeným zdrojovým kódem, který vám umožňuje synchronizovat soubory mezi vaším počítačem a dalšími zařízeními, stejně jako byste to dělali s Dropboxem, Onedrivem nebo Diskem Google. Nextcloud má navíc živý ekosystém aplikací, který vám umožňuje dělat víc než jen synchronizovat soubory. Nextcloud můžete použít pro správu kalendáře a kontaktů nebo ke spuštění webového e-mailového klienta IMAP. Můžete dokonce nastavit program živého chatu výhradně pro vás a kohokoli jiného, ​​kdo má přístup k vašemu serveru.

Než se však pustíme do podrobností, je tu varování. Jakmile začnete používat Nextcloud, je jen na vás, jak budete server udržovat. To znamená, že kromě správy softwaru Nextcloud se musíte ujistit, že základní operační systém serveru zůstává aktuální pomocí oprav. Servery Nextcloud jsou obecně bezproblémové, ale pokud se něco pokazí, je na vás, abyste to opravili.

Dobrá zpráva je, že blogů je hromada, fórech, a stránky nápovědy které vám pomohou při odstraňování problémů. Pokud narazíte na problém, pravděpodobně se to stalo někomu jinému a existuje řešení.

Co budete potřebovat

Výchozí webové rozhraní Nextcloud.

Abyste mohli začít s Nextcloudem, budete potřebovat následující tři položky:

Virtuální server se systémem Ubuntu 18.04
Shell Bash na ploše vašeho počítače.
Název domény.

Pro naše příklady vytvoříme několik uživatelských jmen a hesel, včetně následujících:

Uživatelské jméno a heslo root pro váš server.
Běžné uživatelské jméno a heslo serveru s oprávněními správce.
Uživatelské jméno a heslo Nextcloud.

Pro účely tohoto tutoriálu používáme virtuální server se systémem Ubuntu 18.04 od společnosti DigitalOcean. Můžete však použít libovolného poskytovatele, včetně Linode nebo AWS. Ať už si vyberete kteroukoli službu, klíčem je spustit Ubuntu 18.04 (aktuální vydání dlouhodobé podpory v tomto psaní), abyste se vyhnuli případným problémům.

Každý poskytovatel virtuálního serveru je trochu jiný, ale cílem všech je uvést server do provozu pomocí několika kliknutí myší. Pro začátek vám doporučujeme používat zkušební server základní úrovně, dokud si nezvyknete na Nextcloud. Digitální oceán 5 $ kapka nabízí 1 GB RAM, 1 CPU jádro, 1 TB datového přenosu a 25 GB úložiště. Linode nabízí podobný VPS za stejnou cenu.

Pokud nejste spokojeni s klíči SSH, požádejte svého poskytovatele o přihlašovací údaje root na základě hesla, abyste mohli začít. Až váš server běží a budete spokojeni s příkazovým řádkem, můžete se podívat na stránky nápovědy svého poskytovatele, jak přidat klíče SSH pro bezpečnější přihlášení.

Pokud váš počítač používá Windows 10, budete muset nainstalovat podsystém Windows pro Linux a získat prostředí Bash s nástroji pro Linux, abyste mohli pokračovat. Pokud používáte Linux nebo macOS, stačí vám program Terminal. Většina terminálů Bash je dodávána s nainstalovaným SSH, ale pokud ne, stačí zadat sudo apt-get install ssh do okna terminálu a nainstalovat jej.

Když si koupíte název domény, nemusí to být adresa .COM. Budete jej používat pouze vy a vaši blízcí přátelé a rodina. Například jsme našli název domény .XYZ za pouhých 1 $ ročně, který bude fungovat dobře.

Příprava vašeho serveru

Chcete-li svůj server připravit na akci, musíte si zřídit běžný uživatelský účet s oprávněními správce. Je to hrozný, hrozný nápad přihlásit se jako všemocný uživatel root po počáteční konfiguraci.

Nyní byste měli mít IP adresu a root heslo od svého poskytovatele serveru. IP adresa je způsob, jakým se připojujete k serveru, a heslo vás dostane dovnitř.

Chcete-li začít, zadejte následující (nahraďte X adresou IP vašeho serveru) a stiskněte Enter:

ssh [email protected]

Naše IP adresa je 165.22.81.172, takže jsme ji zadali do našeho příkazu. Pokud vše půjde podle plánu, vzdálený server (kam dáte Nextcloud) požádá o heslo. Zadejte heslo, které vám dal poskytovatel serveru.

Poté budete požádáni o nastavení nového hesla pro root. Vyberte si, co se vám líbí, jen to nezahazujte nebo nezapomínejte!

Nyní jste na vzdáleném serveru a je čas pustit se do práce. Stisknutím klávesy Enter po každém příkazu v tomto článku jej spustíte.

Nejprve napíšeme následující pro přidání nového uživatele na server:

adduser ian

Nahraďte „ian“ uživatelským jménem, ​​které chcete používat. Jakmile provedete tento příkaz, budete požádáni o zadání hesla nového uživatele. Poté, co to uděláte, jsou ostatní informace, které server požaduje, nepovinné; pokud jej nechcete poskytnout, pokračujte stisknutím klávesy Enter.

Dále zadáme následující, abychom našemu novému uživateli udělili administrátorská oprávnění:

usermod -aG sudo ian

Znovu nahraďte „ian“ uživatelským jménem, ​​které jste zvolili dříve.

Nyní otevřeme druhé okno terminálu a zadejte následující, abyste se ujistili, že nové uživatelské účty fungují:

ssh [email protected]

Opět nahraďte výše uvedené svým uživatelským jménem a IP adresou vašeho serveru. Po zobrazení výzvy zadejte heslo, které jste vytvořili pro tento uživatelský účet. Pokud to funguje, vraťte se do okna terminálu, ve kterém jste přihlášeni jako root.

Nyní zadáme následující, abychom se ujistili, že firewall Ubuntu funguje správně:

ufw povolit OpenSSH
povolit ufw
stav ufw

Tento poslední stavový příkaz by měl vrátit něco jako obrázek níže a potvrdit, že firewall nebude blokovat SSH.

Výstup z

Část „80, 443/tcp“ ještě neuvidíte, ale k tomu se dostaneme později. Nyní zavřeme kořenové okno a vraťme se do druhého okna terminálu s běžným uživatelem.

Instalace Nextcloud

Bývaly doby, kdy jste museli konfigurovat a instalovat software Nextcloud, PHP, software webového serveru a databázi, vše samostatně.

Mnohem jednodušší je používat oficiální balíček Snap, který se o vše postará jediným příkazem. S databází si nemusíte dělat žádné starosti a nemusíte se obávat, zda váš web obsluhuje Apache nebo Nginx.

Pokud chcete přesně vidět, co balíček Snap nainstaluje (spoiler: je to zbytek zásobníku LAMP plus Redis), podívejte se na Úložiště snapů Nextcloud na GitHubu.

Zadáme následující:

sudo snap nainstalovat nextcloud

„Sudo“ na začátku povyšuje běžný uživatelský účet, takže má dočasná administrátorská práva. Chcete-li to provést, budete požádáni o heslo. Pokud vše půjde dobře, za minutu nebo dvě bude Nextcloud nainstalován a (téměř) připraven k akci.

Dále zadáme následující, abychom vytvořili nový uživatelský účet Nextcloud, který se může přihlásit na naše stránky:

sudo nextcloud.manual-install ianpaul correctHorseBatteryStaple

Místo „ianpaul“ zadejte uživatelské jméno, které chcete použít k přihlášení do Nextcloud. Bit „correctHorseBatteryStaple“ je naším heslem. Nepoužívejte to – je to od velmi známého Komiks XKCD a je to jen příklad.

Obchodování s doménami

Abychom si usnadnili život, nechceme pro přístup k našemu serveru neustále používat IP adresu. Místo toho použijeme doménové jméno, které opět můžete získat již za 1 $ ročně. Pro náš příklad používáme wdzwdzTest.xyz.

Jakmile budete mít doménu, budete chtít spravovat nastavení DNS od svého registrátora domény (kde jste doménu zakoupili) a nasměrovat je na poskytovatele serveru. Pokud zvolíte například DigitalOcean, tato nastavení budou ns1.digitalocean.com, ns2.digitalocean.com a ns3.digitalocean.com.

Dále přejděte ke svému poskytovateli serveru (například DigitalOcean, Linode nebo cokoli, co jste si vybrali) a přidejte novou doménu do svého účtu. Budete muset přidat záznam A, který ukazuje na vaši IP adresu, záznam CNAME, pokud nechcete používat „www“ neustále, a záznamy NS, pokud nebyly přidány automaticky.

Obrázek níže ukazuje příklad z DigitalOcean.

Technicky může trvat až 24 hodin, než bude vaše doména dostupná, ale obvykle začne fungovat během několika minut.

Zpět na Nextcloud

S nastavenou doménou se můžeme vrátit k dokončení Nextcloud v terminálu. Pokud jste se odhlásili ze serveru pomocí svého běžného uživatelského účtu ([email protected] v našem příkladu), přihlaste se zpět.

Nyní zadáme následující, abychom přidali naši novou doménu do Nextcloud:

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

Za „–value=“ zadejte svou doménu, nikoli naši (wdzwdztest.xyz).

Dále zadáme následující, abychom se ujistili, že naše nová doména byla přidána správně:

sudo nextcloud.occ config:system:get trusted_domains

Terminál by měl vytisknout něco jako obrázek níže.

The

Dále zadáme následující, abychom se ujistili, že můžeme použít požadované porty tím, že je necháme projít bránou firewall:

sudo ufw povolit 80 443/tcp

Port 80 je používán nešifrovaným HTTP provozem, zatímco 443 je pro SSL/TLS.

Když už jsme u toho, budeme potřebovat bezplatný certifikát SSL/TLS od Let’s Encrypt, takže zadáme následující:

sudo nextcloud.enable-https lets-encrypt

Jakmile se spustí generátor Let’s Encrypt, požádá o e-mailovou adresu a název vaší domény Nextcloud. Postupujte podle pokynů a během okamžiku byste měli mít bezpečný certifikát webových stránek. Pokud Let’s Encrypt fungovalo, je čas otestovat nastavení.

Přejděte na svou novou doménu (například náš wdzwdztest.xyz). Měli byste vidět přihlašovací stránku Nextcloud (viz níže) s ikonou zámku v adresním řádku.

Pokud uvidíte přihlašovací stránku, jste připraveni jít. Pokud ne, počkejte několik hodin a zkuste to znovu. Pokud byste chtěli problém odstranit hned, můžete zjistit, zda server odpovídá prostřednictvím IP adresy.

Aby to fungovalo, musíme zadat následující, abychom přidali IP adresu do našich důvěryhodných domén:

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

Všimněte si, že jsme použili „trusted_domains 2“ a nikoli „trusted_domains 1“. Pokud pouze zopakujete „trusted_domains 1“, přepíšete svůj skutečný název domény v seznamu důvěryhodných domén a nebudete jej moci používat.

Jakmile to uděláte, zadejte IP adresu do adresního řádku prohlížeče a výše by se měla zobrazit přihlašovací stránka. Pokud ne, něco se s instalací pokazilo.

Vzhledem k tomu, že pro IP adresu nemáme certifikát SSL, nebude možné se bezpečně přihlásit. Z tohoto důvodu doporučujeme odstranit IP ze seznamu důvěryhodných domén poté, co se ujistíte, že server funguje. Chcete-li to provést, zadejte následující příkaz:

sudo nextcloud.occ config:system:delete trusted_domains 2

Zvýšení výkonu

Pokud váš server Nextcloud nefunguje dobře, možná budete muset zvýšit limit paměti. Ve výchozím nastavení je to 128 MB. Chcete-li to zvýšit na 512 MB, přihlaste se k serveru pomocí terminálu a zadejte následující:

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

Nyní, když je Nextcloud spuštěn, můžete se přihlásit, prohlížet dostupné aplikace, sdílet soubory s ostatními a instalovat Nextcloud na váš počítač a mobilní zařízení pro synchronizaci mezi více zařízeními. Nextcloud nabízí nástroje pro synchronizaci plochy a mobilní aplikace pro Windows, Mac, Linux, iPhone, iPad a Android.

Vítejte ve své osobní schránce!