Anonim

Mākonis ir lielisks veids, kā aizsargāt failus, ja kaut kas notiek un dators tiek pazaudēts vai sabojāts. Tas var palīdzēt piekļūt failiem ceļā vai no darba, kā arī palīdz sinhronizēt visu ierīču saturu.

Mākoņu krātuvei tomēr ir viens būtisks trūkums. Ar visiem saviem personīgajiem failiem ir jāuzticas kādam uzņēmumam. Kas notiek, ja viņi tiek uzlauzti? Vai tiešām viņi visi ir tik uzticami, vai arī viņi pārdzīvo jūsu lietas, kad jūs to nemeklējat? To īsti nav iespējams droši zināt.

Ir vēl viena iespēja. Izmantojot Nextcloud, varat mitināt pats savu mākoņa krātuvi. Nextcloud ir atvērtā koda mākoņu krātuves risinājums, kas ļauj jums būt savam mākoņu krātuves uzņēmumam. Tam ir ērti lietojams un tīrs interfeiss un visu jūsu ierīču pavadošās lietotnes, tāpēc jūs nenodarbojaties ar kādu uzlauztu kopā nevēlamo saturu.

Šajā rokasgrāmatā galvenā uzmanība tiks pievērsta Nextcloud mitināšanai VPS (virtuālajā privātajā serverī), taču jūs to varat darbināt arī lokāli mājas tīklā. Tikai negaidiet, ka tai piekļūsit no ārpuses, ja vien neiestatīsit porta pāradresāciju vai nedarbosit VPN. Dažas no šīm darbībām būtu nedaudz atšķirīgas, un jums nevajadzēs pirkt domēna vārdu vai iestatīt SSL sertifikātus.

Izvēlieties resursdatoru

Ātrās saites

  • Izvēlieties resursdatoru
  • Instalējiet to, kas jums nepieciešams
  • Iestatiet ugunsmūri
  • Konfigurējiet SSH
    • SSH taustiņi
      • Windows
      • Mac un Linux
    • Neatļaut saknes un paroles
  • Konfigurējiet savu datu bāzi
  • Konfigurējiet PHP
  • Iegūstiet Nextcloud
  • Izveidojiet SSL sertifikātus
  • Konfigurējiet Nginx
  • Sāciet Nextcloud

Pieņemot, ka jūs izmantojat īstu mākoņa risinājumu un vēlaties, lai faili būtu pieejami tīmeklī, jums jāiestata VPS, lai mitinātu Nextcloud. Ir dažas lieliskas iespējas, tāpēc izvēlieties to, kas jums šķiet vislabākais. Pārbaudiet Linode, DigitalOcean un Gandi, ja jums vēl nav prātā saimnieka.

Šajā rokasgrāmatā kā servera operētājsistēma tiks izmantota Debian 9 “Stretch”. Debian ir ļoti stabils un diezgan drošs pēc noklusējuma. To labi atbalsta arī lielākā daļa mitināšanas platformu. Ja jums patīk Ubuntu, lielākā daļa no tā tiks piemērota tieši tur, jo Ubuntu pamatā ir Debian.

Jums būs jāiegūst arī sava servera domēna nosaukums. Tā kā šī nav publiska vietne, jūs patiešām varat padarīt to par visu, kas jums patīk. Domēna vārda iegādes un sasaistes process katram resursdatoram un domēna nosaukuma sniedzējam ir atšķirīgs, tāpēc noteikti pārbaudiet izvēlēto pakalpojumu sniegto dokumentāciju.

Viss šeit tiks apstrādāts attālināti no Linux komandrindas. Tātad, ja jūs izmantojat Mac vai Linux, varat vienkārši atvērt termināli un izmantot SSH, lai piekļūtu VPS. Ja izmantojat sistēmu Windows, satveriet tādu SSH klientu kā PuTTY .

Instalējiet to, kas jums nepieciešams

Šajā mīklā ir daudz gabalu. Jūs varat arī satvert viņus visus tagad, tāpēc jums ir, kas jums jāturpina no šejienes. Debian parasti pēc noklusējuma nav instalējis sudo, tāpēc vispirms to satveriet un iestatiet.

$ su -c 'apt install sudo'

Ievadiet saknes paroli, un Sudo tiks instalēta. Pēc tam jūsu lietotājs ir jāpievieno sudo grupai.

$ su -c 'gpasswd - lietotājvārds sudo'

Tagad jūs varat izmantot sudo. Jums var būt jāpiesakās vēlreiz, ja tas nedarbojas uzreiz. Sākot no šī brīža, jūs vietā izmantosit sudo, jo īpaši tāpēc, ka drošības nolūkos jūs atspējosit saknes pieteikšanās.

Tagad satveriet visu no Debian krātuvēm.

$ sudo apt instalēt ufw mariadb-server nginx certbot php php-mysql php-fpm php-cli php-json php-curl php-imap php-gd php-xml php-zip php-intl php-mcrypt php-imagick php-mbstring

Iestatiet ugunsmūri

Jūsu serveris atrodas internetā. Tam nav nekā, un tas nozīmē, ka jums būs jātiek galā ar uzbrucējiem. Vienkārša ugunsmūra iestatīšana palīdzēs novērst daudzus iespējamos draudus.

Tā vietā, lai tieši izmantotu iptables, sistēmas drošībai varat izmantot UFW (nekomplicētu ugunsmūri). Tam ir vienkāršāka sintakse, un ar to ir daudz vieglāk strādāt.

Vispirms atspējojiet visu ugunsmūri. Tas iestatīs noklusējuma politiku, lai liegtu savienojumus ar visiem pakalpojumiem un portiem, nodrošinot, ka uzbrucēji nevar izveidot savienojumu kādā aizmirstā ostā.

$ sudo ufw noklusējuma liedz ienākošos

$ sudo ufw noklusējuma liegt izejošo $ sudo ufw noklusējuma liegt uz priekšu

Pēc tam jūs varat norādīt ufw pakalpojumiem, ka jūs to vēlaties atļaut. Šajā gadījumā jums nepieciešama tikai SSH un piekļuve tīmeklim. Jūs arī vēlaties iespējot NTP un DNS, lai jūsu serveris varētu ielādēt atjauninājumus un iestatīt savu pulksteni.

$ sudo ufw atļaut ssh $ sudo ufw atļaut ssh $ sudo ufw atļaut http $ sudo ufw atļaut ārā http $ sudo ufw atļaut https $ sudo ufw atļaut https $ sudo ufw atļaut ntp $ sudo ufw atļaut ārā ntp $ sudo ufw atļaut 53 $ sudo ufw atļaut 53 $ sudo ufw atļaut 67 $ sudo ufw atļaut 67

Jūs varat sākt savu ugunsmūri tagad. Tas jums brīdinās par SSH darbības pārtraukšanu, bet jūs jau esat atļāvis SSH, tāpēc jums būs labi.

$ sudo ufw iespējot

Konfigurējiet SSH

SSH ir viens no visbiežāk uzbrukušajiem pakalpojumiem Linux serveros. Tas ir vārteja uz visu pārējo serverī, un to parasti aizsargā tikai ar paroli. Tāpēc ir svarīgi pārliecināties, ka jūsu serveris nav viegli pieejams uzbrucējiem, izmantojot SSH.

SSH taustiņi

Pirmkārt, jums jāiestata daudz drošāka parole, SSH atslēga. Process ir atšķirīgs operētājsistēmā Windows nekā Mac un Linux, tāpēc izpildiet instrukcijas, kas ir piemērotas darbvirsmai.

Windows

Tāpat kā Windows veids, šī vienkāršā uzdevuma veikšanai ir nepieciešama vēl viena programma. PuTTYgen ir RSA atslēgu ģenerators PuTTY. Tas ir pieejams PuTTY lejupielādes lapā . Lejupielādējiet to un palaidiet to.

Atvērtajā logā nosauciet atslēgu un izveidojiet tai paroli. Tā ir parole, kuru izmantosit, lai pieteiktos serverī. Apakšā atlasiet SSH-2 RSA un iestatiet atslēgas izmēru vismaz 2048 bitus. 4096 ir labāks, bet 2048 būs nedaudz ātrāks. Pēc tam ģenerējiet atslēgas un saglabājiet gan publiskās, gan privātās atslēgas. Visbeidzot, nokopējiet publisko atslēgu, kas tiek parādīta loga augšpusē.

Izmantojiet PuTTY, lai izveidotu savienojumu ar savu serveri. Atveriet failu ~ / .ssh / autorizētajos_ taustiņos un ielīmējiet atslēgu.

Atpakaļ PuTTY, sānu izvēlnē atrodiet SSH. Pēc tam pirāta atslēgas laukā atveriet “Auth”. Atrodiet tikko saglabātās privātās atslēgas atrašanās vietu. Kad viss PuTTY vietnē ir iestatīts uz jūsu serveri, saglabājiet sesiju. Pirms pāriešanas pārbaudiet, vai esat izveidojis savienojumu ar atslēgu.

Mac un Linux

Mac un Linux lietotājiem šeit ir daudz vieglāks ceļš. Sāciet ar SSH atslēgas ģenerēšanu, ja jums tādas vēl nav. Jums ir iespēja izveidot atslēgas paroli. Tas nav obligāti, tāpēc tas ir jūsu aicinājums.

$ ssh-keygen -b 4096 -t rsa

Tagad vienkārši nosūtiet atslēgu uz savu serveri. Aizstājiet savu lietotājvārdu un servera IP.

$ ssh-copy-id -i ~ / .ssh / id_rsa.pub

Tieši tā!

Neatļaut saknes un paroles

Pēc atslēgas iestatīšanas varat atspējot SSH paroles. Neuztraucieties, ja iestatāt atslēgu ar paroli. Tas ir kaut kas savādāks, un tas to nemaz neietekmēs. Atveriet SSH konfigurācijas failu mapē / etc / ssh / sshd_config.

$ sudo nano / etc / ssh / sshd_config

Atrodiet rindiņu, kas skan:

#PermitRootLogin aizliegt-paroli

Mainiet to uz:

PermitRootLogin nr

Tālāk atrodiet divas līnijas:

#PasswordAuthentication jā #PermitEmptyPasswords no

Mainiet tos uz:

PasswordAuthentication no PermitEmptyPasswords nr

Visbeidzot atrodiet:

UsePAM jā

Uztaisīt to:

UsePAM nr

Saglabājiet failu un aizveriet to. Pēc tam restartējiet SSH. Tas varētu jūs atbrīvot, tāpēc, ja tas notiek, izveidojiet jaunu savienojumu.

$ sudo systemctl restart sshd

Konfigurējiet savu datu bāzi

Nākamā lieta, kas jums jādara, ir konfigurēt datu bāzi. Šeit tiešām nav daudz iesaistīts, tāpēc pārāk neuztraucieties. Jums vienkārši jāiestata lietotājs un tukša datu bāze, lai Nextcloud varētu piekļūt.

Tur tiešām ir ērts skripts, lai iestatītu un aizsargātu MariaDB jums. Palaidiet to vispirms.

$ sudo mysql_secure_installation

Noklusējuma saknes parole ir tukša, tāpēc pēc jautājuma tā “Enter”. Pēc tam jums tiks lūgts iestatīt saknes paroli. Izdari to. Atbildiet “Jā” uz katru nākamo jautājumu.

Jūs varat pieteikties savā datu bāzē ar saknes paroli, kuru tikko iestatījāt.

$ sudo mysql -u sakne -p

Uzvedne tiks mainīta uz MariaDB. Šī ir datu bāzes servera pārvaldības konsole. Sāciet, izveidojot jaunu datu bāzi. Šeit tiek skaitīts lielo burtu lietojums.

CREATE DATABASE nextcloud;

Pēc tam izveidojiet lietotāju šai datu bāzei.

CREATE USER `nextcloud` @` localhost`, IDENTIFICĒTS "PasswordForUser";

Pēc tam piešķiriet lietotājam atļauju izmantot datu bāzi.

PIEŠĶIRT VISUS nākamajos skaļruņos.

Tieši tā! Tagad varat iziet no datu bāzes servera.

q

Konfigurējiet PHP

Nextcloud ir rakstīts PHP. Jūs jau esat instalējis jaunāko PHP versiju, kas pieejama vietnē Debian Stretch, kā arī PHP paplašinājumus, kas Nextcloud ir nepieciešami, lai darbotos pareizi. Jums joprojām ir jāveic pāris pielāgojumi PHP konfigurācijai, lai tas vieglāk darbotos ar Nginx.

Tam tiešām ir nepieciešami daži pamata drošības uzlabojumi. Tie nav nekas būtisks, taču tie palīdzēs uzlabot jūsu servera drošību.

Atveriet /etc/php/7.0/fpm/php.ini, izmantojot sudo un iecienīto teksta redaktoru.

Fails ir apjomīgs, tāpēc izmantojiet redaktora meklēšanas funkciju, lai pārvietotos. Ja esat izmantojis Nano, tas ir Ctrl + W. Dūres opcija, kas jums jāatrod, ir Disable_functions. Pievienot add phpinfo, system, mail, exec, the end.

Pēc tam atrodiet sql.safe_mode un ieslēdziet to. Pēc tam ieslēdziet atļaušanu_url_fopen. Faila beigās pievienojiet šo rindu, saglabājiet un aizveriet to.

register_globals = Izslēgts

Iegūstiet Nextcloud

Nextcloud vēl nav pieejams kā pakete Debian, un tas ir labi. Jums tas tiešām nav vajadzīgs. Tas ir līdzīgs citām iepriekš iebūvētām PHP tīmekļa lietojumprogrammām, piemēram, WordPress, un tas nāk saspiestā arhīvā, kuru varat iegūt, kur vēlaties instalēt Nextcloud.

Šobrīd jaunākais stabils laidiens ir Nextcloud; vēlreiz pārbaudiet, kāda ir jaunākā versija jums, lasot šo. Rokasgrāmata attiecas uz 12, bet izmantojiet visu, kas ir jaunākais.

Mainiet direktorijā, kurā vēlaties lejupielādēt Nextcloud arhīvu. Pēc tam mainiet uz / var / www, lai to iegūtu.

$ cd ~ / Lejupielādes $ wget https://download.nextcloud.com/server/releases/nextcloud-12.0.3.tar.bz2 $ cd / var / www $ sudo tar xjpf ~ / Downloads / nextcloud-12.0.3. tar.bz2

Ja lasāt to nākotnē, lejupielādes saiti varat atrast Nextcloud servera instalēšanas lapā .

Visbeidzot, nomainiet Nextcloud instalācijas īpašumtiesības uz www-data.

$ sudo chown-R www-data: www-data / var / www / nextcloud

Izveidojiet SSL sertifikātus

Pateicoties Certbot, ir viegli izveidot SSL sertifikātus. Certbot automātiski ģenerēs jūsu SSL sertifikātus jums un ievietos tos vietnes saknē, kurā vietni jūs veidojat. Jums jāvada tikai viena komanda.

$ sudo certbot sertificēti - webroot -w / var / www / nextcloud -d jūsu-domain.com -d www.your-domain.com

Tā kā jūs pirmo reizi izmantojat Certbot, tas prasīs e-pasta adresi. Tā izmantos šo adresi, lai brīdinātu jūs, kad beidzas jūsu sertifikāta derīguma termiņš. Arī tos var viegli atjaunot ar vienu komandu.

$ sudo certbot atjaunošana

Konfigurējiet Nginx

Nginx ir viegls, taču jaudīgs tīmekļa serveris. Tas kalpos saskarnei, kuru izmantojat, lai piekļūtu Nextcloud. Ar Nginx ir saistīti pāris konfigurācijas faili. Pirmais ir galvenā konfigurācija, kas atrodas /etc/nginx/nginx.conf. Tas ir galvenais konfigurācijas fails, taču tam ir pamatoti noklusējumi. Jūs varat spēlēt ar to, ja zināt, ko jūs darāt, taču varat to atstāt mierā un arī labi.

Nākamā konfigurācija ir daudz garāka un sarežģītāka. Par laimi jums tas viss nav jāraksta. Nextcloud devs jau to izdarīja. Jums tas vienkārši jāmaina. Konfigurācijas fails atrodas Nextcloud vietnē . Paņemiet to Nginx tīmekļa saknei. Izveidojiet jaunu failu mapē / etc / nginx / site-available / nextcloud un ielīmējiet to.

Kad fails ir izveidots, jums jāveic pāris vienkāršas izmaiņas. Vispirms atrodiet augšupējo bloku un mainiet to, lai tas izskatās šādi:

augšupvērstais php-apstrādātājs {server unix: /run/php/php7.0-fpm.sock; }

Pēc tam atrodiet visur, kur rakstīts mākonis.example.com, un mainiet to uz savu domēna vārdu.

Pēdējā lieta, kas jums jādara, ir norādīt Nginx uz jūsu SSL sertifikātiem. Mainiet līnijas:

ssl_certificate /etc/ssl/nginx/cloud.example.com.crt; ssl_certificate_key /etc/ssl/nginx/cloud.example.com.key;

Kam:

ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;

Tieši tā! Tālāk jums tas ir jāsaista, lai Nginx varētu to atrast.

$ cd / etc / nginx / site-enabled $ sudo ln -s / etc / nginx / sites-available / nextcoud nextcloud

Noņemiet esošo noklusējumu.

$ sudo rm noklusējums

Restartējiet PHP un Nginx, un jūs varēsit piekļūt Nextcloud!

$ sudo systemctl restart php7.0-fpm $ sudo systemctl restart nginx

Sāciet Nextcloud

Atveriet savu tīmekļa pārlūku un dodieties uz savu domēna vārdu. Jūs sagaidīs NextCloud iestatīšanas ekrāns. Izveidojiet sev administratora kontu un ievadiet informāciju par izveidoto datu bāzes kontu.

Nextcloud konfigurēšana un instalēšana prasīs vairākas minūtes. Kad tas būs pabeigts, jūs tiksit nomests jaunajā Nextcloud informācijas panelī. Turpmāk jūs varat izveidot jaunus lietotājus, lai ļautu uzticamiem cilvēkiem izmantot jauno mākoņu krātuvi. Varat arī sākt failu augšupielādi.

Tieši tā! Jums tagad ir savs privātais mākonis!

Izveidojiet pats savu privāto mākoni ar nextcloud