Такі служби, як Dropbox, полегшують доступ до ваших файлів на кількох пристроях. Однак вам може знадобитися більше контролю над ними. Менш ніж за 30 хвилин ви можете створити і запустити власну службу синхронізації хмар на сервері, яким ви керуєте Наступна хмара .
Що таке Nextcloud?
Nextcloud - це програмне забезпечення з відкритим кодом, яке дозволяє синхронізувати файли між вашим ПК та іншими пристроями, як це було б зроблено з Dropbox, Onedrive або Google Drive. Крім того, Nextcloud має яскраву екосистему додатків, яка дозволяє робити не лише синхронізацію файлів. Ви можете використовувати Nextcloud для управління календарем і контактами або для запуску веб-поштового клієнта IMAP. Ви навіть можете налаштувати програму чату в прямому ефірі виключно для вас та всіх, хто має доступ до вашого сервера.
Однак перед тим, як розібратися в деталях, є попередження. Після того, як ви почнете використовувати Nextcloud, вам залишається підтримувати сервер. Це означає, що на додаток до управління програмним забезпеченням Nextcloud, ви повинні переконатися, що основна операційна система сервера завжди в курсі виправлень. Сервери Nextcloud, як правило, без проблем, але якщо щось піде не так, це вирішувати вам.
Хороша новина - є купа блогів, форумах , і сторінки довідки щоб допомогти вам у вирішенні несправностей. Якщо ви зіткнулися з проблемою, це, швидше за все, трапилося з кимось іншим, і там є рішення.
Що вам знадобиться
Для початку роботи з Nextcloud вам знадобляться наступні три елементи:
- Віртуальний сервер під управлінням Ubuntu 18.04
- Оболонка Bash на робочому столі комп’ютера.
- Доменне ім’я.
Для наших прикладів ми створимо кілька імен користувачів та паролів, включаючи такі:
- Кореневе ім’я користувача та пароль для вашого сервера.
- Звичайне ім’я користувача та пароль сервера з адміністративними привілеями.
- Ім'я користувача та пароль Nextcloud.
Для цілей цього підручника ми використовуємо віртуальний сервер, на якому працює Ubuntu 18.04 від DigitalOcean. Ви можете використовувати будь-якого провайдера, який вам подобається, однак, включаючи Ліноде або AWS . Яку б послугу ви не вибрали, головним є запуск Ubuntu 18.04 (поточний випуск довгострокової підтримки на даний момент), щоб уникнути будь-яких потенційних проблем.
Кожен провайдер віртуального сервера трохи відрізняється, але всі вони прагнуть запустити сервер і запустити його за допомогою декількох клацань миші. Для початку радимо використовувати пробний сервер базового рівня, поки не звикнете до Nextcloud. Digital Ocean’s Капелька на 5 доларів пропонує 1 ГБ оперативної пам'яті, 1 ядро процесора, 1 ТБ передачі даних та 25 ГБ пам’яті. Linode пропонує подібний VPS за ту ж ціну.
Якщо вас не влаштовують ключі SSH, попросіть свого постачальника вказати кореневі дані для входу на основі пароля. Після того, як ваш сервер запущений, і ви почуваєтесь комфортно з командним рядком, ви можете переглянути сторінки довідки свого постачальника про те, як додати ключі SSH для більш безпечного входу.
Якщо ваш комп’ютер працює під управлінням Windows 10, вам потрібно буде встановити
підсистему Windows для Linux і отримайте оболонку Bash з утилітами Linux
продовжувати. Якщо ви використовуєте Linux або macOS, програма Terminal - це все, що вам потрібно. Більшість терміналів Bash постачаються із встановленим SSH, але якщо ні, то просто введіть
sudo apt-get install ssh
у вікні терміналу, щоб встановити його.
Коли ти купити доменне ім'я , це не повинна бути адреса .COM. Цим будете користуватися лише ви та ваші близькі друзі та сім'я. Наприклад, ми знайшли доменне ім’я .XYZ всього за 1 долар на рік, що буде працювати чудово.
ПОВ'ЯЗАНІ: Найкращі місця для придбання доменного імені
Підготовка вашого сервера
Щоб ваш сервер був готовий до дії, вам потрібно створити звичайний обліковий запис користувача з адміністративними привілеями. Це жахлива, жахлива ідея ввійти до системи як всемогутній користувач root після початкової конфігурації.
На даний момент у вас повинен бути IP-адреса та пароль користувача від вашого провайдера сервера. IP-адреса - це спосіб підключення до сервера і пароль.
Для початку введіть наступне (замініть X на IP-адресу вашого сервера) і натисніть Enter:
Наша IP-адреса - 165.22.81.172, тому ми ввели це в нашій команді. Якщо все піде за планом, віддалений сервер (куди ви поставите Nextcloud) запитає пароль. Введіть пароль, наданий вам постачальником послуг.
Потім вас попросять встановити новий пароль для root. Вибирайте все, що вам подобається, просто не втрачайте і не забувайте про це!
Ви знаходитесь всередині віддаленого сервера, і пора приступати до роботи. Натискайте Enter після кожної команди в цій статті, щоб її запустити.
Спочатку ми вводимо наступне, щоб додати нового користувача на сервер:
аддусер Ян
Замініть “ian” на ім’я користувача, яке ви хочете використовувати. Після виконання цієї команди вас попросять надати новому користувачеві пароль. Після цього інша інформація, яку запитує сервер, необов’язкова; якщо ви не хочете його надавати, просто продовжуйте натискати Enter.
Далі ми вводимо наступне, щоб надати новим адміністративним привілеям нового користувача:
usermod -aG sudo ian
Знову ж таки, замініть “ian” на ім’я користувача, яке ви вибрали раніше.
Тепер ми відкриваємо друге вікно терміналу і вводимо наступне, щоб переконатися, що нові облікові записи користувачів працюють:
Знову ж, замініть вищезазначене своїм ім’ям користувача та IP-адресою вашого сервера. Введіть пароль, який ви створили для цього облікового запису користувача, коли з’явиться відповідний запит. Якщо це працює, поверніться до вікна терміналу, в якому ви ввійшли як root.
Тепер ми вводимо наступне, щоб переконатися, що Брандмауер Ubuntu працює належним чином:
ufw дозволити OpenSSH
ufw увімкнути
статус ufw
Ця остання команда стану повинна повертати щось на зразок зображення нижче, підтверджуючи, що брандмауер не блокує SSH.
Ви ще не побачите частини "80, 443 / tcp", але ми до цього дійдемо пізніше. Тепер закриймо кореневе вікно і повернімося до другого вікна терміналу разом із звичайним користувачем.
Встановлення Nextcloud
Був час, коли вам доводилося налаштовувати та встановлювати програмне забезпечення Nextcloud, PHP, програмне забезпечення веб-сервера та базу даних - все окремо.
Набагато простіше використовувати офіційний пакет Snap, який оперує всім за допомогою однієї команди. Немає базікання з базою даних або вам потрібно хвилюватися, якщо Apache або Nginx обслуговують ваш сайт.
Якщо ви хочете побачити, що саме встановлює пакет Snap (спойлер: це решта СТИК ЛАМПИ , плюс Redis), перевірте Репозиторій оснащення Nextcloud на GitHub .
Набираємо наступне:
sudo snap встановити
"Sudo" на початку піднімає звичайний обліковий запис користувача, тому він має тимчасові адміністративні права. Для цього вас попросять ввести пароль. Якщо все піде добре, за хвилину чи дві буде встановлено Nextcloud і (майже) готовий до дії.
Далі ми вводимо наступне, щоб створити новий обліковий запис користувача Nextcloud, який може входити на наш сайт:
sudo nextcloud.manual-install ianpaul correctHorseBatteryStaple
Замість “ianpaul” введіть ім’я користувача, яке ви хочете використовувати для входу до Nextcloud. Біт “correctHorseBatteryStaple” - це наш пароль. Не використовуйте його - це від дуже відомого Комікс XKCD і є лише прикладом.
Робота з доменами
Щоб полегшити життя, ми не хочемо постійно використовувати IP-адресу для доступу до нашого сервера. Натомість ми будемо використовувати доменне ім’я, яке, знову ж таки, ви можете отримати лише за 1 долар на рік. Для нашого прикладу ми використовуємо HowToGeekTest.xyz.
Отримавши домен, ви захочете керувати налаштуваннями DNS у своєму реєстраторі домену (де ви придбали домен) і спрямовуйте їх на свого постачальника серверів. Наприклад, якщо ви вибрали DigitalOcean, такими налаштуваннями будуть ns1.digitalocean.com, ns2.digitalocean.com та ns3.digitalocean.com.
Далі перейдіть до свого постачальника серверів (наприклад, DigitalOcean, Linode або будь-якого іншого, що ви вибрали) і додайте новий домен до свого облікового запису. Вам потрібно буде додати запис A, який вказує на вашу IP-адресу, запис CNAME, якщо ви не хочете постійно використовувати “www”, та записи NS, якщо вони не були додані автоматично.
На зображенні нижче наведено приклад від DigitalOcean.
Технічно може знадобитися до 24 годин, поки ваш домен стане доступним, але зазвичай він починає працювати протягом декількох хвилин.
Повернутися до Nextcloud
Після налаштування домену ми можемо повернутися до завершення Nextcloud у терміналі. Якщо ви вийшли з сервера за допомогою звичайного облікового запису користувача ([email protected] у нашому прикладі), увійдіть знову.
Тепер ми вводимо наступне, щоб додати наш новий домен до Nextcloud:
sudo nextcloud.occ config: system: set trusted_domains 1 --value = howtogeektest.xyz
Після “–value =,” введіть ваш домену, а не нашого (howtogeektest.xyz).
Далі ми вводимо наступне, щоб переконатися, що наш новий домен був доданий належним чином:
sudo nextcloud.occ config: system: отримати надійні_домени
Термінал повинен роздрукувати щось на зразок малюнка нижче.
Далі ми вводимо наступне, щоб переконатися, що ми можемо використовувати потрібні порти, пропускаючи їх через брандмауер:
sudo ufw дозволяють 80 443 / tcp
Порт 80 використовується незашифрованим HTTP-трафіком, тоді як 443 - для SSL / TLS.
Говорячи про це, нам знадобиться безкоштовний сертифікат SSL / TLS від Let’s Encrypt, тому ми вводимо наступне:
sudo nextcloud.enable-https lets-encrypt
Після запуску генератора Let’s Encrypt він запитує адресу електронної пошти та ваше ім’я домену Nextcloud. Просто дотримуйтесь інструкцій, і ви повинні швидко отримати сертифікат безпечного веб-сайту. Якщо Let’s Encrypt вдалося, пора перевірити налаштування.
Перейдіть до свого нового домену (наприклад, нашого howtogeektest.xyz). Ви повинні побачити сторінку входу Nextcloud (див. Нижче) із піктограмою замка в адресному рядку.
Якщо ви бачите сторінку входу, ви готові до роботи. Якщо ні, почекайте кілька годин і повторіть спробу. Якщо ви хочете негайно усунути неполадки, ви можете побачити, чи відповідає сервер через IP-адресу.
Щоб це працювало, нам потрібно ввести наступне, щоб додати IP-адресу до наших надійних доменів:
sudo nextcloud.occ config: system: set trusted_domains 2 --value = 165.22.81.172
Зверніть увагу, що ми використовували “trusted_domains 2”, а не “trusted_domains 1.” Якщо ви просто повторите “trusted_domains 1”, ви перезапишете своє справжнє доменне ім’я у списку надійних доменів і не зможете ним користуватися.
Після цього введіть IP-адресу в адресному рядку браузера, і ви побачите сторінку входу вище. Якщо ні, щось не вдалося з установкою.
Оскільки у нас немає сертифіката SSL для IP-адреси, він не зможе надійно ввійти. З цієї причини радимо видалити IP зі списку надійних доменів після підтвердження роботи сервера. Для цього введіть наступне:
sudo nextcloud.occ config: system: видалити довірені_домени 2
Підвищення продуктивності
Якщо ваш сервер Nextcloud погано працює, можливо, вам доведеться збільшити обмеження пам’яті. За замовчуванням це 128 МБ. Щоб збільшити це значення до 512 МБ, потрібно ввійти на сервер за допомогою терміналу та ввести наступне:
sudo оснащення встановлено nextcloud php.memory-limit = 512M
.
Тепер, коли Nextcloud запущений і працює, ви можете входити в систему, переглядати доступні програми, ділитися файлами з іншими та встановлювати Nextcloud на робочому столі та мобільних пристроях для синхронізації з кількома пристроями. Наступна хмара пропонує настільні засоби синхронізації та мобільні програми для Windows, Mac, Linux, iPhone, iPad та Android.
Ласкаво просимо до вашої власної особистої скриньки!