Nextcloud windows client настройка

Установка клиента NextCloud

В этой публикации будет показано, как выполняется установка клиента NextCloud на наиболее распространенные платформы – Windows 10 и Linux Mint. Процесс установки и настройки довольно прост, но, возможно, что кто-то сталкивается с этим впервые и данная публикация должна помочь разобраться с настройками подключения настольного клиента для NextCloud.

Предварительные требования

Каких-то сверхбольших требований настольный клиент не предъявляет. Клиент доступен для следующих платформ:

  • Windows 8.1+
  • macOS 10.14+ (64-bit only)
  • Linux
  • FreeBSD

Установка клиента NextCloud на Windows

Начнем с установки настольного клиента на платформу Windows. В публикации будет использоваться Windows 10.

Что нужно выполнить для установки настольного клиента:

1. Переходим на сайт загрузки:

https://nextcloud.com/install/

2. Выбираем платформу Windows.

3. Запускаем мастер установки.

4. Рекомендуется выбрать все компоненты:

5. Запускаем процесс установки настольного клиента:

6. После завершения установки можно попросить мастера сразу запустить настольный клиент:

7. При первом запуске клиента один из вариантов – это вход в существующую учетную запись. Это именно то, что нужно в большинстве случаев.

8. Указываем URL для подключения к серверу:

https://files.itproblog.ru

9.Настольный клиент запустит веб браузер, в котором попросит выполнить аутентификацию на сервере NextCloud.

10. После успешной аутентификации и авторизации необходимо предоставить разрешения настольному клиенту.

11. Следующий шаг довольно важный- он определяет стратегию синхронизации файлов локального устройства и сервера NextCloud.

Первый пункт (Синхронизировать все с сервером) выполнит полную синхронизацию в локальную директорию всех файлов и директорий с сервера NextCloud. Это может быть довольно оъемный вариант, если на сервере, скажем, 200+ ГБ данных.

Второй вариант позволяет синхронизировать выборочные директории и файлы.

Наиболее оптимальный вариант – это третий пункт (Использовать виртуальные файлы вместо загрузки). В этом случае в Проводнике вы будете видеть все файлы. Точнее ярлыки для них. При необходимости вы можете загрузить себе на локальное хранилище либо отдельные файлы, либо директории целиком. Рекомендуется именно этот вариант.

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

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

Установка клиента NextCloud на Linux

Установка настольного клиента на Linux во многом похожа на аналогичный процесс на платформе Windows. В статье будет использоваться Linux Mint Linux Mint 21.2 Cinnamon.

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

1. Переходим на сайт загрузки дистрибутива:

https://nextcloud.com/install/

2. Выбираем соответствующую платформу:

Дождитесь окончания процесса загрузки.

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

4. После установки разрешения на выполнение можно запустить клиент:

5. Указываем адрес для подключения к серверу:

6. Затем необходимо аутентифицироваться в браузере:

7. И предоставить приложению необходимые разрешения:

8. Но в отличии от настольного клиента Windows клиент Linux не умеет работать с виртуальными каталогам. Вы можете выбрать между синхронизацией всех файлов или синхронизацией только отдельных каталогов:

9. После завершения процесса настройки настольный клиент запустит цикл синхронизации с учетом выбранных вами настроек.

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

Обращаем ваше внимание, что клиент Nextcloud работает исключительно по HTTPS. Поэтому, если вы используете HTTP, рекомендуем написать запрос в техподдержку о подключении HTTPS на ваш сервер. Предварительно вам необходимо будет создать A-запись на вашем DNS сервере:
https://mclouds.ru/articles/cloud-disk/func/add-domain/

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

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

Скачем клиент для Windows 10 и выполним установку. После установки откроется подключение к вашему облачному диску, нажмите «Войти в Nextcloud»

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

Далее скопируйте ссылку и перейдите по ней в браузере для синхронизации вашего аккаунта с клиентом на вашем ПК

Проверьте название вашего ПК и нажмите “Войти”

Далее нажмите “Разрешить доступ”

После успешного подключения вы увидите такую страницу

В клиенте для вашего ПК будут предложены к выбору параметры синхронизации файлов

1. Настройка Web-браузера
2. Синхронизация с помощью клиента NextCloud для Windows
3. Работа с файлами на Android и iOS
4. Подключение сетевого диска

1. Настройка Web-браузера
Рекомендуем внести сайт в доверенные. Для этого в панели управления в Свойства браузера(inetcpl.cpl), перейдите на вкладку Безопасность, выберете Местная интрасеть, и нажмите кнопку Сайты, затем Дополнительно, введите адрес сервера и нажмите Добавить.

Примечание! При открытии файлов через браузер – происходит скачивание копии файла на локальный компьютер. Соответственно вносимые в скачанный файл изменения на сервер не попадут. Исключение некоторые офисные документы которые могут быть открыты и отредактированы в самом браузере.

2. Настройка синхронизации с компьютером с помощью клиента NextCloud для Windows
Данный метод мы рекомендуем к использованию!

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

3. Работа с файлами на Android и iOS
Скачайте и установите соответствующее приложение:
Запустите и введите адрес сервера, а также ваш логин(e-mail) и пароль.
По умолчанию никакие папки и файлы на мобильное устройство не синхронизируются, и приложение работает только в режиме отображения файлов с сервера. Если вы нажимаете открыть какой-либо файл – на мобильное устройство скачивается его копия. Изменения, вносимые в копию, автоматически на сервер не загружаются. Если вы хотите, чтобы избранные папки в облаке синхронизировались с мобильным устройством, необходимо в свойствах папки выбрать «Синхронизировать». Тогда вносимые изменения будут синхронизироваться между сервером и мобильным устройством.

4. Подключение сетевого диска
Данный метод мы не рекомендуем к использованию!
Имейте ввиду, что в этом режиме файлы открываются (и сохраняются) напрямую с облачного сервера, в связи с чем работа происходит медленнее, чем при использовании синхронизации.
Для подключения сетевого диска откройте Мой компьютер, в меню Компьютер, выберете Подключить сетевой диск, и укажите путь к сетевому диску, установите галки «Восстанавливать подключение при входе в систему», а также «Использовать другие учётные данные» и нажмите готово. В окне запроса логина и пароля укажите свои логин(email) и пароль, а также поставьте галку «Запомнить учётные данные», нажмите ОК.
Также в качестве альтернативы можно использовать адрес вида
https://АДРЕС_ЭКЗЕМПЛЯРА.lancloud.ru/remote.php/dav/files/user@domain.ru
Где user@domain.ru — логин в сервисе cloud disk в формате email.
АДРЕС_ЭКЗЕМПЛЯРА — адрес сервера выданного вам при создании

Подключение по протоколу WebDAV мы не рекомендуем, т.к в реализации протокола имеются неочевидные проблемы. В Windows в частности например по умолчанию есть ограничение по размеру файлов в 50 МБ, повторные запросы паролей при открытии офисных документов и PDF файлов.

Доброго времени суток! С уходом компаний я задался вопросом: «что делать, если прикроют мой любимый 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 AIO

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

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

    • Покупка

    • Самописные сертификаты certbot

  • Этап 3. Настройка reverse-proxy

    • Apache

    • Nginx

    • Caddy

    • Тестирование

  • Этап 4. Запуск NextCloud AIO в Docker

    • Переменные окружения

    • Volumes

    • Порты

    • Пояснения к опциям docker run

    • Запуск

    • Первичная настройка

    • Не работает domaincheck

  • Этап 5. Фаервол

  • Инструменты Windows для диагностики сетевых интерфейсов

  • Заключение

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

Зададимся вопросом: а надо ли оно нам? Когда я приступал к настройке в первый раз, не зная особенностей этого программного комплекса, я бы однозначно ответил «да». Собственно, проблема стояла четко, и ее надо было преодолеть. У меня была техническая возможность и пометка в документации, что это развернуть 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 – англ. все в одном) – образ со всеми необходимыми утилитами.

Ресурсы

Наша библия для этого гайда – документация в репозитории.

Есть и другие варианты установки (листать до DOWNLOAD SERVER).

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

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

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

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

Об образе NextCloud AIO.

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

Рис. 1. Контейнеры, порожденные nextcloud-aio-mastercontainer.

Рис. 1. Контейнеры, порожденные nextcloud-aio-mastercontainer.
  • 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):

wget http://www.vpn.net/installers/logmein-hamachi_2.1.0.165-1_amd64.deb
sudo dpkg -i logmein-hamachi_2.1.0.165-1_amd64.deb
# подключение к сети > в графическом клиенте появится новый участник
hamachi join <network id> <password>
# включение автозагрузки сервиса 
sudo systemctl enable logmein-hamachi

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

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

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

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

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

Вариант 1. Покупка сертификата.

Покупаем сертификат. Получаем 2 файла: fullchain-сертификат и приватный ключ, переводим их в формат .pem. Тут и далее будем называть их fullchain.pem и privkey.pem. Для Apache еще нужен будетpublic.pem с публичным ключом.

Примечание. В основном встречаются 3 типа форматов ключей: .pem, .crt, .cer, .key. Расширение файла не имеет значения. Имеют значение блоки в них. Подробнее тут. Центр выдачи сертификатов, например, reg.ru, даст Вам 5 файлов следующего вида:

Публичный сертификат

——BEGIN CERTIFICATE——

<много букв и цифр>

——END CERTIFICATE——

Корневой сертификат
——BEGIN CERTIFICATE——

<много букв и цифр>

——END CERTIFICATE——

Промежуточный сертификат
——BEGIN CERTIFICATE——

<много букв и цифр>

——END CERTIFICATE——

Запрос на получение сертификата
——BEGIN CERTIFICATE REQUEST——

<много букв и цифр>

——END CERTIFICATE——

И приватный ключ

——BEGIN RSA PRIVATE KEY——

<много букв и цифр>

——END RSA PRIVATE KEY——

Из конечного, промежуточного, корневого сертификатов в обычном блокноте нужно собрать fullchain, а приватный ключ записать отдельно. Если используете Apache, вынесете также отдельно публичный сертификат в файл public.pem. Если чего-то для fullchain не хватает, вставляйте то, что есть, главное, чтобы был корневой или промежуточный.

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

Промежуточные сертификаты. Любые виды цепочек сертификатов. Тоже имеют право удостоверять (подписывать) другие сертификаты.

Сохраняем 2 файла в папку /certificates на сервере. В PuTTy вставка текста осуществляется через ПКМ.

Вариант 2. Генерация самописного сертификата с помощью сервиса letsencrypt и утилиты certbot.

apt update
apt install -y software-properties-common
apt update
apt install -y certbot
certbot certonly -d www.<Ваш домен>,<Ваш домен> --agree-tos –n
certbot certificates
certbot renew --dry-run

Первые 4 команды обновляют репозитории для скачивания и устанавливают утилиту certbot. Команда на пятой строке говорит сгенерировать или обновить сертификат (certbot certonly) для доменов <Ваше доменное имя> с доменом верхнего уровня www и без него (вводить домены через запятую) (-d www.<Ваш домен>,<Ваш домен>) в неинтерактивном режиме для пропуска всех вопросов (certbot -n), соглашаясь с лицензионным соглашением ACME DNS Challenge (certbot --agree-tos). Предпоследняя покажет, в какую директорию certbot записал сертификаты. Последняя команда просит автоматически обновлять сертификаты по их истечению. Сами по себе сертификаты действительны 3 месяца.

Возможно, Вам также пригодятся следующие флаги команды certbot:

-m <email> — сюда будут приходить уведомления о состоянии сертификата, например, напоминания о том, что его надо продлить.

--webroot <путь> — certbot положит сертификаты в эту папку. Удобно, если уже есть развернутый сервер.

ACME DNS Challenge – это специальный стандарт проверки доменов, которые использует letsencrypt. Это накладывает дополнительные ограничения. Например, эти сертификаты не будут работать на собственном DNS, ведь для их подтверждения на Ваш сервер будет приходить запрос от letsencrypt по url, начинающимся на _acme-challenge или .well-known/acme-challenge. Надо научить сервер правильно на него отвечать. Это для нашей задачи вообще не понадобится, но кому интересно, подробнее тут. В Nginx-конфиге, например, поддержку ACME через HTTP можно осуществить, добавив что-то вроде

location ~ .well-known/acme-challenge {
    allow all;
    root /usr/share/nginx/html;
} 

От выбора способа получения сертификата в нашем случае зависит не только положение ключей на диске (будем считать, что они лежат в /certificates). В случае с certbot’ом, если Вы используете Nginx, надо будет немного изменить конфиг (об этом в конфиге ниже).

Этап 3. Настройка reverse-proxy.

Образ NextCloud AIO поддерживает внешний reverse-proxy как опцию и требует, связать его и порт машины, где развернут контейнер Apache, входящий в поставку NextCloud AIO, а для этого надо указать переменную среды для контейнера APACHE_PORT с номером этого порта. В конфиге прокси-сервера требуется все внешние HTTPS-запросы перенаправлять на этот порт. Он может быть любым, но в документации используется 11000. Его и укажем. Итак, перенаправляем HTTP-запросы (порт 80) на HTTPS (443), а HTTPS 443 на HTTP11000. Таким образом, любой запрос в браузере к нашему домену, где явно не указан порт, будет приходить на порт 11000 машины, где развернут контейнер NextCloud AIO.

Вариант 1. Reverse-proxy на базе Apache

Наглядно процесс настройки показан в том ролике, на который я ссылался ранее. Конфиг ниже взят из него.

# файл apache.conf – конфиг, как в видеоролике

<VirtualHost *:80>
    ServerName www.<домен>
  
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>


<VirtualHost *:443>
    SSLEngine on
    RequestHeader set X-Forwaded-Proto "https"
    SSLCertificateFile /certificates /public.pem
    SSLCertificateKeyFile /certificates /privkey.key
    SSLCertificateChainFile /certificates /fullchain.crt
    SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
    SSLCipherSuite HIGH:!aNULL:!MD5:!3DES
    SSLHonorCipherOrder on
    Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"

    ServerName www.<домен>

    ProxyPreserveHost On
    ProxyPass / http://<ip домашнего компьютера в сети hamachi>:11000/
    ProxyPassReverse / http://<ip домашнего компьютера в сети hamachi >:11000/
</VirtualHost>

Можно попробовать альтернативный конфиг, представленный в документации.

Установим сам Apache и активируем конфиг.

apt update
apt install apache2

# Создаем или перемещаем конфигурационный файл в правильную директорию
mv <домен>.apache.conf /etc/apache2/sites-available/<домен>.conf

# Подключаем модули для работы с https в режиме проксирования
a2enmod proxy rewrite ssl headers proxy_http

# По умолчанию Apache уже имеет конфиг с базовым сайтом-пустышкой.
#Отключаем. И подключаем свой.
a2dissite 000-default.conf
a2ensite <домен>.apache.conf

# Проверка конфига
apachectl configtest

# Если выскочит предупреждение о том, что apache не знает имени сервера,
# выполним следующие 3 команды (необязательно):
chmod 777 /etc/apache2/apache2.conf
echo -e "$(cat /etc/apache2/apache2.conf)\nServerName <любое имя>" > /etc/apache2/apache2.conf
chmod 644 /etc/apache2/apache2.conf

# Обязательно перезапускаем apache
service apache2 restart  # или systemctl restart apache2

Развернуть Apache сервер для теста с NextCloud можно, например, в докере, воспользовавшись docker-compose.

# docker-compose-apache.yml
services:
  apache-reverse-proxy:
    image: php:7.4-apache
    restart: unless-stopped
    container_name: apache
    volumes:
      - ./certificates:/certificates
      - ./apache.conf:/etc/apache2/sites-available/apache.conf
    ports:
      - "80:80"
      - “443:443” 
      - "11000:11000"
    network_mode: 'host'
    tty: true
    command: bash -c "
      chmod 777 /etc/apache2/apache2.conf
      && echo -e \"$$(cat /etc/apache2/apache2.conf)\\nServerName www.sabernews.ru\" > /etc/apache2/apache2.conf
      && chmod 644 /etc/apache2/apache2.conf
      && a2enmod proxy rewrite ssl headers proxy_http
      && a2dissite 000-default.conf
      && a2ensite sabernews-nexcloud.apache.conf
      && service apache2 restart
      && apachectl configtest
      && apt update
      && apt install -y net-tools
      && tail -f /dev/null
      "

  nextcloud:
    image: nextcloud/all-in-one:latest
    restart: unless-stopped
    container_name: nextcloud-aio-mastercontainer
    ports:
      # про порты для nextcloud далее
      - "8080:8080"
      - "80:80"
      - "11000:11000"
      - "8443:8443"
    environment:
      - NEXTCLOUD_DATADIR=nextcloud_aio_nextcloud_datadir
    volumes:
      - nextcloud_aio_mastercontainer:/mnt/docker-aio-config
      - //var/run/docker.sock:/var/run/docker.sock:ro
    depends_on:
      - apache-reverse-proxy

volumes:
  nextcloud_aio_mastercontainer:

Вариант 2. Reverse-proxy на базе Nginx

Лично я использовал сервер, на котором был запущен другой веб-сайт, работающий на Nginx, а значит порты 443 и 80 уже были заняты. Как уже отмечалось выше, NextCloud’у обязательно нужен 443 порт. Однако домены разные, а значит, надо просто дополнить конфиг Nginx следующими строчками, которые будут работать и как самостоятельный конфиг-файл:

# <домен>.nginx.conf
# -> нужно поместить в /etc/nginx/nginx.conf

http {

## reverse-proxy
  server {
    listen 80 default;
    server_name www.<домен>;
    access_log off;
    error_log off;
    return 301 https://$server_name$request_uri;
  }

  server {
    server_name www.<домен>;
    listen 443 http2 ssl;
    access_log  /root/reverse-proxy/access.log;

    ssl_certificate     /certificates/fullchain.pem;
    ssl_certificate_key /certificates/privkey.pem;
    # эти строчки требуются для правильной работы сертификатов сертбота
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers off;
    ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY13305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";

    location / {
      add_header Cache-Control "public, must-revalidate";
      add_header Front-End-Https on;
      add_header Strict-Transport-Security "max-age=2592000; includeSubdomains";
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_pass http://<ip>:11000;    }
  }
#server ## reverse-proxy

} # http

В документации написано, что конфиг, представленный там, может не работать. Он действительно не работает из-за строчки proxy_set_header Host $host;, которая сохраняет заголовок Host HTTP, содержащий ip-адрес клиента. Это стандартное решение для прокси-серверов, иначе бекенд не сможет отличать клиентов по этому заголовку, если требуется. Однако в режиме reverse-proxy, когда прокси сервер перенаправляет через себя как запросы клиентов, так и ответы бекенда: и то, и то для прокси сервера является входящими сообщениями, которые подлежат обработке. Nginx опирается на Host, чтобы их различать. Если подменить хост, то это приводит к бесконечному перенаправлению запросов.

Запустим Nginx:

mv <домен>.nginx.conf /etc/nginx/nginx.conf
# тестируем конфиг
nginx –t
# Обязательно перезапускаем nginx
service nginx restart  # или systemctl restart nginx

Вариант 3. Caddy reverse-proxy

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

# Caddyfile

https://<домен>:443 {
    reverse_proxy <ip>:11000
}

Проверка работы

Остается протестировать. Я написал простой сервер на NodeJS для этого.  Для запуска Вам понадобится установить node.

// server.js
const http = require("http");

const host = '0.0.0.0';
const ports = [80, 443, 8443, 11000, 8080];

const servers = ports.map((port) => {
  try {
    return [http.createServer((req, res) => {
      console.log(`[${port}]`, req.url, '  |', req.headers['user-agent'].slice(0, 20), '|   ', req.headers['x-forwarded-for']);
      req.on('error', (err) => {
        console.error(err);
      });

      res.writeHead(200);
      res.end(`served by ${port}\n${req.headers["user-agent"]}\n`);
    }), port];
  }
  catch (err) {
    console.error(err);
  }
});


servers.forEach(([server, port]) => {
  try {
    server.listen(port, host, () => {
      console.log(`Server is running on ${host}:${port}`);
    });
  }
  catch (err) {
    console.error(err);
  }
});

Здесь запускается прослушка 5 портов (они перечислены в массиве на строке 5). Запустим на домашнем компьютере:

node server.js

Перейдем в браузер и вобьем: http://localhost:80, http://localhost:443  и т.д. – будет отображаться надпись с тем портом, на который мы подключились и Ваши текущие user-agent, и ip-адрес в заголовке Host. Обратите внимание, что протокол здесь только HTTP, и значка с замочком в браузере при таком подключении не появится.

Теперь заменим строку 4 const host = '0.0.0.0'; на  const host = '<ip-адрес ПК в сети Hamachi>'. Перезапустим: Ctrl+C и снова node server.js. Подключиться теперь можно только по портам 80 и 443, т.к. наш конфиг прокси сервера (любой из 3-х представленных выше) указывает ему перенаправлять запросы с порта 80 на порт на 443, а к запросам с порта 443 подключать сертификат и перенаправлять его на порт 11000 по протоколу HTTP, поэтому вбив <ip>:80, http://<ip>, <ip>:443 или https://<ip>(ip — это ip-reverse-proxy-сервера), или www.<домен>, увидим что-то вроде:

Рис. 6. Проверка прокси.

Рис. 6. Проверка прокси.

Хоть мы и не подключались явно к порту 11000, сервер принял запросы на нем, что отображено в ответе. Обратите внимание на замочек – установлено HTTPS-соединение.

Этап 4. Запуск NextCloud AIO в Docker.

Переменные окружения

У данного образа есть две основные опции, которые передаются как переменные окружения:

  • NEXTCLOUD_DATADIR – абсолютный путь до директории, а в случае с Windows, константная строка “nextcloud_aio_nextcloud_datadir” – это имя того docker-volume, в которой будут записаны все файлы пользователей и системные файлы, необходимые для функционирования NextCloud. Соответственно, надо будет предварительно создать этот volume.

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

    Обратите внимание на простые правила преобразования пути. Абсолютный путь в Windows C:\NextCloudData превращается в host_mnt/c/NextCloudData.

  • APACHE_PORT – переменная уже затрагивалась выше. Это номер порта, на который пересылает запросы Ваш reverse-proxy.

  • SKIP_DOMAIN_VALIDATION=true – выставить, если есть неразрешимые проблемы с тем, что NextCloud неправильно определяет домен, на котором запущен. Это будет понятно после первой настройки. В документации указано, что пользоваться этим надо только в крайнем случае, если Вы уверены, что всё остальное было сделано правильно. В этом гайде пользоваться этим флагом не нужно. Ниже приведены советы, что делать, если не получается запустить NextCloud.

Volumes

Есть 2 фиксированных имени вольюмов, которые нам понадобятся.

  • nextcloud_aio_nextcloud_datadir – директория, где будут содержаться все файлы в облаке NextCloud. См пояснения выше к переменной NEXTCLOUD_DATADIR.

  • nextcloud_aio_backupdir – директория, куда будут помещаться архивы с копиями состояния облака, если Вы захотите использовать эту функцию. История точно такая же как с nextcloud_aio_nextcloud_datadir: проверить, что путь существует, и соблюсти формат преобразования.

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

Порты контейнера

Контейнер на образе NextCloud AIO использует 3 порта, которые согласно документации, нужно указать при запуске контейнера:

  • 8080 порт используется для первичной настройки NextCloud. Там будет панель администратора.

  • 80 порт – единственный, который предназначается для взаимодействия с веб-приложением непосредственно. Соответственно, это протокол HTTP. Напомню, что все сторонние запросы  к системе переводятся на HTTPS нашим прокси и поступают на 11000 порт контейнеров, которые уже внутри, неявно для нас, переведут их на 80 порт на обработку приложением.

  • 8443 порт должен использоваться для обновления самописного сертификата. Лично я с этим не работал, и не могу ничего сказать.

Как говорилось выше, на домашней машине будет непросто открыть порт 80. Да это и не нужно, когда докер представляет нам простой механизм переадресации портов. Я просто использовал порт 9090 вместо 80. Также я подменил порт 8080 в мастер-контейнере на 9880, т.к. иногда использую порт 8080 моего ПК при разработке своих серверов, и подменил 8443 портом 9443 просто за компанию.

Другие порты, такие как 11000 (наш APACHE_PORT) и 3478, используемые дополнительными модулями, будут подключаться автоматически. При запуске master-контейнера, их не нужно привязывать явно. После запуска будет автоматически созданы контейнеры nextcloud-aio-domaincheck и nextcloud-aio-apache, которые свяжутся с портом APACHE_PORT, а после настройки системы в панели администратора, появятся и другие контейнеры, например, nextcloud-aio-talk, которые займут свои порты.

Опции Docker

Очень важно не передавать настоящий сетевой интерфейс операционной системы хостовой машины как внутренний сетевой интерфейс контейнера. Это делается с помощью передачи опции --net=host в команде docker run или network_mode: 'host' в docker-compose. Можно встретить некоторые гайды в интернете, которые предписывают делать именно так. Но это не соответствует документации! Единственное, когда это может быть оправдано, — запуск контейнера на выделенном Linux-сервере, когда докер применяется как IaC средство в задаче оркестрирования. В нашем же случае, контейнер просто не сможет открыть порты 80, 443, т.к. у него нет прав.

  • --sig-proxy=false – отключает проксирование сигналов ОС.

  • --name=<имя> — задает имя контейнеру

  • --restart=<always | no | unless-stopped> — регулирует, что делать в случае критической ошибки или иных случаях, когда контейнер может завершить работу. Соответственно: всегда, никогда и до тех пор, пока пользователь вручную пошлет SIGTERM/SIGBRK. Облако должно быть доступно всегда. Ставим always.

  • -e <имя>:<значение> – передача переменной окружения

  • -v (--volume) <директория хост>:<директория в ОС контейнера>, либо <имя volume> — передача volume или директорий хостовой машины в пользование контейнеру. Что передавать берем из документации: nextcloud_aio_mastercontainer:/mnt/docker-aio-config, //var/run/docker.sock:/var/run/docker.sock:ro.

  • -p (--port) <порт хост>:<порт в интерфейсе контейнера> — соединение порта сетевого интерфейса хостовой машины и сетевого интерфейса контейнера.

Запуск

Сначала надо создать volume’ы.На Windows nextcloud_aio_nextcloud_datadir обязательный, nextcloud_aio_backupdir — опциональный.

Тут последовательность из пробела и обратной кавычки ( ` ) используется для ввода многострочной команды.

В Unix-системах аналогом выступает пробел и обратный слэш ( \).

# Backup dir
docker volume create `
--driver local `
--name nextcloud_aio_backupdir `
-o device="/host_mnt/c/NextCloudBackups" `
-o type="none" `
-o o="bind"
# Datadir
docker volume create `
--driver local `
--name nextcloud_aio_nextcloud_datadir `
-o device="/host_mnt/c/NextCloudData" `
-o type="none" `
-o o="bind"

Запускаем контейнер ровно так, как предписывает документация, но подменяем порты:

docker run `
-e NEXTCLOUD_DATADIR="nextcloud_aio_nextcloud_datadir" `
-e APACHE_PORT=11000 `
--sig-proxy=false `
--name nextcloud-aio-mastercontainer `
--restart always `
-p 9090:80 `
-p 9880:8080 `
-p 9443:8443 `
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config `
--volume //var/run/docker.sock:/var/run/docker.sock:ro `
nextcloud/all-in-one:latest

Либо через docker-compose:

# docker-compose.yml

services:
  nextcloud:
    image: nextcloud/all-in-one:latest
    restart: "always"
    container_name: nextcloud-aio-mastercontainer
    environment:
      - NEXTCLOUD_DATADIR=nextcloud_aio_nextcloud_datadir
      - APACHE_PORT=11000
    volumes:
      - nextcloud_aio_mastercontainer:/mnt/docker-aio-config
      - //var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - "9080:80"
      - "9090:8080"
      - "8443:8443"

volumes:
  nextcloud_aio_mastercontainer:
docker-compose up

После запуска панель docker станет выглядеть так:

Рис. 7. Контейнеры, запущенные nextcloud-aio-mastercontainer

Рис. 7. Контейнеры, запущенные nextcloud-aio-mastercontainer

Тут видно все то, о чем было написано выше: появились новые контейнеры, которые заняли нужные ими порты. Master-container появляется первым и занял порты 9090, 9880 и 9443.

Остается настроить само облако

Переходим в браузер. Нужно подключиться к 8080 порту контейнера, т.е. для нас это адрес, оканчивающийся на :9880. Какой ip вводить? Любой, чтобы не попасть на прокси, ведь тот не знает о том, что что-то нужно пересылать на порт 9880. Можно вбить localhost:9880, <ip в локальной сети домашнего маршрутизатора 192. …>:9880 или <ip ПК в сети Hamachi>:9880 – все эти адреса ведут на порт 9880 одной и той же машины. Подключаться нужно по HTTPS (обязательно вбейте https:// перед адресом и портом, потому что браузер скорее всего сам подставит http, и тогда появится Bad Request от Apache с просьбой перейти на HTTPS). Далее выскачет предупреждение, что соединение небезопасно, но мы ведь знаем, что все безопасно, верно ;). Нажимаем «все равно подключиться» (на разных браузерах эта кнопочка может называться по-разному и быть скрыта за другой кнопкой, например, в Opera надо сначала нажать “help me understand”).

В NextCloud всё сделано именно так, потому что все внешние соединения должны быть зашифрованы и поэтому осуществляются через прокси по HTTPS. Считается, что раз до контейнера доходят HTTP-сообщения, значит, они либо защищены протоколом ssl на уровень выше, либо у оператора есть прямой доступ к машине.

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

Далее на следующей странице надо будет ввести домен, который пользователь вбивает в браузере, чтобы подключиться, т.е. тот, по которому он попадает на reverse-proxy. В нашем случае www.<домен>. Форма ниже, связанная с бекапом понадобится не сейчас, а во время восстановления бекапа.

Если все успешно, Вас пробросит дальше на страницу, где будет создана учетная запись администратора. Сохраняем куда-нибудь выданный нам пароль. Тут же можно установить некоторые дополнительные модули (их намного больше). Знайте, что каждый модуль – это отдельный докер-образ, а значит весит он много, и его контейнер строится долго. Запустите все контейнеры и дождитесь, когда индикаторы загорятся зеленым.

Скриншоты к вышеописанному процессу не прилагаю. Все есть в обилии на youtube.

Что делать, если проверка домена не выполняется?

Для начала, это значит, что NextCloud попробовал найти сам себя по запросу https://<домен, который Вы ввели на панели администратора> и не смог.

Проверьте, что на домене, который Вы приобрели, есть А-запись с правильным ip-адресом прокси-сервера. Если вы только что обновили эту запись, DNS-сервера провайдера распространяют её иерархически на магистральные роутеры, и на это может потребоваться время (по моим оценкам, до получаса). Можно,  например, воспользоваться командой windows powershell ping <домен>. В Widows она хороша тем, что вместо домена нам будет показан ip-адрес, ассоциированный, как считает домашний роутер, с введенным доменом. Другие утилиты, такие как tracert могут не помочь в случае с арендованными серверами или vpn — все зависит от того, какие запросы пропускает к себе в датацентр хостинг.

Также стоит проверить, что прокси сервер работает, доступен в сети по собственному ip-адресу и на нем запущен Apache/Nginx/Caddy. Не пренебрегайте тестированием конфигов. Узнать, работает ли сервер можно, вбив systemctl status <apache2 | nginx | caddy>.

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

Для остальных случаев есть флаг SKIP_DOMAIN_VALIDATION.

В конце есть список сетевых утилит Windows, которые могут помочь с отладкой сетевого маршрута.

Этап 5. Фаервол

Финальная часть – предотвращение несанкционированных попыток подключения к домашнему компьютеру и спама до состояния DDOS – настроим файервол.

В Linux – воспользуйтесь утилитами ufw или iptables.

Вбиваем в поиск системы «Защита от вирусов и угроз», или «Безопасность Windows», или «Defender», переходим в Брандмауэер -> дополнительные параметры ->правила для входящих подключений.

Рис. 8. Как перейти к детальным настройкам файервола.

Рис. 8. Как перейти к детальным настройкам файервола.

 Нажимаем справа «создать правило», выбираем фильтрацию по порту: специальные порты, 11000. Если накладываете какие-то другие опции фильтрации, помните, что Hamachi – это частная сеть в ОС Windows.

Если планируете использовать эту же сеть Hamachi для передачи еще какого-то трафика, обязательно откройте порт здесь. Правила Defender можно редактировать на лету.

Инструменты Windows для диагностики сетевых интерфейсов

Все перечисленные здесь утилиты работают в powershell и cmd. Лучше выполнять от имени администратора.

nslookup – получение ip по доменному имени на DNS-сервере, сведения о ближайшем DNS-сервере. Будьте внимательны, лично я столкнулся с тем, что nslookup кеширует свои ответы, и если, например, Вы меняете А-запись к своему домену, браузер может видеть изменения, а nslookup – нет. На этот случай есть команда ipconfig/flushdns, но мне она не помогала.

ipconfig/flushdns – сброс dns-кеша в ОС. Работает только в cmd.

Работу DNS можно сымитировать, добавив запись в системный файл C:\Windows\System32\drivers\etc\hosts.

netstat -na | findstr ":8080"  — просмотр установленных соединений. Просто netstat -na покажет все соединения.

ipconfig   — просмотр сетевых интерфейсов. Тут можно наблюдать сеть докера docker0 или WSL — она нужна, когда контейнер общается с сервером на хосте (почитайте про внешний адрес host.docker.internal).

Посмотреть, куда и как (редиректы, HTTP-заголовки) идут запросы в браузере можно через инструменты разработчика. Ctrl+Shift+I или ПКМ по пустому пространству в браузере -> network

Заключение

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

Тем не менее, опыт, я считаю, интересный. Пользоваться дома вполне можно. Все еще остается возможность переноса хранилища на какой-то тихий компьютер, такой который бы не жужжал при постоянной эксплуатации 24/7. Прекрасно подойдет старый системный блок или ноутбук с утилитой управления скоростью вращения вентиляторов.

Если планируете использовать NextCloud ровно так, как описано в этом гайде, то главное не забыть поставить Docker и Homachi на автозапуск. Так будет достигнута неплохая отказоустойчивость.

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

Содержание

1.1 Требования к веб-браузеру

Для лучшего использования веб-интерфейса Nextcloud мы рекомендуем использовать последнюю и поддерживаемую версию браузера из этого списка:

  • Microsoft Internet Explorer

  • Microsoft Edge

  • Mozilla Firefox

  • Google Chrome / Chromium

  • Apple Safari

Вы можете подключиться к серверу Nextcloud с помощью любого веб-браузера. Просто укажите URL-адрес вашего сервера Nextcloud (например, cloud.example.com) и введите в поле Имя пользователя Ваш почтовый адрес и пароль:

Вход в систему |

1.2 Навигация по основному интерфейсу пользователя

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

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

Интерфейс пользователя Nextcloud содержит следующие поля и функции:
 

  • Меню выбора приложений (1): здесь вы найдете все свои приложения, доступные на вашем экземпляре Nextcloud. Нажатие на значок приложения перенаправит Вас в приложение.

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

  • Содержимое приложения (3): основное центральное поле в интерфейсе пользователя Nextcloud. В этом поле отображается содержимое или пользовательские функции выбранного приложения.

  • Панель навигации (4): расположена над главным окном просмотра (содержимое приложения), эта панель обеспечивает тип навигации по папкам, которая позволяет перейти на более высокие уровни иерархии папок до корневого уровня.

  • Кнопка Добавить (5): расположенная на панели навигации, кнопка Добавить позволяет создавать новые файлы, новые папки или загружать файлы. Вы также можете перетаскивать файлы и папки из файлового менеджера в окно файлового приложения (3), чтобы загрузить их в свой экземпляр.

  • Поле Поиск (6): нажмите на лупу в правом верхнем углу, чтобы найти файлы и записи текущего приложения.

  • Меню контактов (7): предоставляет обзор ваших контактов и пользователей на Вашем сервере

  • Кнопка смены вида просмотра (8): выглядит как четыре маленьких квадрата, которые переключают вид сетки для папок и файлов.

  • Кнопка Уведомления (9) позволяет просмотреть текущие уведомления, а также включить уведомления от браузера.

  • Меню настроек (10): нажмите на изображение своего профиля, расположенное справа от поля поиска, чтобы открыть меню настроек. (Подробнее в Меню персональных настроек)

  • Описание папки (Readme.md) (11) текстовый документ, отображаемы в верхней части выбранной папки, предназначенный для добавления описания

  • Недавние документы (12) отображает недавно добавленные либо измененные файлы

1.3 Работа с файлами через веб-интерфейс Nextcloud

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

 

1.3.1Фильтрация файлов

На левой боковой панели (подробнее Навигация по основному интерфейсу пользователя) содержится несколько фильтров для быстрой сортировки и управления файлами:

  * Все файлы (1) файлы и папки доступные Вам для редактирования и просмотра

  • Недавно измененные (2) — недавно загруженные либо файлы и папки с недавно внесенными изменениями 

  • Избранные (3) — файлы или папки добавленные в избранное для быстрого доступа

  • Опубликованные ресурсы (4) — файлы и папки с общим доступом

  • Метки (теги) (5) — осуществляется поиск фалов или папок по метке (тегу)

 

1.3.2 Создание или загрузка файлов и папок

Вы можете создать файл или папку либо загрузить файлы, нажав на кнопку Создать в приложении Файлы

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

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

Новый текстовый документ создает новый текстовый файл и добавляет файл в вашу текущую папку. 

1.3.3 Перемещение файлов и папок

Вы можете перемещать файлы и папки, перетаскивая их в любую папку. 

1.3.4 Выбор фалов и папок и групповые действия с ними

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

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

1.3.5 Дополнительное меню

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

1.3.6 Метки (теги) файлов

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

Затем Вы можете использовать Метки (теги) для фильтрации представления файлов.

1.3.7 Контроль версий

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

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

1.3.8 Комментарии

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

1.3.9 Обмен файлами

В Nextcloud Вы можете обмениваться файлами и папками. Доступны следующие типы:

  • Публичные ссылки (1) — для предоставления доступа к папке или файлу пользователям вне Вашего Nextcloud

  • Внутренние ссылки (2)- для предоставления доступа к папке или файлу пользователям и группам в пределах Вашего Nextcloud 

Так же вы можете добавить файл или папку к проекту (подробности в статье Карточки) (3)

1.3.9.1 Публичные ссылки

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

  • Метку (тег) для файла (подробнее в Метки (теги) файлов)

  • Разрешить редактирование

  • Скрыть загрузку — запрещает возможность скачать файл

  • Защитить паролем

  • Установить срок действия — устанавливает срок действия ссылки

  • Примечание для получателя

  • Shared to mail — открывает почтовое приложение по умолчанию для отправки ссылки по электронной почте

  • Закрыть доступ

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

 
Меню создания публичных ссылок для папок отличается. Добавлены пункты действия:

  • Только для чтения — разрешить только просмотр и скачивание фалов

  • Разрешить прием и редактирование — разрешить просмотр, скачивание и загрузку фалов в папку

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

1.3.9.2Внутренние ссылки

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

В меню редактирования уровня доступа для файла Вы можете указать:

  • Разрешить редактирование

  • Разрешить повторное открытие общего ресурса — разрешает получателю делиться ссылками на этот файл или папку с другими пользователями

  • Установить срок действия — устанавливает срок действия ссылки

  • Примечание для получателя

  • Закрыть доступ

Меню редактирования уровня доступа для папок отличается. Добавлены пункты действия:

  • Разрешить создавать — позволяет создавать и загружать получателю папки и файлы

  • Разрешить удалять — позволяет удалять получателю папки и файлы

1.3.9.3Значки статуса совместного использования

Папка или файл, к которым предоставлен общий доступ помечается значком общий доступ (1). Публичные ссылки помечаются цепочкой (2)

1.3.10 Изменение владельца файла или папки

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

1.4 Меню персональных настроек

Вы можете управлять своими персональными настройками. Чтобы получить к ним доступ перейдите в меню Настройки

1.4.1 Личная информация

Параметры, перечисленные на странице личных настроек, зависят от приложений, которые включены администратором. Некоторые из функций, которые вы увидите, включают в себя следующее:

  • Управление изображением вашего профиля

  • Процент использования и доступная квота

  • Список групп, членом которых вы являетесь

  • Полное имя (может не совпадать с вашим именем для входа в Nextcloud, которое уникально и не может быть изменено)

  • Адрес электронной почты

  • Номер телефона

  • Адрес

  • Смена пароля (не используется в случае централизованной аутентификации пользователей)

  • Выбор языка интерфейса Nextcloud

  • Выбор региональных стандартов

  • Ссылки на социальные сети

1.4.2 Безопасность

Во вкладке Безопасность доступны настройки:

Аутентификация без пароля – позволяет добавить аппаратное устройство (например, токены https://shop.nitrokey.com/shop), с помощью которого будет возможно входить в Ваш Nextcloud без запроса пароля

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

Создать пароль для приложения – позволяет создать единоразовый пароль для входа, так же создать QR код для мобильных приложений

1.4.3 События

Во вкладке События Вы можете настроить уведомления, присылаемых по электронной почте, о событиях таких как:

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

  • Календари и задачи – уведомления о предстоящих событиях

  • Другие события – уведомления и добавлении Вас в группы, добавлении комментариев к файлам, папкам и карточкам

1.4.4 Клиенты для ПК и мобильных устройств

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

1.4.5 Доступность

Вкладка Доступность позволяет изменять внешний вид Вашего Nextcloud

1.4.6 Общий доступ

Вкладка Общий доступ имеет следующие пункты:

  • Федерация облачных хранилищ – позволяет настроить общий доступ с другими облачными хранилищами

  • Файлы – Вы можете передать во владение файлы и папки другому пользователю (подробнее Изменение владельца файла или папки)

  • Общий доступ – позволяет разрешить либо отклонить принимать общедоступные файлы или папки

1.5 Карточки

Карточки в Nextcoud — это инструмент для личного планирования и управления проектами в стиле Kanban.

  • Доска в Карточках — это контейнер для задач в проекте, которые необходимо отслеживать.

  • Список — это столбцы Карточек на Вашей доске

  • Карточка – это задача, которую необходимо отслеживать

 
Для создания новой Доски перейдите в приложение Карточки — Добавить Доску

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

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

Перейдите на вновь созданную Доску для создания Списка задач, введите наименование Списка

 
Добавьте Карточку для отслеживания выполнения задач

 
В свойствах Карточки Вы можете назначить Метку, Пользователей, кому будет назначена задача, Дату исполнения (Nextcloud будет уведомлять пользователей, назначенных задаче, о сроках исполнения), Добавить описание к проекту.

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

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

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

Вкладка История позволяет отслеживать историю внесения изменений в ту или иную карточку

Добавленные метки, пользователи, вложения, комментарии, а так же дата исполнения будут отображены в статусе карточки

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

Вы можете отключить отображение событий из Карточек в Календаре, перейдите в Параметры и отключите Показывать карточки в календаре.

1.6 Календарь

Приложение Календарь позволяет создавать события. Вы можете создавать и использовать различные календари для различных типов событий, к примеру: работа, личное, общее, дни рождения и т.д. Если Вы уже добавили в приложении Карточки задачи со сроком исполнения, то они автоматически будут добавлены в Календарь (подробнее Карточки).

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

Для создания календаря перейдите в приложение Календарь и нажмите Создать календарь, выберите Новый календарь. Введите наименование календаря

Вы можете Изменить название, Изменить цвет, Скопировать закрытую ссылку (для предоставления доступа к календарю другому пользователю). Скачать (для импортирования календаря в сторонне приложение) либо Удалить календарь. Обратите внимание: удаление является необратимым действием.

Вы можете предоставить доступ к Календарю другим пользователям. Нажми те кнопку Поделиться, введите имя пользователя. Здесь же можно разрешить либо запретить редактирование календаря.

 Для создания события нажмите на Создать событие либо нажмите на День или Часы (в зависимости от выбранного вида Календаря). Впишите наименование События, Календарь, куда занести Событие и время проведения События

Для внесения более детальных описаний для События в Календаре выберите Событие и перейдите в Больше.

Во вкладке Подробности доступны следующие описания

  • Добавить местоположение (1)

  • Добавить описание (2)

  • Изменить Подтверждение События из выпадающего списка (3)

  • Изменить видимость События в опубликованных Календарях (4)

  • Указать учитывать ли событие при учете свободного времени (5)

  • Указать новую либо выбрать из выпадающего списка категорию (6) для структурирования и упорядочивания Событий в Календаре

  • Изменить цвет События (7)

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

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

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

1.7 Приложение Контакты

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

1.7.1 Управление контактами

Для добавления контакта нажмите на кнопку Новый контакт, введите необходимые данные контакта в соответствующие поля. Вы можете добавить недостающие поля, к примеру День рождения, нажав на кнопку Создать свойство, либо удалить поля нажав на кнопку с изображением урны. Для группировки Контактов, по какому-либо свойству, Вы можете добавлять их в группы. Вызвав дополнительное меню (три точки вверху справа) Вы можете скачать контакт в виде карточки .vcf, создать QR код для импортирования в мобильные устройства и так же удалить.

1.7.2 Управление адресными книгами

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

2. Мобильное приложение Nextcloud

Мобильное приложение доступно как для Android, так и для iOS. После установки запустите приложение Nextcloud, нажмите Войти, в поле Адрес сервера введите адрес, который Вам предоставили (например example.cloud.com), в окне Вход в систему нажмите Войти, в поле Имя пользователя введите Ваш почтовый адрес, в поле Пароль введите Ваш пароль. В окне Доступ к аккаунту нажмите Разрешить доступ.

2.1 Интерфейс приложения Nextcloud

Интерфейс пользователя мобильного приложения Nextcloud повторяет основные функции и поля веб-интерфейса Nextcloud:

  • **Меню приложения** (1): в левом верхнем углу вы найдете основное меню приложения.

  • Поле Поиск (2): для поиска начните ввод имени файла и приложение будет предлагать подходящие файлы или папки

  • Порядок сортировки файлов (3). Вы можете выбрать порядок сортировки файлов в приложении: по алфавиту, по дате создания, по размеру.

  • Содержимое приложения (4): основное центральное поле в интерфейсе пользователя мобильного приложения Nextcloud. В этом поле отображается содержимое или пользовательские функции.

  • Кнопка смены вида просмотра (5): выглядит как четыре маленьких квадрата, которые переключают вид сетки для папок и файлов

  • Кнопка Поделиться (6): позволяет делиться файлами и папками с другими пользователями. В случае если файл или папка уже является общедоступной, то будет отображена аватарка пользователя, имеющего доступ к файлу или папке (8)

  • Дополнительное меню (7): позволяет добавлять в Избранные, переименовывать, загружать, удалять, перемещать. синхронизировать и просматривать подробные сведения о файле либо папке.

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

 

2.2 Основное меню мобильного приложения Nextcloud

Основное меню приложения содержит следующие функции и возможности:

  • Все файлы (1) — файлы и папки доступные Вам для редактирования и просмотра;

  • События (2) — отображаются следующие события действий над файлами;

  • Избранные (3) — файлы или папки, добавленные в избранное для быстрого доступа;

  • Медиа (4) – фотографии и видеофайлы доступные Вам;

  • Опубликованные (5) — файлы и папки с общим доступом;

  • На устройстве (6) – отображаются загруженные на устройство файлы и папки;

  • Уведомления (7) – отображают приближающиеся или прошедшие события в календарях и карточках;

  • Состояние передачи (8) – отображает очередь передачи файлов и папок на сервер Nextcloud;

  • Удаленные файлы (9) – файлы, находящиеся в корзине;

  • Настройки (10) – настройки приложения;

  • Сообщество (11) – позволяет отправлять отчеты об ошибках.

2.3 Настройка приложения

Вам доступны следующие настройки:

  • Папка для хранения – позволяет выбрать из выпадающего списка место для хранения файлов

  • Оформление – позволяет изменить стиль оформления приложения

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

  • Показывать скрытые файлы – включает возможность показывать скрытые файлы на устройстве

  • Показывать уведомление о сканировании медиафайлов – при обнаружении нового каталога с медиафалами приложение Nextcloud будет уведомлять Вас и предлагать синхронизировать с сервером Nextcloud

  • Автоматическая передача – позволяет выбрать каталоги на устройстве, которые будут автоматически синхронизироваться с сервером Nextcloud

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

  • Резервное копирование контактов – позволяет запустить создание резервной копии контактов и настроить автоматическое резервное копирование.

  • Помощь – откроет страницу help.nextcloud.com – форум с обсуждением функционала и проблем Nextcloud

  • Рекомендовать другу – отправляет ссылку для установки приложения Nextcloud

3. Десктопное приложение Nextcloud Desktop Sync

Вы можете использовать клиентское приложение для настольных ПК, чтобы синхронизировать файлы между сервером Nextcloud и компьютером. Выберите один или несколько каталогов на локальном компьютере и всегда будете иметь доступ к своим файлам, где бы вы ни находились. Клиент Nextcloud Desktop Sync доступен для Windows, macOS и различных дистрибутивов Linux

3.1 Установка приложения

3.2 Настройка приложения

3.2.1 Настройка учетной записи

Откройте установленное Nextcloud Desktop Sync из области уведомлений, в появившемся окне нажмите Войти в Nextcloud, в поле Адрес сервера введите URL сервера Nextcloud, например https://company1.file24.kz , предоставленный Вам провайдером услуг. На следующем шаге откроется окно браузера, нажмите кнопку Войти, в поле Имя пользователя введите свой адрес почтового ящика, например yu.sharapov@testcustomer.kz , в поле Пароль введите пароль от почтового ящика и нажмите Войти, нажмите кнопку Разрешить доступ, при успешной аутентификации появится уведомление Аккаунт подключен. Перейдите в окно приложение Nextcloud, нажмите кнопку Пропустить настройку папок. Либо нажмите Подключиться в этом случае по умолчанию будет создана папка для синхронизации Nextcloud

Настройка учетной записи

3.2.2 Настройка списка каталогов для синхронизации

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

Настройка списка каталогов для синхронизации

3.2.3 Параметры Nextcloud Desktop Sync

Вызовите контекстное меню Nextcloud Desktop Sync нажав правой клавишей мыши на значок в панели уведомлений. Из появившегося меню доступны следующие настройки:

  • Открыть основное окно открывает основное диалоговое окно

  • Приостановить синхронизацию всех учетных записей приостанавливает процесс синхронизации файлов с сервером Nextcloud

  • Параметры отрывает параметры Nextcloud Desktop Sync

  • Закрыть Nextcloud завершает работу приложения Nextcloud Desktop Sync

Для перехода в параметры Nextcloud Desktop Sync перейдите в Параметры. В появившемся окне Параметры Nextcloud Вам доступны следующие настройки:

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

в поле Дополнительно
Запрашивать подтверждение синхронизации папок размером более выводит

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Неполная русификация windows 10
  • Universaltermsrvpatch x64 для windows 10
  • Windows поддержка длинных путей
  • Windows 10 фон рабочего стола по умолчанию
  • How to customize windows 10 desktop