Найти тему

Настройка облачного хранилища данных на выделенном сервере (VPS).

Оглавление

Как отказаться от Яндекс 360 и подобных сервисов, перейдя в собственное облачное хранилище на 1 Tb. Пошаговое руководство + бонус в конце.

Многие не очень крупные компании, стартапы, просто команды единомышленников используют не собственные облачные решения для хранения данных, а готовые продукты такие как: Dropbox, Google Диск, Яндекс 360, решения VK WorkMail и другие.

Яндекс и VK WorkMail помимо прочего позволяют организовать обмен электронной почтой для сотрудников, вести общий календарь, контакты и т.д.

Многие компании из моего окружения использовали именно Яндекс 360, по причине наличия базового бесплатного тарифа, который распространялся на сотрудников, которым требовалась только почта, а хранение файлов можно было организовать приобретая руководителю дополнительный объем места в облаке и разделить его общими папками между сотрудниками.

С 17 апреля Яндекс 360 для бизнеса стал платным. Тарифы начинаются от 270 рублей за сотрудника.

Получив это письмо счастья, я рассчитал ожидающую меня стоимость и она составила более 8 тысяч руб. в месяц. Решил ознакомиться есть ли какие-то альтернативы решениям Яндекса и стоит ли игра по отказу от его услуг свеч.

Первым рассмотренным вариантом был VK WorkMail (aka Mail.ru), но его решения по облачному хранилищу давно стали платными. В этом случае наши потребности попадали в диапазон тарифа 5790 руб. в месяц.

Далее был Dropbox, с которого мы когда-то начинали еще на личных аккаунтах, объединяясь общими папками. Его корпоративные тарифы начинаются от 15$ за пользователя…

От иностранных сервисов пришлось отказываться в связи со сложностями с оплатой и рисками одномоментно остаться отрезанным от данных услуг.

Основными причинами почему я перестал пользоваться Яндекс 360 стали:

  • Существенно повысившаяся стоимость
  • Ограничения по распределению прав по общим папкам (не более 50 общих папок, нельзя отдельно выдавать права на папку, которая находится внутри общей)
  • Ограничения на создание пользователей (каждый пользователь сразу плюс несколько сотен рублей в абонентскую плату, без учета сколько места ему нужно)
  • Не устраивал функционал облачного редактирования офисных файлов, почти всегда работало либо некорректно, либо не грузилось вовсе.
  • Ограничения на загрузку больших файлов

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

  • Файловое хранилище
  • Встроенный почтовый клиент
  • Трекер задач на подобие Trello
  • Облачный редактор документов
  • Календарь
  • Собственный мессенджер и сервис видеозвонков
  • И много чего другого

Этот сервис, на мой взгляд, подойдет не только компаниям, то есть тем кто занимается профессиональной деятельностью, но и для обычных школ, где можно организовать обмен данным для всей школы с одного сервера. Другие образовательные и досуговые также могут воспользоваться возможности данного сервиса как для дистанционного обучения, так и для просто распространения информации.

Nextcloud обладает множеством способов монтирования на сервер, после нескольких экспериментов я остановился на развёртывании Docker образа.

Пошаговый гайд по установке Nextcloud на VPS.

Заказываем выделенный сервер. Надежный и проверенный хостинг предлагающий VPS на:

500 Гб за 1280 руб. в месяц
1000 Гб за 1680 руб. в месяц
1500 Гб за 2320 руб. в месяц

это sweb.ru. Сервера располагаются в России в СПб или Москве, что защищает наши данные, а также позволяет оплачивать с НДС для юр. лиц:

-2

После оплаты аренды сервера, создаются конфигурация оборудования и в ней нас интересует два пункта.

Первое это IP адрес VPS, мой реальный IP скрыт и на скриншоте для наглядности указан 1.1.1.1

-3

Второе это root пароль. В зависимости от хостинга он может быть указан как в консоли управления сервером:

-4

Либо при создании VPS пароль высылается по электронной почте, указанной при регистрации в хостинге:

-5

Я хотел сделать все красиво, поэтому сервис решил разместить на домене своей компании. Для этого надо сделать «A» запись у регистратора домена, в моем случае я остановился на банальном cloud. Имя поддомена указывается без точки в конце, в качестве значения адреса указывается IP адрес сервера.

-6

Теперь необходимо подключиться к серверу через консоль и установить Nextcloud. Я проводил установку из под Windows, используя консоль PowerShell. Для быстрого вызова консоли нажимаем Win+X и выбираем Windows Powershell (администратор).

-7

Чтобы подключиться к нашему новому серверу необходимо выполнить команду вида:

ssh root@1.1.1.1

где:
root — имя пользователя, остается без изменений
1.1.1.1 — IP адрес арендованного VPS

-8

Если все пройдет успешно то следующим будет предложено ввести пароль. Если предложение ввести пароль не будет, а будет следующий текст:

The authenticity of host ‘1.1.1.1 (1.1.1.1)’ can’t be established.
ECDSA key fingerprint is SHA256: rDBr4hCNI/Bjvo6KcDWyKUDle1RkyDivkdt5tFPrCow.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

наберите yes и нажмите enter.

Чтобы ввести пароль есть два способа:
1. Перепечатать его вручную, соблюдая регистра и спецсимволы, при этом сами символы в строке ввода появляться не будут, будет все также просто мигать курсор «_».
2. Скопировать пароль из консоли управления VPS или письма, перейти в консоль PowerShell и ЩЕЛКНУТЬ ПРАВОЙ КНОПКИ МЫШИ В СТРОКЕ ВВОДА ПАРОЛЯ, ГДЕ МИГАЕТ КУРСОР, нажать Enter на клавиатуре. Команда ctrl+v (или аналогичные) в данном случае не работают

Если авторизация прошла успешно, то вы увидите приветственную надпись. А строка для ввода команды будет иметь вид «root@servername:~#«.

Осталось выполнить две команды.
Первая устанавливает Docker на VPS, команду из поля ниже можно скопировать из поля ниже целиком и вставить в консоль правым кликом мыши, здесь уже команда отобразиться после вставки и нажать Enter:

curl -fsSL https://get.docker.com | sudo sh

-9

Показателем успешного завершения будет, когда в консоли появиться следующий текст, это займет некоторое время, необходимо просто ждать:

-10

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

sudo docker run --sig-proxy=false --name nextcloud-aio-mastercontainer --restart always --publish 80:80 --publish 8080:8080 --publish 8443:8443 --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config --volume /var/run/docker.sock:/var/run/docker.sock:ro nextcloud/all-in-one:latest

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

-11

Теперь мы можем получить доступ непосредственно к web интерфейсу настройки, о чем и видим сообщение выше. Нужно в браузере перейти по адресу, который будет сформирован по образцу «https://internal.ip.of.this.server:8080», где «internal.ip.of.this.server» — это IP адрес VPS. Для моего IP адреса, который я использую в этом примере настройки это будет выглядеть так (обязательно использовать префикс HTTPS):

https://1.1.1.1:8080

Если на странице вы увидите сообщение подобно тому, что ниже, то это нормально. Просто выберите «Дополнительные» и перейдите по ссылке.

-12

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

-13

Только после того как вы скопировали и сохранили пароль можно переходить по кнопке «Open Nextcloud AIO login «, на следующей странице сразу же попросят этот пароль ввести, чтобы убедиться, что у вас есть к нему доступ. Вводим пароль и логинимся.

-14

На следующей странице нужно ввести тот домен, что мы создали в самом начале у регистратора доменного имени.

-15

Все почти готово, остались последние настройки, на загрузившейся странице нужно в первую очередь внизу задать временную зону, в моем случае это «Europe/Moscow». Также можно выбрать зону по ссылке под полем для ввода.
Повреждаем кнопкой "Submit".

-16

Выше, в разделе «Optional addons» можно выбрать дополнительные надстройки, которые установятся автоматически:
— антивирус
— офисный пакет, для онлайн работы
— поиск по тексту
— аддон для превью файлов различного расширения
— Nextcloud Talk, аналог конференций и корпоративного чата
Если внесли изменения, то подтверждаем их кнопкой «Save changes» (зеленая галочка). В дальнейшем эти пакеты можно будет добавить или удалить.

Далее нажимаем «Download and start containers» (голубая галочка). В данном случае установщик предлагает установить версию 26, а не 25. Но я это галочку не ставлю, т.к. 26 версия еще находиться на стадии беты.

-17

Серверу понадобиться некоторое время на запуск, текущий статус процесса можно увидеть обновив страницу, нужно дождаться когда все модули будут запущены с зеленой лампочкой.

-18

После запуска всех контейнеров на странице отобразится пароль для первого автоматически созданного пользователя «admin». Пароль также нужно сохранить.

-19

По кнопке «Open your Nextcloud» можно открыть веб версию интерфейса, она уже будет на поддомене который был введен на начальном этапе. И авторизоваться там с логином «admin» и паролем с предыдущей страницы.

-20

Далее открывается непосредственно веб интерфейс облачного хранилища, можно начать пользоваться облаком — создавать пользователей, назначать права им, ставить дополнительные приложения, вести канбан доску и т.д.

-21

Бонус.

Демо доступ:

Nextcloud

https://cloud.mayak.net.ru/
Учетная запись или адрес эл. почты:
demo
пароль: demo123456#

Актуальный список рекомендуемых хостингов:

Телеграм чат для обсуждения вопросов.