Перейти к содержимому

Ns cloud что это за программа

  • автор:

Облако NextCloud. Для чего нужно собственное облако

Nextcloud — это опенсорсное программное обеспечение, которое позволяет создавать облачное хранилище и отправлять туда файлы из любого места. Представьте, что вы используете Dropbox, Google Диск или iCloud, только теперь ещё можете полностью контролировать, где и как хранятся ваши файлы.

Nextcloud по существу состоит из двух частей:

  • Серверное программное обеспечение, которое предоставляет инфраструктуру, необходимую для хранения ваших файлов в облаке. Оно может быть установлено на вашем собственном компьютере (self-hosted) или на удалённом сервере, управляемом и обслуживаемом кем-то другим (hosted).
  • Клиентское программное обеспечение, которое используется для ежедневной загрузки файлов и доступа к ним. Клиентские приложения доступны для Windows, macOS, Linux, iOS и Android.

Nextcloud является форком Owncloud, но за последний год он вырос так сильно, что многие считают его преемником Owncloud, несмотря на то, что последний всё ещё активно работает.

Возможности

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

Если вы выберете простой путь и позволите партнёру Nextcloud настроить для вас полностью размещённое (fully-hosted) облако, то уже он будет контролировать, какие функции будут доступны для вашей учётной записи.

В бесплатных fully-hosted учётных записях доступ к таким функциям, как управление версиями файлов и сквозное шифрование, обычно бывает ограничен, в то время как обладание учёткой премиум-класса даёт административные права, что позволяет вам устанавливать приложения и возиться с ними в своё удовольствие.

  • Бесплатное ПО с открытым исходным кодом (хотя размещение на сервере может стоить денег)
  • Self-hosted или hosted
  • Сквозное шифрование (в фазе тестирования)
  • Управление версиями файлов
  • Предоставление доступа к файлам другим пользователям
  • Совместная работа над файлами
  • Потоковая передача мультимедийных файлов
  • Календарь, контакты, заметки и задачи
  • Автоматическая загрузка фотографий с мобильных устройств
  • Двухфакторная аутентификация (с помощью резервных кодов, приложения для аутентификации TOTP, Yubikey и т.д.)
  • Сотни приложений для расширения функциональности
  • Кроссплатформенность
  • Совместимость с GDPR и HIPPA

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

Управление версиями файлов

Данная фишка предоставляет пользователям Nextcloud возможность управлять версиями файлов. В окне «Файлы» нажмите на Дату последнего изменения > Версии, и вы увидите предыдущие версии файла. Насколько регулярно они сохраняются, определяется администратором Nextcloud.

Для многих бесплатных fully-hosted учётных записей функция управления версиями файлов недоступна.

Общий доступ к файлам

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

Детальную настройку обмена данными между группами пользователей позволяет осуществлять приложение Circles.

Календари, контакты, заметки и задачи

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

Задачи, календари и контакты можно синхронизировать с размещёнными на устройствах Android с помощью приложения DAVdroid, а заметки — с помощью приложения Nextcloud Notes.

Теоретически iOS может использовать WebDAV для синхронизации календарей и задач, а CardDAV — для синхронизации контактов, но на практике это приводит к разочарованию. Однако заметки по умолчанию сохраняются в виде файлов .txt, поэтому легко доступны со всех устройств.

Совместная работа с файлами

Пользователи Nextcloud имеют возможность не только предоставить другим людям доступ к своим файлам, о чём упоминалось выше, но и совместно работать с файлами. В этом им поможет Collabora Online — созданный на базе LibreOffice офисный онлайн-пакет, который поддерживает все основные форматы файлов документов, электронных таблиц и презентаций.

Потоковая передача мультимедиа-файлов

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

Видео прекрасно просматриваются и на Android, но у меня были проблемы с воспроизведением в полноэкранном режиме. Любопытно, что в случае Android я также иногда сталкивался с проблемами даже при потоковой передаче контента и воспроизведения с помощью внешнего проигрывателя, такого как VLC.

Автоматическая загрузка фотографий с мобильных устройств

Эта очень удобная функция автоматически загружает фотографии, сделанные на вашем Android или iPhone. В отличие от других приложений для хранения данных, которыми я пользовался, Nextcloud позволяет отслеживать папки, а это означает, что программа не будет пытаться выгрузить в облако всю вашу коллекцию фото и видео! Кроме того, вы можете контролировать ряд других параметров, например, указать, что загрузка должна выполняться только через Wi-Fi, и т.д.

Кроссплатформенность

Клиентские приложения Nextcloud доступны для Windows, macOS, Android, iOS и практически для всех дистрибутивов Linux.

Доступ ко всем функциям Nextcloud и управление ими осуществляется посредством его веб-интерфейса через любой современный браузер на любой платформе.

Варианты хостинга

Self-hosted

Если вы хотите самостоятельно развернуть Nextcloud, то можете установить его на любой компьютер с Linux. С помощью виртуальной машины он может быть установлен и в системах Windows и macOS.

Популярным вариантом является использование Raspberry Pi в качестве недорогого сервера Nextcloud. У меня есть сомнения по поводу того, хватит ли мощности у этих машин для выполнения данной работы, хотя проблема может быть решена путём использования более мощных новых Raspberry Pi 4 (особенно моделей с 4 ГБ оперативной памяти).

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

Специализированные устройства Nextcloud

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

Hosted

Чтобы получить внешнее облачное хранилище данных, вам потребуется арендовать серверное пространство у стороннего поставщика. Здесь у вас есть два варианта: вы можете самостоятельно установить серверное программное обеспечение на арендованном серверном пространстве (hosted server space) или же позволить партнёру Nextcloud настроить учётную запись и управлять ею за вас (fully-hosted).

Hosted server space

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

Установить Nextcloud на арендованном веб-пространстве довольно просто. Конечно, не так просто, как воспользоваться fully-hosted решением (см. ниже), но гораздо проще, чем установить программу на автономном Linux-боксе.

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

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

Fully-hosted

Позволить облачному провайдеру настроить вашу учётную запись Nextcloud и управлять ею — самый простой вариант, поскольку в этом случае процесс становится практически полностью автоматизированным.

Fully-hosted учётки Nextcloud бывают как минимум двух видов: «персональная» с ограниченным набором функций и «расширенная», которая даёт вам полный доступ, включая возможность добавлять функции через приложения Nextcloud. Бесплатные учётные записи всегда относятся к первому типу. Некоторые провайдеры также предлагают различные «корпоративные» уровни, но они не являются предметом данного обзора.

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

Провайдеры, предлагающие fully-hosted учётки Nextcloud, обычно могут похвастаться лучшим уровнем конфиденциальности, чем Google или Dropbox. Однако важно понимать, что провайдер имеет полный доступ к вашей учётной записи и, следовательно, может получить доступ к вашим файлам и другим данным (например, календарям или заметкам).

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

Конфиденциальность и безопасность

Юрисдикция

Nextcloud разработан немецкой компанией Nextcloud GmbH, основанной создателем ownCloud — Франком Карличеком. Однако, поскольку Nextcloud является опенсорсным программным обеспечением, которое может быть размещено на собственном или удалённом хостинге, место базирования Nextcloud GmbH не имеет особого значения.

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

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

Политика конфиденциальности

Nextcloud GmbH собирает некоторую анонимную статистику использования сайтов, но её приложения не отправляют в компанию никакую информацию.

Сторонние приложения следуют своим собственным политикам конфиденциальности, за которые Nextcloud GmbH ответственности не несёт.

При скачивании Nextcloud с Play Store в Google отправляется push-уведомление, содержащее заголовок и тему. Если вам это не нравится, вы можете скачать apk напрямую или получить приложение через F-Droid.

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

Шифрование

Nextcloud предлагает различные уровни шифрования для обеспечения безопасности ваших данных.

Шифрование во время транзита

Nextcloud защищает передаваемые данные с помощью TLS — протокола шифрования, используемого HTTPS. Это настроено на веб-сервере, но Nextcloud выдаст администраторам предупреждение, если по какой-либо причине TLS не включён. В размещённых решениях, использующих HTTPS для защиты домена, эта функция должна быть включена автоматически.

Шифрование в состоянии покоя

Хранящиеся данные могут быть защищены с помощью AES-256 — шифрования на стороне сервера. Основная проблема здесь заключается в том, что ключ шифрования хранится вместе с данными в экземпляре Nextcloud. Более того, при использовании он сохраняется в оперативной памяти сервера, где к нему могут получить доступ хакеры или операторы сервера.

Расписание синхронизации рабочего стола Nextcloud очень предсказуемо, поэтому обеспечивает лёгкую поверхность атаки для злоумышленников. Таким образом, шифрование на стороне сервера Nextcloud лучше всего использовать для защиты внешних учётных записей, связанных с вашим экземпляром Nextcloud (например, учёток Google Drive и Dropbox).

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

Если вы не храните данные в службах удалённого хранения, то лучше шифровать каждый файл вручную перед загрузкой в Nextcloud и/или использовать полное шифрование диска на сервере (например, с помощью dm-crypt или EncFS).

Полное шифрование диска довольно легко реализовать с помощью автономных облачных или самоуправляемых облачных экземпляров. Если вы используете fully-hosted учётную запись, то всё это находится вне зоны вашего контроля, хотя ваш провайдер может сделать это (так что спросите).

Сквозное шифрование

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

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

Nextcloud использует сертификаты X.509 для проверки открытых ключей, шифр AES-128-GCM (NoPadding) для шифрования закрытых ключей, PBKDF2 с аутентификацией HMAC SHA1 для получения ключей и мнемонику BIP39 в качестве пароля. Полная информация содержится в официальной документации.

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

Следует принять во внимание, что вы не можете обмениваться файлами или папками, зашифрованными с помощью e2ee, с пользователями, не использующими Nextcloud, и вы не можете получить доступ к файлам и папкам e2ee через веб-интерфейс. Впрочем, для большинства людей тот факт, что вы можете легко перемещать файлы между e2ee и обычными папками, должен свести к минимуму любые неудобства.

Основная проблема заключается в том, что реализация e2ee в Nextcloud всё ещё находится в стадии тестирования. На этот счёт имеется чёткое предупреждение, которое гласит: «Не используйте в производственной среде! Только с тестовыми данными!»

Впрочем, учитывая, что рекомендации использовать e2ee на сайте встречаются практически постоянно, подозреваю, что реализация e2ee более надёжна, чем предполагает это предупреждение.

Простота использования

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

Настольное приложение

Настольное приложение для Windows, macOS и Linux создаёт папку Nextcloud, которая синхронизирует все размещённые в ней файлы на всех устройствах, настроенных для использования вашей учётной записи Nextcloud. Вы можете выбрать, какие папки будут синхронизироваться, и запросить подтверждение перед загрузкой файлов, размер которых превышает указанный.

В Windows (но не в macOS и Linux) вы можете щёлкнуть правой кнопкой мыши по файлам в папке Nextcloud, чтобы поделиться ими с другими пользователями.

В остальном настольное приложение очень похоже на всех платформах.

Веб-интерфейс

Более продвинутые функции Nextcloud доступны через веб-интерфейс. Список функций, которые будут вам доступны, очень сильно зависит от того, какие приложения вы (или тот, кто имеет доступ администратора для вашей учётной записи) установили.

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

Мобильные приложения

Мобильные приложения работают под Android и iOS. Как уже отмечалось, приложение для Android доступно вне Play Store — для тех, кто недолюбливает Google.

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

Тарифные планы

Nextcloud 15 доступен в трёх вариантах: Basic, Standard и Premium. Само программное обеспечение имеет открытый исходный код и является бесплатным. Тарифные же планы определяют ваш уровень поддержки и доступ к дополнительным модулям.

Базовый план Basic начинается с 1900 € (2250 $) в год для 50 пользователей и включает в себя поддержку файлов Nextcloud, техническое обслуживание в течение одного года и гарантированную помощь службы поддержки по электронной почте в срок менее трёх рабочих дней.

Стандартный план Standard начинается с 3400 € (4000 $) в год для 50 пользователей. Техническое обслуживание увеличивается до 3 лет, а время реакции службы поддержки сокращается до 2 рабочих дней (плюс возможность обращения по телефону). Обладатели стандартного плана также имеют право на Nextcloud Talk и Groupware по цене от 45 € (53 $) за пользователя в год и 15 € (17 $) за пользователя в год, соответственно.

Наконец, премиальный план Premium увеличивает срок обслуживания до 10 лет и сокращает время реакции службы поддержки до менее 24 часов. Он также предоставляет доступ к Global Scale — платной услуге для клиентов, которым требуется помощь в настройке глобального облачного решения. Стоимость Global Scale — от 4900 € (5800 $) в год для 50 пользователей.

Nextcloud — это полнофункциональное облачное решение для резервного копирования, которое прекрасно работает на различных устройствах и платформах. Его потенциальный набор функций, легко расширяемый администраторами путём установки дополнительных приложений, служит молчаливым упрёком в адрес Dropbox, Google Drive и iCloud.

Самое большое преимущество Nextcloud заключается, конечно, в том, что он предоставляет вам полный контроль над тем, как и где хранятся ваши файлы. Это большая победа в области конфиденциальности, хотя тот факт, что сквозное шифрование остаётся на стадии «пробной версии», создаёт проблемы при использовании Nextcloud для хранения данных на стороннем пространстве.

Впрочем, у меня сложилось впечатление, что e2ee на самом деле довольно надёжен даже на этом этапе, но до тех пор, пока не будет выпущена стабильная версия, его нельзя рекомендовать для конфиденциальных данных. Тем не менее шифрование всего экземпляра с помощью чего-то вроде EcnFS должно обеспечить более чем достаточную безопасность для большинства пользователей.

Настройка fully-hosted учётной записи Nextcloud настолько проста, что с этим справилась бы даже ваша бабушка. Однако при выборе этого варианта теряются реальные преимущества конфиденциальности, поскольку управление учёткой приходится доверять стороннему поставщику.

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

AppCloud на Android: что это за программа и как удалить

AppCloud на Android: что это за программа и как удалить

Сегодня количество мобильных приложений исчисляется миллионами. Программы создают крупные компании и неизвестные разработчики. В последнем случае приложение может представлять серьезную опасность для устройства. Особенно осторожно нужно пользоваться утилитами, которые позволяют изменять внешний вид операционной системы и системные параметры. В случае неправильных действий можно нарушить работоспособность девайса, и тогда придется сбрасывать его к заводским настройкам. Сегодня рассмотрим продукт AppCloud от компании Sprint для расширения возможностей устройства. Утилита ориентирована на опытных пользователей, которым недостаточно стандартных инструментов в Android.

Зачем нужна программа AppCloud

Главная задача – управление мобильными приложениями. AppCloud обычно устанавливается на устройства Samsung. Иногда появляется после очередного обновления системы. Перечислим основные возможности:

  • Просмотр сетевых подключений.
  • Статистика использования модуля беспроводной связи.
  • Вычисление свободного пространства во встроенной памяти гаджета.
  • Сортировка приложений по размеру.
  • Просмотр статистики использования устройства.
  • Настройка автоматического запуска.
  • Отключение спящего режима.
  • Получение уведомлений от облачного хранилища.
  • Управление аккаунтом Google.

AppCloud на Android: что это за программа и как удалить

Приложение повышает надежность хранения информации. Пользователи получают полный контроль над всеми установленными программами. Теперь пропадает необходимость получения прав Root для выполнения задач, заблокированных системой. Еще одна ценная возможность – управление номерами. Утилита умеет подменять номер перед отправкой сообщений. В результате адресат получает СМС с ненастоящего номера. Это пригодится для сохранения приватности.

К сожалению, AppCloud невозможно найти в каталоге Google Play. Оно там отсутствует. Некоторые пользователи не доверяют приложению и думают, что оно собирает персональные данные. Однако доказательства пока отсутствуют. В сети встречаются отзывы о подозрительной деятельности программы – после запуска AppCloud устанавливаются игры без разрешения владельца устройства. Кроме того, утилита тратит трафик. Она может стать причиной необоснованных финансовых расходов, если на телефоне подключен дорогой мобильный интернет. Решением проблемы станет удаление приложения или ограничение передачи данных для него.

Стоит ли удалять AppCloud?

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

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

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

Обратите внимание! Некоторые владельцы смартфонов Samsung сетуют на сложное удаление приложения. После обновления операционной системы утилита появляется снова. Начинает снижаться производительность устройства по причине избыточной нагрузки процессора.

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

Удаление AppCloud с телефона

Избавиться от ненужного мобильного приложения можно несколькими шагами:

  1. Откройте «Настройки».
  2. Нажмите кнопку «Приложения» – «Диспетчер приложений».
  3. Найдите название ненужной программы.
  4. Нажмите кнопку «Удалить».
  5. Откройте раздел «Память» и сотрите временные файлы кнопкой «Очистка данных».
  6. Вернитесь назад.
  7. Снова нажмите «Удалить».

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

Выводы

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

Развертываем облачное хранилище NextCloud AIO на Windows в Docker для дома

Доброго времени суток! С уходом компаний я задался вопросом: «что делать, если прикроют мой любимый Google Drive?». Понятно, что есть аналоги – Яндекс.Диск и Облако Mail.ru, но оба бесплатно предоставляют только 8 гб дискового пространства, а дальше жесткая тарификация, в то время как Google дает 15 и стоит дешево. «А так, чтобы бесплатно?». Выяснилось, что существует [достаточно много open-source решений]() для домашнего и корпоративного использования. Одним из самых популярных и навороченных является система NextCloud, представляющая собой набор программ и модулей для развертывания своего полноценного облачного хранилища. NextCloud Server даже предлагается для скачивания во время установки Ubuntu Server.

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

Что полезного содержит эта статья.

Запуск NextCloud в докере на Windows и Linux.

Запуск NextCloud на домашнем компьютере. Проблемы, ограничения.

Запуск NextCloud для тестирования. Приобретение понимания, нужен ли этот продукт.

Анализ целесообразности развертывания облака дома.

Подробный разбор параметров контейнера NextCloud AIO.

VPN-тоннель домой с использованием сервиса Hamachi. Обход проблемы отсутствия белого ip.

Настройка reverse-proxy на базе Nginx, Apache или Caddy.

Запуск HTTPS-сервера на домашнем компьютере.

Получение SSL-сертификата с помощью сервиса letsencrypt.

Краткий разбор форматов SSL-сертификатов.

Настройка файервола в Windows.

Домашняя машина, на которой запущен NextCloud: Windows 10, Docker, образ NextCloud AIO, Hamachi-клиент для Windows, PuTTy.

Reverse-proxy-сервер: Ubuntu Server, certbot, Nginx, или Apache, или Caddy, консольный Hamachi-клиент для debian.

Ключевые слова.

NextCloud, NextCloud-AIO, reverse-proxy, Nginx, Apache, Certbot, Hamachi, localhost, Windows, Defender, SSL, HTTPS дома.

Содержание.

Целесообразность.

Зададимся вопросом: а надо ли оно нам? Когда я приступал к настройке в первый раз, не зная особенностей этого программного комплекса, я бы однозначно ответил «да». Собственно, проблема стояла четко, и ее надо было преодолеть. У меня была техническая возможность и пометка в документации, что это развернуть NextCloud дома возможно. Но действительность оказалась, как всегда, скажем, другой. Сравним ожидание и реальность:

Ожидание:

Использование своего железа: большие объем диска и ОП, быстрый процессор.

Сервер установлен на той же машине, с которой осуществляется подключение loopback (localhost), следовательно, доступ к файлам мгновенный, как при использовании средств просмотра.

Быстрый доступ (до 100 Мбит/с) со всех устройств в квартире, находящихся в локальной Wi-Fi- или Ethernet-сети: ПК, ноутбука, планшета, смартфона, часов, холодильника – для всей семьи.

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

Доступ к файлам на ПК из любой точки мира с шифрованием.

Авторизация подключений путем добавления пользователей в сеть VPN.

Гибкая настройка доступа с помощью дополнительных модулей NextCloud для авторизации.

Клевые расширения: сервис авторизации через соцсети, аналоги Google Meets, Google-карт и Google-календаря, таск-трекеры и т.д. — все в одном месте — прямо как у «корпорации добра».

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

Все бесплатно, исключая затрат на железо: нет платы за ПО и аренду диска в облаке.

Не надо настраивать файервол, т. к. vpn — это частная сеть.

Реальность:

Отсутствие дистрибутива сервера NextCloud под Windows. Придется разворачивать на VM или в Docker. Но есть Windows-клиент. Однако, основным является браузерный клиент, а он кроссплатформенный.

NextCloud обязывает завести домен несмотря на то, что часто достаточно было бы подключаться по VPN. Его нельзя запустить на localhost (127.0.0.1) или другом IP без домена.

SSL. В принципе на этом можно было бы закончить. В репозитории NextCloud прямым текстом говорится о том, что концепция этой утилиты состоит в работе только с прокси по HTTPS. К сожалению, обязательная привязка к SSL перечеркивает все преимущества, основанные на быстром доступе по следующим причинам:

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

Белый IP требует денежных вложений, чего изначально я пытался избежать. За внешний сервер даже самый слабый так же нужно платить аренду. Кроме того, согласно документации NextCloud’а не желательно, чтобы само облачное хранилище работало на том же хосте, на котором хранятся SSL-сертификаты, так что придется настраивать reverse-proxy. Я арендовал самый дешевый сервер: за 400 рублей в месяц, 1 ядро, 1 Гб, 32 Гб – супер-невыгодное предложение (об этом далее). Это уже дороже, чем подписка Google Drive (от 140 рублей за 30 Гб до 700 за 2 Тб). В идеале, стоило бы разместиться у друга или на выделенном сотрудникам сервере в офисе компании, в которой Вы работаете (обязательно проконсультируйтесь у сисадмина по устранению уязвимостей, связанных с работой VPN).

Сервер с 1 ГБ виртуальной ОЗУ тормозит (утилита top показывает загрузку 70-90%), и не может скомпилировать даже небольшой проект, а в режиме reverse-proxy с трудом способен обеспечить доступ 2-м клиентам одновременно, хотя значительную задержку вносят операции на моем HDD (чтение HDD происходит со скоростью около 30 Мбит/с).

Большая задержка по сети: трафик идет от клиента в датацентр, где развернут прокси, а оттуда ко мне домой, при этом пропускная способность датацентра, как водится, отличная, а ADSL-линия (старая технология доступа в интернет по телефонным проводам), протянутая ко мне провайдером, обеспечивает скорость входящих пакетов (на скачивание) всего 40 Мбит/с, и если я не ошибся в определении технологии, используемой провайдером, скорость исходящих пакетов (выгрузка в интернет, т.е. максимальная скорость доступа к моему «облаку») ограничена где-то 10 Мбит/с, когда обычная jpeg-картинка весит 4.2 Мб.

SSL-сертификат иногда выписывается при оплате домена, но в других случаях требует отдельной покупки. Однако его можно выписать себе самому. Самописные сертификаты не принимаются современными браузерами или принимаются ограниченно. Преимущество NextCloud состоит в том, что он умеет самостоятельно решать эту проблему, но только если не используется свой reverse-proxy.

Использование виртуальной машины накладывает ограничение на работу с облачным хранилищем напрямую через диск: все изменения в хостовой ФС NTFS должны быть проиндексированы (продублированы) в гостевой ФС Ext4. Хорошая новость состоит в том, что это не препятствие: перемещаем папку с ДЗ 30 Гб в папку NextCloud/data/<user>/files и создаем директорию с таким же названием через веб-клиент (в документации называется UI-client); однако иногда выскакивают предупреждения о невозможности выполнения операции особенно при удалении. На деле, мы всегда знаем, что ничего никуда не удаляется, а файлы просто перемещаются по диску в т. ч. в корзину.

Нужно не забыть настроить файервол как на домашнем компьютере, так и на reverse-proxy сервере.

Прежде чем приступать к настройке облака через веб-панель администратора, надо обязательно обеспечить доступ на сервер по порту 443. Этого требует NextCloud. Главная проблема при работе сервера на домашнем компьютере связана с этим. В Windows и Linux открыть для входящих соединений зарезервированные порты 0-1024 можно только лишь с правами администратора через настройки файервола. 443 порт может быть также заблокирован роутером. В Windows придется еще повозиться с политиками безопасности, в т. ч. групповыми. Прокси сервер и Docker тут кстати: можно настроить проброс портов и обойти эти трудности.

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

Установка программного комплекса NextCloud только для пользования в ЛВС нецелесообразна, т. к. локальная сеть — это изолированная система без возможности принимать входящие подключения, а значит, смысл облака теряется. В таких случаях требуется настроить шлюз с белым IP-адресом. Для работы чисто в ЛВС, возможно, достаточно настроить совместный доступ к папкам на диске NTFS и включить сервер RPC (стандартная возможность в Windows).

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

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

Если Вам важно наличие именно функций NextCloud’а, некоторые люди на форумах предлагают поднять локальный DNS-сервер. Я пытался сделать и это, но такое решение не избавляет от необходимости подтверждать SSL-сертификат и разворачивать reverse-proxy, зато добавляет еще одну задачу по конфигурированию DNS в ЛВС. Если Вы решитесь пойти этом путем, посмотрите на bind9.

Итак, поставим задачу.

Задача

Хостинг NextCloud в локальной сети на Windows. Берем образ NextCloud AIO (all-in-one – англ. все в одном) – образ со всеми необходимыми утилитами.

Ресурсы

Также у NextCloud есть форум, где люди делятся своими проблемами и решениями. Возможно, Вы найдете здесь решение Вашей проблемы.

Мне очень помог этот гайд на youtube. Автор подробно объясняет, как будет работать итоговая система с точки зрения сисадмина. Он прошел через все этапы, настройки, которые затрагиваются в этом гайде. Единственное, он не рассказывает, как он установил сам NextCloud Server на свою машину. Кроме того, он использует Apache вместо Nginx и OpenVPN вместо Hamachi, не затрагивает тему Docker-контейнера NextCloud AIO.

На youtube, я не нашел гайдов, как запустить Docker-образ NextCloud AOI на локальной машине. А жаль, ведь есть много камней вроде выбора портов. Все развертывают NextCloud на внешнем арендованном сервере. Тем не менее, эти гайды демонстрируют, как правильно настроенный сайт выглядит в браузере.

Если Вы не знакомы с Docker, то для этого гайда это не критично. Но я все же посоветую посмотреть какой-нибудь гайд по запуску сервера в docker-контейнере. Бегло ознакомится стоит также с docker-compose.

Об образе NextCloud AIO.

Чтобы понять, что и для чего делается дальше, нужно пояснить, что входит в поставку образа NextCloud AIO. Если запустить этот контейнер, как сказано в документации, получим несколько дополнительных:

nextcloud-aio-mastercontainer – главный контейнер, в который превращается с образ NextCloud AI при запуске.

nextcloud-aio – основное приложение и веб-клиент к нему.

nextcloud-aio-redis – кто бы мог подумать, редис.

nextcloud-aio-database – контейнер, обеспечивающий соединение с БД. После установки будет предложено подключить свою: postgres, mysql или создать sqlite.

nextcloud-aio-apache – контейнер, обеспечивающий подключение ssl-сертификатов. Работает как reverse-proxy. Принимает HTTPS-запросы на порту 443 и передает их HTTP-версию на обработку в контейнер с основным приложением. Также, генерирует ssl- сертификаты. Самое интересное, что внутри контейнера, который называется nextcloud-aio-apache используется еще и готовый reverse-proxy Caddy. Caddy позволяет запустить HTTPS-сервер с самописными сертификатами с помощью однострочного конфига. Внутри себя запускает утилиту certbot, о которая также затрагивается в этом гайде (этап 2). Функционал этого контейнера не используется целиком, если подключаем внешний прокси-сервер. В этом гайде расписано, как это работает в этапе 2 и этапе 3.

nextcloud-aio-domaincheck – в этом контейнере обрабатываются ACME DNS Challenge-запросы для подтверждения самописанных ssl-сертификатов, если не используется внешний прокси. См. этап 2 вариант 2.

nextcloud-aio-callabora и nextcloud-aio-talk – дополнительные модули NextCloud. Их будет предложено подключить по окончании настройки.

На reverse-proxy не стоит обращать внимания. Это «имя проекта» — имя директории, где лежит docker-compose.yml.

Этап 1. Настройка VPN.

VPN позволит принимать соединения на домашнем компьютере без приобретения белого ip-адреса у провайдера.

Буду использовать Hamachi. У него хороший десктоп-клиент на Windows и есть консольный на Linux. Можно использовать любой другой VPN: например, в этом гайде используется аналог — OpenVPN.

Ставим клиент на Windows. Создаем сеть, даем ей имя и пароль.

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

Рис. 2. Параметры Hamachi.Рис. 2. Параметры Hamachi.

Фильтрация трафика – это по сути файервол. Hamachi добавит новую (виртуальную) сеть, которая для ОС аналогична полноценному сетевому интерфейсу, т.е. в компьютере как бы появится новая сетевая карта. Посмотреть на нее можно в панели управления: Панель управления -> Сеть и Интернет -> Центр управления сетями и общим доступом:

Рис. 3. Виртуальный интерфейс Hamachi в Панели управления Windows.

Рис. 3. Виртуальный интерфейс Hamachi в Панели управления Windows.

Также можно увидеть этот интерфейс, введя в консоль или powershell, запущенную от имени администратора (Win+X -> Windows PowerShell от имени администратора) команду ipconfig :

Рис. 4. Виртуальный интерфейс Hamachi в утилите ipconfig.

Рис. 4. Виртуальный интерфейс Hamachi в утилите ipconfig.

На этой сети может работать встроенный файервол Windows (Defender). Его настроим в конце.

Перейдем на Ubuntu-сервер. Я для этого использую клиент PuTTy.

На reverse-proxy-сервере достаточно подключиться к нашей сети как клиент (показано для Debian/Ubuntu (Про установку в CentOS):

Теперь можно проверить работу VPN-тоннеля. Либо на сервере, либо на домашнем ПК наберите ping <ip домашнего ПК или ip сервера, который выдал Hamachi> . Также это можно сделать в графическом клиенте Hamachi: ПКМ по участнику сети -> Проверить доступность.

Рис. 5. Сообщение утилиты ping, говорящее о наличии соединения.

Рис. 5. Сообщение утилиты ping, говорящее о наличии соединения.

Этап 2. Получение SSL-сертификата.

Если хотите использовать Caddy в качестве reverse-proxy, этот этап можно пропустить. Главное, чтобы Ваш сервер был доступен в интернете (имел белый ip), т. к. Caddy внутри себя использует certbot (см Этап 2. Вариант 2 ниже). Более того, при использовании образа NextCloud AIO на той же машине, где развернут сам NextCloud Вам не требуется его настраивать, т.к. он входит в образ.

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

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