Как создать собственную облачную синхронизацию файлов с Nextcloud

Nextcloud

Такие сервисы, как Dropbox, упрощают доступ к файлам на нескольких устройствах. Тем не менее, вы можете хотеть больше контроля над ними. Менее чем за 30 минут вы сможете запустить собственную службу облачной синхронизации на сервере, которым вы управляете через Nextcloud,

Что такое Nextcloud?

Nextcloud — это программное обеспечение с открытым исходным кодом, которое позволяет синхронизировать файлы между вашим ПК и другими устройствами так же, как с Dropbox, Onedrive или Google Drive. Кроме того, Nextcloud обладает динамичной экосистемой приложений, которая позволяет вам делать больше, чем просто синхронизировать файлы. Вы можете использовать Nextcloud для управления календарем и контактами или для запуска почтового клиента IMAP через Интернет. Вы даже можете настроить программу чата исключительно для вас и всех, кто имеет доступ к вашему серверу.

Прежде чем мы углубимся в детали, есть предупреждение. Как только вы начнете использовать Nextcloud, вам нужно будет поддерживать сервер. Это означает, что в дополнение к управлению программным обеспечением Nextcloud, вы должны убедиться, что операционная система базового сервера постоянно обновляется с исправлениями. Серверы Nextcloud, как правило, безаварийны, но если что-то пойдет не так, вам решать, как это исправить.

Хорошая новость в том, что есть куча блогов, форумы, и страницы справки чтобы помочь вам в устранении неполадок. Если вы столкнулись с проблемой, скорее всего, это случилось с кем-то еще, и там есть решение.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Что вам нужно

Интерфейс Nextcloud.
Веб-интерфейс Nextcloud по умолчанию.

Для запуска Nextcloud вам понадобятся следующие три элемента:

  1. Виртуальный сервер под управлением Ubuntu 18.04
  2. Оболочка Bash на рабочем столе вашего компьютера.
  3. Доменное имя

Для наших примеров мы создадим несколько имен пользователей и паролей, включая следующие:

  • Корневое имя пользователя и пароль для вашего сервера.
  • Обычное имя пользователя и пароль сервера с правами администратора.
  • Имя пользователя и пароль Nextcloud.

Для целей данного руководства мы используем виртуальный сервер под управлением Ubuntu 18.04 от DigitalOcean. Вы можете использовать любого поставщика, который вам нравится, в том числе, в том числе Linode или же AWS, Какой бы сервис вы ни выбрали, ключом является запуск Ubuntu 18.04 (текущий выпуск долгосрочной поддержки на момент написания этой статьи), чтобы избежать возможных проблем.

Каждый провайдер виртуальных серверов немного отличается, но все они стремятся запустить и запустить сервер всего несколькими щелчками мыши. Для начала мы советуем вам использовать сервер базового уровня на пробной основе, пока вы не привыкнете к Nextcloud. Digital Ocean’s Капля за 5 долларов предлагает 1 ГБ ОЗУ, 1 ядро ​​ЦП, 1 ТБ для передачи данных и 25 ГБ дискового пространства. Линод предлагает аналогичный VPS за ту же цену.

Если вы не знакомы с SSH-ключами, обратитесь к своему провайдеру, чтобы начать регистрацию на основе пароля. После того, как ваш сервер запущен и вы освоились с командной строкой, вы можете проверить страницы справки своего провайдера о том, как добавить ключи SSH для более безопасного входа.

Если ваш компьютер работает под управлением Windows 10, вам необходимо установить подсистему Windows для Linux и получить оболочку Bash с утилитами Linux, чтобы продолжить. Если вы используете Linux или macOS, программа Terminal — это все, что вам нужно. Большинство терминалов Bash поставляются с установленным SSH, но если нет, просто введите sudo apt-get install ssh в окне терминала, чтобы установить его.

Когда вы покупаете доменное имя, это не обязательно должен быть адрес .COM. Только вы и ваши близкие друзья и семья будут использовать его. Например, мы нашли доменное имя .XYZ всего за 1 доллар в год, и это будет прекрасно работать.

СВЯЗАННЫЕ С: Лучшие места для покупки доменного имени

Готовя свой сервер

Человек, стоящий в центре обработки данных.
Gorodenkoff / Shutterstock

Чтобы ваш сервер был готов к действию, вам нужно настроить учетную запись обычного пользователя с правами администратора. Это ужасная, ужасная идея — войти в систему как всемогущий пользователь root после начальной настройки.

К настоящему времени у вас должен быть IP-адрес и пароль root от вашего сервера. IP-адрес — это то, как вы подключаетесь к серверу, и пароль вводит вас.

Для начала введите следующее (замените X на IP-адрес вашего сервера) и нажмите Enter:

ssh root@XXX.XX.XX.XXX

Наш IP-адрес — 165.22.81.172, поэтому мы ввели его в нашей команде. Если все идет по плану, удаленный сервер (куда вы положите Nextcloud) запросит пароль. Введите пароль, который предоставил вам ваш провайдер.

Затем вас попросят установить новый пароль для пользователя root. Выберите то, что вам нравится, просто не теряйте местами или забудьте об этом!

Теперь вы находитесь на своем удаленном сервере, и пришло время приступить к работе. Нажмите Enter после каждой команды в этой статье, чтобы запустить ее.

Сначала мы вводим следующее, чтобы добавить нового пользователя на сервер:

adduser ian

Замените «ian» на имя пользователя, которое вы хотите использовать. После выполнения этой команды вас попросят дать новому пользователю пароль. После этого остальная информация, запрашиваемая сервером, является необязательной; если вы не хотите его предоставлять, просто продолжайте нажимать Enter.

Затем мы вводим следующее, чтобы предоставить нашим новым пользователям административные привилегии:

usermod -aG sudo ian

Снова замените «ian» на имя пользователя, которое вы выбрали ранее.

Теперь мы открываем второе окно терминала и набираем следующее, чтобы убедиться, что новые учетные записи пользователей работают:

ssh ian@165.22.81.172

Снова замените вышеуказанное на свое имя пользователя и IP-адрес вашего сервера. Введите пароль, который вы создали для этой учетной записи пользователя, когда будет предложено. Если это работает, вернитесь в окно терминала, в котором вы вошли как root.

Теперь мы набираем следующее, чтобы убедиться, что брандмауэр Ubuntu работает правильно:

ufw allow OpenSSH
ufw enable
ufw status

Эта последняя команда состояния должна вернуть что-то вроде изображения ниже, подтверждая, что брандмауэр не будет блокировать SSH.

Вывод команды «ufw status» в окне терминала.

Вы еще не увидите часть «80, 443 / tcp», но мы вернемся к этому позже. Теперь давайте закроем корневое окно и вернемся ко второму терминальному окну с обычным пользователем.

Установка Nextcloud

Было время, когда вам приходилось настраивать и устанавливать программное обеспечение Nextcloud, PHP, программное обеспечение веб-сервера и базу данных по отдельности.

Намного проще использовать официальный пакет Snap, который заботится обо всем с помощью одной команды. Там нет возни с базой данных и не нужно беспокоиться, если Apache или Nginx обслуживает ваш сайт.

Если вы хотите точно увидеть, что устанавливает пакет Snap (спойлер: это остальная часть стека LAMP плюс Redis), посмотрите Snapcl-репозиторий Nextcloud на GitHub,

Мы вводим следующее:

sudo snap install nextcloud

«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.

Сетка записей DNS от DigitalOcean.

Технически, это может занять до 24 часов, прежде чем ваш домен станет доступным, но обычно он начинает работать через несколько минут.

Вернуться к Nextcloud

После настройки домена мы можем вернуться к завершению работы с Nextcloud в терминале. Если вы вышли из сервера с учетной записью обычного пользователя (в нашем примере ian@165.22.81.172), войдите в систему.

Теперь мы вводим следующее, чтобы добавить наш новый домен в Nextcloud:

sudo nextcloud.occ config:system:set trusted_domains 1 --value=howtogeektest.xyz

После «–value =» введите твой домен, а не наш (howtogeektest.xyz).

Затем мы набираем следующее, чтобы убедиться, что наш новый домен был добавлен правильно:

sudo nextcloud.occ config:system:get trusted_domains

Терминал должен распечатать что-то вроде изображения ниже.

Команда

Затем мы набираем следующее, чтобы убедиться, что можем использовать нужные порты, пропуская их через брандмауэр:

sudo ufw allow 80,443/tcp

Порт 80 используется незашифрованным HTTP-трафиком, а 443 — для SSL / TLS.

Кстати, нам понадобится бесплатный сертификат SSL / TLS от Let’s Encrypt, поэтому мы вводим следующее:

sudo nextcloud.enable-https lets-encrypt

После запуска генератора Let Encrypt запрашивается адрес электронной почты и ваше доменное имя Nextcloud. Просто следуйте инструкциям, и вы должны иметь безопасный сертификат веб-сайта в кратчайшие сроки. Если сработало Let Encrypt, пришло время протестировать ваши настройки.

Перейдите на новый домен (например, наш howtogeektest.xyz). Вы должны увидеть страницу входа в Nextcloud (см. Ниже) со значком замка в адресной строке.

Страница входа в Nextcloud.

Если вы видите страницу входа, вы готовы к работе. Если нет, подождите несколько часов и попробуйте снова. Если вы хотите немедленно устранить неполадки, вы можете увидеть, отвечает ли сервер через IP-адрес.

Чтобы это работало, мы должны ввести следующее, чтобы добавить IP-адрес в наши доверенные домены:

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

Обратите внимание, что мы использовали «доверенные домены 2», а не «доверенные домены 1.» Если вы просто повторите «доверенные домены 1», вы перезапишете свое фактическое доменное имя в списке доверенных доменов и не сможете его использовать.

Как только это будет сделано, введите IP-адрес в адресную строку браузера, и вы увидите страницу входа выше. Если нет, то что-то пошло не так с установкой.

Поскольку у нас нет SSL-сертификата для IP-адреса, он не сможет безопасно войти в систему. По этой причине мы рекомендуем вам удалить IP-адрес из списка доверенных доменов после подтверждения работы сервера. Для этого введите следующее:

sudo nextcloud.occ config:system:delete trusted_domains 2

Повышение производительности

Если ваш сервер Nextcloud не работает должным образом, вам может потребоваться увеличить лимит памяти. По умолчанию это 128 МБ. Чтобы увеличить его до 512 МБ, войдите на сервер с помощью терминала и введите следующее:

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

Теперь, когда Nextcloud запущен и работает, вы можете войти в систему, просматривать доступные приложения, обмениваться файлами с другими пользователями и устанавливать Nextcloud на свой рабочий стол и мобильные устройства для синхронизации нескольких устройств. Nextcloud предлагает инструменты для синхронизации с ПК и мобильные приложения для Windows, Mac, Linux, iPhone, iPad и Android.

Добро пожаловать в вашу личную коробку!

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *