Свое облако для обмена файлами - история поиска решения

12.11.21

Интеграция - Облачные сервисы, хостинг

История внедрения облака в одной компании.

Скачать исходный код

Наименование Файл Версия Размер
Свое облако для обмена файлами - история поиска решения, архив статьи:
.7z 2,38Mb
1
.7z 2,38Mb 1 Скачать
Свое облако для обмена файлами - история поиска решения, архив статьи:
.7z 2,38Mb
0
.7z 2,38Mb Скачать

Предисловие: зачем компании свое «облако»

К облачным хранилищам привыкли и люди, и компании. «Облака» покорили нас своей надежностью и простотой: чтобы организовать файловое хранилище, не нужно нанимать бригаду айтишников, а бесценные данные находятся под надежной защитой IT-гигантов. Чтобы настроить обмен информацией между филиалами из разных городов или стран, достаточно скачать программу и ввести данные аккаунтов. Фантастика!

Тем не менее, бывают ситуации, когда компании (да и частные пользователи), отказываются от этих преимуществ и решаются на авантюру в виде облака на своем сервере. Зачем? Основной мотиватор — деньги. Например, Дропбокс объёмом 5гб на 5 пользователей обойдется в $750 за год:

 

 

А что такое 5гб для компании? Ничего, по сути. В такие моменты руководители или айтишники компаний и задумываются о том, что неплохо было бы в офисе иметь небольшой сервер для хранения данных, который позволит сотрудникам работать с этими данными там, где удобно, а не только в офисе.

 

История внедрения облака в одной компании

Примерно год назад мне поступил запрос: нужен файловый сервер в офис небольшой компании. В самом начале задача звучала так: настроить в офисе компьютер с общей папкой, чтобы пользователи могли обмениваться файлами. Аппарат для этих целей уже был: небольшой системный блок HP на Intel Core i5 с лицензионной Windows 10 pro.

Но, как только я начал уточнять ТЗ, задача стала усложняться. Во-первых, нужно было обеспечить доступ к файлам через интернет, чтобы работать можно было и из дома. На этом этапе я подумал про FTP-сервер или какой-нибудь файловый менеджер для сервера, например, Filerun. И уже в конце опроса клиент обронил фразу, что нужно перенести данные из Дропбокса. Это в корне поменяло задачу. Оказалось, нам нужно было не только запустить сервер, но и перенести данные в соответствии с правами доступа, а также дать пользователям возможность самостоятельно менять права и делиться файлами. По сути, нам нужен был свой «Дропбокс». Я взял недельную паузу на поиск и тестирование решения, так как ТЗ сильно видоизменилось, и отправился искать. В заявленную неделю я не уложился, зато выяснил много интересного про «облака» и задачу в итоге выполнил. Ниже — описание решений, с которыми я познакомился за время поисков.

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

 

Выбор решения

Классические «Облака» состоят из двух частей: одна серверная, она отвечает за хранение файлов и настройки всего, что настраивается. Вторая, клиентская, отвечает за доступ и синхронизацию на устройствах пользователей.

Клиентские программы большинства решений кроссплатформенные, а серверная часть чаще использует Линукс. Но, так как в качестве ОС на сервере мне предложили использовать установленную на нем Windows 10 pro, я начал поиски с Windows-совместимых решений. И почти сразу наткнулся на Pydio.

 

Pydio

«Оно!» — подумал я, когда увидел демоверсию: приложение поразило меня своим функционалом. Удобный веб-интерфейс, возможность совместной работы и гибкие настройки прав доступа. Казалось бы: что еще нужно? Оставалось протестировать на своем компьютере и изучить возможность коммерческого использования. Но когда дело дошло до установки, мое восхищение пропало. Инсталляция происходит из командной строки и разбита на несколько шагов, где нужно вводить требуемые параметры. На одном из шагов программа начала сыпать ошибками, описания которых в документации я не нашел. Я решил не мучаться и отложил Pydio на потом, если не найду ничего более подходящего. На этом наше знакомство было закончено.

 

Afterlogic Aurora Files

Aurora Files — платформа хранения файлов с открытым исходным кодом для небольших команд и персональных пользователей. Так написано на их сайте. Есть также версия Corporate, но тестировал я именно personal. Поддерживает интеграцию с Onlyoffice и своим почтовым клиентом, также имеет встроенный чат. Aurora заработала на Windows 10 с установленным веб-сервером и позволяет загружать и скачивать файлы, а также делиться ими с коллегами. Я уже собрался презентовать систему заказчику, и тут узнал про Owncloud.

 

Owncloud

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

 

Nextcloud

Форк Owncloud, который по функционалу перерос своего родителя. Если вы ищете свой Дропбокс, Nextcloud для вас. Я почитал описание приложения в интернете, понял, что это именно то, что я ищу и приступил к тестированию. Посмотрев, как это работает, я предложил клиенту остановить свой выбор на этом решении, несмотря на то, что для его работы требовался Linux. Ради любопытства я изучил еще одно приложение, но решения своего не изменил.

 

Seafile

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

 

Syncthing

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

 

Почему я выбрал Nextcloud?

Из всех описанных мной решений Nextcloud максимально подходил для решаемой задачи и заработал без ритуальных танцев. Например, когда я установил свежую версию Owncloud на хостинг, вместо работающей системы получил белый экран. Поиск на англоязычных ресурсах намекнул, что у меня слишком свежая версия php. Когда я нашел решение проблемы, узнал про Nextcloud и решил попробовать его. И здесь все заработало так, как я этого ожидал, без дополнительных манипуляций. К тому же Nextcloud наиболее функционален из всего, что я здесь рассматриваю. На мой субъективный взгляд, конечно.

 

Хостинг или свой сервер?

Облако можно «поднять» на своем или виртуальном сервере. Но гораздо проще развернуть его на хостинге и «прикрутить» на поддомен сайта. Рассмотрим плюсы и минусы обоих решений.

 

Хостинг

Легко настроить, просто организовать доступ. Кроме того, на хостинге обычно есть автоматические бэкапы, что немаловажно. Nexcloud на обычном тарифе виртуального хостинга работает очень шустро. Правда, я его не тестировал под нагрузкой. Не знаю, как он будет себя вести, когда к нему будут одновременно подключаться 120 сотрудников вашей компании.

 

Свой сервер

Этот вариант сложнее реализуем и несет в себе больше рисков, хотя и преимуществ у него немало. Если на хостинге за 50 гб придется отдать плюс-минус 5000 в год, то на своем сервере можно хранить 5 терабайт почти даром.

 

Правда, обеспечить стабильность работы ПО и защитить сервер от атак злобных хакеров — ваша головная боль. И бэкапы надо настроить, и хранить резервные копии где-то надо. В общем, за все отвечать вам.

 

Виртуальный сервер

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

 

Если взглянуть на системные требования, станет понятно, что для начала работы нам подойдет даже недорогой VPS, а дальше можно расширяться по мере необходимости.

 

Как установить

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

На VPS/VDS, как и на локальной машине, нужно сначала «поднять» веб-сервер и сервер БД, после чего, опять-таки скачать и разархивировать приложение в нужную папку на сервере.

Подробную инструкцию по настройке приводить не буду, т.к. в интернете их немало. Вот примеры:

Пост на Хабре

Пример установки на Ubuntu 20.04

В качестве операционной системы я выбрал CentOs 8, на котором «поднял» Nginx и mariaDB.

 

Как это работает?

Работа в Nextcloud организована так же, как в привычных Dropbox, Google drive и других: вы можете загружать на сервер файлы и делиться ими с командой. Когда вы редактируете документ у себя на компьютере, изменения синхронизируются для всех пользователей после того, как закроете документ.

С файлами можно работать через веб-интерфейс или установить клиент для компьютера. Я настраивал клиенты для Windows и MacOs, работает очень просто: при установке клиента и авторизации на компьютере пользователя скачиваются, к которым настроен доступ. Пользователь редактирует файл, открывая его на компьютере и после закрытия документа остальные участники видят обновленную копию.

 

Вот как выглядит веб-интерфейс приложения:

 

 

Здесь можно управлять и делиться файлами, а также администрировать пользователей и настраивать систему. Здесь же можно устанавливать приложения.

 

Клиенты для компьютеров

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

 

Мобильный доступ

Nextcloud доступен на платформах ios и android. Приложения позволяют загружать файлы на сервер и скачивать их. Возможен просмотр pdf, фото и видео.

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

С телефона также отлично открывается веб-интерфейс. Он адаптивный и работать с ним достаточно комфортно.

 

А безопасность?

Безопасности стоит уделить особое внимание, если настраиваете локальную машину или VDS. Я выполнил базовые вещи для защиты: настроил Firewall, отключил root и настроил блокировку IP после трех неудачных попыток авторизации при помощи fail2ban.

 

Доступ через интернет

В нашем случае провайдер использует белый IP, поэтому обошлось без приключений: я пробросил порты в маршрутизаторе и все работает до сих пор. Для домашнего использования подойдет сервис динамических DNS. Я тестировал KeenDNS, встроенный в роутер Keenetic — работает. Но если настраиваете в офисе, лучше купить у провайдера белый IP-адрес. Мороки будет меньше. Важно! Для доступа через интернет нужно добавить в конфигурационный файл Nextcloud доверенный домен: ip-адрес или домен, к которому обращаемся при доступе извне.

 

Что еще умеет Nextcloud

Главное: решение «на ура» выполняет свою задачу — хранит файлы пользователей и обеспечивает гибкие настройки доступа к ним. При необходимости функционал можно расширить за счет приложений — их целый магазин. Можно интегрировать Onlyoffice, Collabora, «прикрутить» карты и много чего еще. Например, организовать сервер конференций и чатов. Для этого есть приложение Talk, о котором стоит рассказать подробнее.

 

Talk для Nextcloud

Приложение, которое позволит в два клика развернуть свой сервер для чатов, конференций и звонков. В том числе доступна видеосвязь. Talk я тестировал позже на стареньком двухъядерном сервере, у меня тормозила видеосвязь даже между двумя участниками. Обмен же сообщениями и файлами проходил без замечаний. Также приложение поддерживает обмен голосовыми сообщениями, но у меня записи получались приглушенными, возможно, сервер так пережимал аудио. Я не разбирался в причинах, так как не было необходимости. Главное - это работает и очень просто настраивается.

 

Альтернативы

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

 

Что сейчас?

Спустя год сервер исправно работает, замечаний нет. Работает шустро при умеренной активности почти тридцати пользователей. Пару раз были сбои при отключении интернета. Лечилось перезапуском. Были жалобы пользователей, что приложение отказывается синхронизировать некоторые документы. При беглом взгляде стало понятно, что Nextcloud терпеть не может кавычки в имени файла. Решили проблему, отказавшись от кавычек.

Недавно я с сожалением узнал, что срок поддержки CentOs 8, на котором работает сервер, истекает в конце 2021 года вместо заявленного 2029. Предупредил клиента, ответа пока нет. Скорее всего, будем переезжать на VPS.

 

Выводы

Свое облако для компании — это не модная фишка, а очень полезный и востребованный инструмент. Современные IT-решения позволяют настроить обмен файлами в компании без серьезных затрат. Разместить облако можно на хостинге, «прикрутив» к поддомену сайта. Есть и совсем простые решения под Windows, с которым разберется почти любая домохозяйка. Также есть аппаратные решения, например, NAS Synology, которые заявляют подобный функционал. Перед приобретением обязательно уточните, соответствует ли решение вашим задачам.


Другие мои публикации:

Как не потерять концентрацию на работе и сфокусироваться на рабочем процессе

Образ мышления программиста

 

Если статья оказалась Вам полезной, можете поддержать лайком или см.

См. также

Интеграция 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и др.)

Облачные сервисы, хостинг Программист 8.3.14 Конфигурации 1cv8 Россия Платные (руб)

Готовое решение по интеграции 1С с хранилищем S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и любое совместимое объектное хранилище). Решение даёт возможность осуществлять как основные операции (получить список, закачать, скачать, удалить и т.д.), так и расширенные (работа с бакетами, генерация ссылок, работа с правами и т.д.) с объектным хранилищем S3 прямо из 1С.

31200 руб.

27.04.2021    18916    24    70    

39

Виртуальная АТС Ростелеком - интеграция с 1С

Телефония, SIP Облачные сервисы, хостинг Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Продукт интеграции возможностей Виртуальной АТС Ростелеком в систему 1С Предприятие 8. Звонки прямо из программы 1С, уведомления о текущих звонках, регистрация пропущенных и завершенных вызовов, динамическая маршрутизация входящих звонков, ведение журнала, анализ использования связи.

12000 руб.

04.02.2021    19593    22    0    

26

В облако на работу: Архивирование postgres. Дайте два

Облачные сервисы, хостинг Linux Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

В прошлых публикациях мы, не торопясь, после настройки персонального рабочего места на РедОС 7.3, посмотрели РедОС 8 и почти полностью собрали рабочую сеть 1С на отечественной ОС подходящую для работы среднего размера компании. С веб-серверами, доменной авторизацией и прочая прочая... Осталось настроить регулярное архивирование, чтобы не потерять нажитое.

27.05.2024    790    capitan    6    

9

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Точки над Ё

Облачные сервисы, хостинг Linux Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В одном из лучших руководств администраторов "UNIX and Linux System Administration Handbook, © 2018 Pearson Education lnc." описывается такой метод настройки систем: "Копируй, вставляй, молись". Какой бы ни была подробной инструкция и на какой бы типовой системе она ни составлялась, всегда что-то может пойти не так. В этой публикации рассмотрим, как искать и устранять ошибки авторизации ОС сервером 1С на базе linux.

02.05.2024    820    capitan    0    

11

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Рецепты от Капитана

Облачные сервисы, хостинг Linux Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сервером 1С.

18.03.2024    861    capitan    0    

9

Готовое облако или выделенный сервер? Экономика владения 1С

Облачные сервисы, хостинг Бесплатно (free)

Если вы работаете с 1С, то, скорее всего, используете для этого собственный сервер. Это решение дает больше гибкости: железо всегда под рукой, в любой момент можно поменять конфигурацию или установить дополнительное ПО. Например, чтобы организовать бухгалтеру удаленный рабочий стол. Но насколько этот вариант экономически выгоден для компании? Мы сравнили три варианта развертывания 1С: на собственном сервере, на арендованном в Selectel и в готовом облаке. Какие есть преимущества и недостатки у каждого варианта и что выгоднее — разбираем в статье.

13.03.2024    755    doctor_it    6    

0

Три пингвина под окном… Точки над Ё. Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux

Облачные сервисы, хостинг Linux Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Прошлая публикация "Три пингвина под окном… Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux" набрала более 20К просмотров. В моем случае это абсолютный рекорд. Как и обещал в ней, рассказываю, как установить неподдерживаемый дистрибутив ОС у облачного провайдера.

25.02.2024    2471    capitan    0    

7

Бесплатный митап “1С в облаке: возможности и риски, решения и кейсы”

Облачные сервисы, хостинг Мероприятия Системный администратор Бухгалтер Руководитель проекта Бесплатно (free)

На митапе говорили о переносе 1С в облако: какие решения есть на рынке, их достоинства и недостатки. На примере реальных кейсов узнали особенности перехода, сроки, бюджеты, риски и возможности. В программе митапа 5 докладов и круглый стол.

06.02.2024    3001    0    Infostart    0    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. sofi123 12.11.21 13:29 Сейчас в теме
Ждём продолжения истории)
user786709; 300_po_vstrechke; Zasranetc; +3 Ответить
2. Zasranetc 12.11.21 13:55 Сейчас в теме
Позабавили муки выбора)
300_po_vstrechke; +1 Ответить
3. boevik 2 12.11.21 21:22 Сейчас в теме
Когда также "мучился", остановился на resilio
вообще р2р синхронизация.
tps_01; 300_po_vstrechke; +2 Ответить
9. webester 26 15.11.21 15:18 Сейчас в теме
(3)Долго жил на нем. Купил премиум, чтобы рулить правами, было под сотню пиров, все здорово не считая мелких нюнсов типа, то пиры не видится то скорость отдачи пару килобайт, но как-то решалось само это как я понял издержки протокола bittorrent. Но в какой-то момент он вдруг взял и затер папку. Потом вообще отключил меня от папки где я был владельцем, потом еще что-то было, не помню уже. Немного бомбануло когда срочно надо добавить данные а я не имею доступа. Плюнул поставил syncthing. Не не сказать, что то тоже самое... он больше ориентирован на развертывание между доверенными пирами. Потому, что местами есть немного странные моменты. Но работу свою делает. А ставить движки которые будут управлять этим делом, как-то это администрировать... запустил, указал папку и забыл. Не надо никаких серверов, хостингов и прочего. Даже бекапы делать не надо. Зачем? У тебя в сети есть несколько копий этой папки.
tps_01; 300_po_vstrechke; +2 Ответить
4. Tahallus 441 13.11.21 13:00 Сейчас в теме
Недавно я с сожалением узнал, что срок поддержки CentOs 8, на котором работает сервер, истекает в конце 2021 года вместо заявленного 2029
Можно сделать миграцию из CentOS в AlmaLinux, есть скрипт https://github.com/AlmaLinux/almalinux-deploy, и у вас та же RHEL до 2029 года.
300_po_vstrechke; user1106912; cleaner_it; grantmax2005; +4 Ответить
5. mort64ram 24 15.11.21 05:55 Сейчас в теме
Тоже долгое время искал для себя решения для хранения и обмена файлов между всеми устройствами, перепробовал почти все из списка, дольше всего юзал Nextcloud на VDS, но, через три года при большом количестве файлов он еле шевелится на VDSе с 6гб озу, где кроме него ничего не крутится. В итоге купил Synology, перенес все файлы, и закрыл вопрос.
EliasShy; 300_po_vstrechke; +2 Ответить
6. artbear 1555 15.11.21 11:02 Сейчас в теме
(0) Два вопроса:
1 А что за 2 файла с архивами статьи - у обоих одинаковое название, но цена 1 см и 10 см.
2 за статьи см ? )
300_po_vstrechke; +1 Ответить
7. 300_po_vstrechke 1675 15.11.21 11:21 Сейчас в теме
1. Архив этой статьи.
2. Сижу на паперти храма 1с)
ixijixi; add503; METAL; kpuba; smikex; Vaylon; +6 Ответить
8. Vaylon 15.11.21 11:24 Сейчас в теме
Сижу на паперти храма 1с
))))))) прослезился))))
Vladon222; maratshev@mail.ru; add503; ZaasIngus; METAL; asusteh; s300488; 300_po_vstrechke; smikex; +9 Ответить
10. dj_tol 104 16.11.21 02:19 Сейчас в теме
Так же вношу свои 5 копеек. Дома настроил на MAC OS в Parallel, Nextcloud с внешним ip на Ubuntu 18. Полет нормальный уже 4 года работает не много людей, 10 - 12 человек постоянно. Виртуалка на HDD 1 Tb. переходить не собираюсь. Усложняет отсутствие знаний Linux, но инет рулит и обслуживание / обновление проходит на ура.
add503; ZaasIngus; asusteh; s300488; 300_po_vstrechke; +5 Ответить
Оставьте свое сообщение