Меню Рубрики

Установка и настройка nextcloud на ubuntu

Установка и настройка Nextcloud + NGINX на Ubuntu

Подготовка системы

Синхронизируем время.

Устанавливаем утилиту ntpdate:

Выставляем нужный часовой пояс:

\cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

* в данном примере московское время.

Настройка сервера баз данных

В качестве СУБД используем MariaDB.

apt-get install mariadb-server

Разрешаем автозапуск и стартуем сервис:

Задаем пароль для суперпользователя mysql:

mysqladmin -u root password

Подключаемся к MariaDB, создаем базу данных и пользователя:

> CREATE DATABASE nextcloud DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

> GRANT ALL PRIVILEGES ON nextcloud.* TO nextcloud@localhost IDENTIFIED BY ‘nextcloud’ WITH GRANT OPTION;

Установка и настройка веб-сервера

Устанавливаем PHP, PHP-FPM и необходимые для работы nextcloud модули:

apt-get install php php-fpm php-common php-zip php-xml php-intl php-gd php-mysql php-mbstring php-curl php-imagick

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

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.reval >

Разрешаем автозапуск php-fpm и запускаем его:

systemctl enable php7.2-fpm

* php7.2-fpm зависит от версии установленного php.

NGINX

Nextcloud можно развернуть на NGINX или Apache. В данной инструкции будем использовать первый.

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

server <
listen 80;
server_name nextcloud.dmosk.ru;
return 301 https://$server_name$request_uri;
>

server <
listen 443 ssl;
server_name nextcloud.dmosk.ru;

ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/cert.key;

add_header Strict-Transport-Security «max-age=31536000; includeSubDomains» always;
client_max_body_size 10G;
fastcgi_buffers 64 4K;

rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;

index index.php;
error_page 403 = /core/templates/403.php;
error_page 404 = /core/templates/404.php;

location = /robots.txt <
allow all;
log_not_found off;
access_log off;
>

^/(data|config|\.ht|db_structure\.xml|README) <
deny all;
>

location / <
rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
try_files $uri $uri/ index.php;
>

^(.+?\.php)(/.*)?$ <
try_files $1 = 404;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$1;
fastcgi_param PATH_INFO $2;
fastcgi_param HTTPS on;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
>

* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ <
expires modified +30d;
access_log off;
>
>

* где nextcloud.dmosk.ru — домен, на котором будет работать сервис; /etc/nginx/ssl — каталог, в котором будут храниться сертификаты; /var/www/nextcloud — каталог с порталом.

Создаем каталог для хранения сертификатов и переходим в него:

openssl req -new -x509 -days 1461 -nodes -out cert.pem -keyout cert.key -subj «/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=nextcloud.dmosk.ru/CN=nextcloud»

* данная команда создаст сертификат на 4 года для URL nextcloud.dmosk.ru или nextcloud.

Проверяем конфигурацию nginx, завершаем его автозапуск и перезапускаем сервис:

Установка Nextcloud

Заходим на страницу nextcloud и копируем ссылку на скачивание последней версии программы:

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

Распаковываем скачанный архив:

И переносим содержимое архива в каталог /var/www:

chown -R www-data:www-data /var/www/nextcloud

Открываем браузер и переходим по адресу https://nextcloud.dmosk.ru, где nextcloud.dmosk.ru — адрес облачного сервиса.

Задаем логин и пароль для администратора. В качестве базы данных выбираем MySQL/MariaDB (если предлагается выбор) и вводим в качестве логина, пароля и базы nextcloud.

Оптимизируем работу базы данных:

sudo -u www-data php /var/www/nextcloud/occ db:convert-filecache-bigint

Работа с пользователями из UNIX-Shell

В состав nextcloud входит php-скрипт occ, с помощью которого можно управлять сервисом из командной строки Linux.

Добавление пользователя

Создать нового пользователя можно командой:

sudo -u www-data php /var/www/nextcloud/occ user:add admin

* где admin — имя учетной записи.

Сброс пароля

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

sudo -u www-data php /var/www/nextcloud/occ user:resetpassword admin

* где admin — учетная запись пользователя, чей пароль хотим сбросить.

источник

Установка и настройка Nextcloud на Ubuntu 16.04

Введение

Nextcloud — это облачное хранилище, форк (ответвление) облачной платформы ownCloud. Nextcloud позволяет хранить личные данные (документы, картинки, фотографии и т.д.) в специально отведенном месте (как Dropbox). Nextcloud выделяется тем, что это open-source проект, то есть за сохранность и безопасность данных отвечаете именно вы, без привлечения каких-либо третьих сторон, предоставляющих облачные хранилища.

Из этого руководства вы узнаете, как установить и настроить Nextcloud на сервере с Ubuntu 16.04.

Требования

Для того, чтобы выполнить необходимые действия, вам понадобятся:

  • установленная ОС Ubuntu 16.04 с пользователем, который может выполнять команды sudo, и фаерволом;
  • (необязательно): доменное имя сервера. Для защиты подключений к Nextcloud будет использоваться TLS/SSL. Если у сервера есть доменное имя, то можно использовать бесплатный SSL-сертификат Let’s Encrypt. Если доменного имени нет, то можно установить самоподписанный сертификат Nextcloud (однако он не входит в список доверительных сертификатов, на который ориентируются браузеры).

Шаг 1: установка Nextcloud

Для установки будут использоваться snap-пакеты. Эта технология, по умолчанию доступная в Ubuntu 16.04, позволяет получать ПО сразу с зависимостями и конфигурацией — отдельным юнитом с автоматическим обновлением. Это значит, что вместо загрузки и настройки веб-сервера и СУБД, а затем настройки приложения Nextcloud, вы можете просто установить snap-пакет, в котором уже будут находиться все необходимые элементы.

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

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

Вывод будет выглядеть примерно вот так:

Читайте также:  Установка билборда на своей земле

Статус (status) и сводка (summary) показывают, что установка прошла без каких-либо проблем.

Дополнительная информация о Nextcloud Snap

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

Команда snap info отобразит информацию об используемом snap-пакете (например, версию, которая была установлена):

Snap поддерживает разные интерфейсы, которые состоят из slot и plug. Эти элементы связываются между собой для того, чтобы дать snap доступ к некоторым возможностям или уровням доступа. К примеру, для использования snap в качестве сетевого клиента он должен иметь сетевой (network) интерфейс.

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

Шаг 2: настройка административного аккаунта

Существует несколько способов настройки Nextcloud snap. В этом руководстве административный пользователь будет создан с использованием командной строки, а не веб-интерфейса, где страница регистрации администратора будет доступна всем, кто зайдет на IP-адрес или домен вашего сервера.

Для настройки нового административного аккаунта, используйте команду nextcloud.manual-install. Ниже нужно будет ввести имя пользователя (username) и пароль (password).

Вывод ниже покажет, что Nextcloud был настроен корректно. Первые несколько строчек можно проигнорировать, так как расширение PCNTL не входит в Nextcloud snap.

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

Шаг 3: добавление доверенных доменов

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

Текущие настройки можно посмотреть, выведя массив доверенных доменов (trusted_domains):

Вывод будет примерно таким:

Сейчас только localhost отображается в качестве первого значения массива. Добавьте новую запись о доменном имени или IP-адресе сервера:

Вывод будет выглядеть вот так:

Еще раз выведите список доверенных доменов:

Теперь там отобразятся две записи:

Таким образом вы можете добавить все необходимые адреса или домены.

Шаг 4: защита веб-интерфейса Nextcloud при помощи SSL

Перед началом использования Nextcloud необходимо настроить защиту для веб-интерфейса.

Если к вашему серверу привязан какой-либо домен, то при помощи Nexcloud snap вы можете настроить SSL-сертификат от Let’s Encrypt (вариант 1). Если доменного имени нет, то можно установить самоподписанный сертификат Nextcloud (вариант 2).

Вариант 1: настройка SSL-сертификата Let’s Encrypt

Сначала откройте порты, которые Let’s Encrypt использует для подтверждения права владения доменом:

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

Теперь запросите сертификат Let’s Encrypt:

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

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

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

После этого будет запрошен сертификат Let’s Encrypt; и если процедура пройдет нормально, то автоматически будет перезапущен Apache:

После этого вы можете авторизоваться в Nextcloud.

Вариант 2: настройка самоподписанного SSL-сертификата

Если доменное имя не привязано к серверу, то вы можете настроить защиту, создав самоподписанный SSL-сертификат. Он позволит вам получить доступ к веб-интерфейсу через защищенное соединение (при этом браузер может показывать предупреждение, так как сертификат безопасности не является доверенным).

Для того, чтобы создать самоподписанный сертификат и настроить Nextcloud использовать его, введите:

Значит, Nextcloud создал и стал использовать самоподписанный сертификат.

Теперь, когда интерфейс защищен, откройте порты для доступа к нему:

Теперь вы можете авторизоваться в Nextcloud.

Шаг 5: авторизация в веб-интерфейс Nextcloud

Теперь, когда Nextcloud настроен, зайдите через браузер на домен или IP-адрес вашего сервера:

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

На странице авторизации введите данные, которые вы вводили при создании пользователя администратора, и нажмите Log in:

Во время первой авторизации вам будут показаны различные приложения для работы с Nextcloud:

Далее вы попадете на главную страницу Nextcloud, где сможете загружать и работать с файлами:

Интерфейс довольно простой и интуитивно понятный, вы без труда в нем разберетесь.

Заключение

Теперь у вас есть установленный и защищенный Nextcloud. Больше информации вы можете найти в документации и на форуме .

источник

Установка NextCloud на Ubuntu 18.04

Вы хотели бы иметь собственный аналог Dropbox или Google Drive? Если вы занимаетесь фото, видео или просто много путешествуете и привозите кучу снимков и записей — наверняка. Однако многих останавливал тот факт, что в большинстве случаев программы такого рода проприетарные. А за фирменные NAS-ы нужно выложит кругленькую сумму. Но, как оказалось, не всё так плохо. Ведь есть NextCloud.

Разработчик Фрэнк Карлитшек, который ранее работал в OwnCloud, Inc, после ухода из компании разработал NextCloud и продолжает развивать его совместно с другими разработчиками OwnCloud. И сегодня мы поговорим о том, как установить Nextcloud в Ubuntu 18.04.

Читайте также:  Установка всех стекол в 21099

Как установить NextCloud на Ubuntu 18.04

Шаг 1: Установка веб-сервера Apache

Это веб-сервер, который нужен для работы системы. Устанавливаем его командой в Терминале:

После этого вводим команду:

Это отключит список каталогов для Apache. После этого нужно остановить, запустить и активировать службу Apache2. Это позволит ей запускаться при загрузке ОС. Выполняем команды:

Шаг 2: Установка MariaDB

Это сервер баз данных, который используется в NextCloud. Установим его командой:

После установки по аналогии с Apache вводим команды:

Это позволит серверу стартовать при запуске ОС. Далее настраиваем параметры безопасности. Вводим команду:

После этого система задаст несколько вопросов, отвечаем на них так:

Перезапускаем сервер базы данных командой:

Шаг 3: Установка PHP и дополнительных модулей

Для работы установим новый PHP 7.1. Его пока нет в стандартных репозиториях Ubuntu, поому ставим из сторонних. Выполняем команды:

Затем обновляем список пакетов:

Устанавливаем PHP 7.1 и остальные пакеты одной командой:

Производим настройку после установки. Вводим команду:

В файле находим нужные строчки и ставим как в примере (таймзону можете поставить свою). Для поиска по файлу используется комбинация Ctrl + W. Для записи изменений — Ctrl + O. Для выхода — Ctrl + X.

Шаг 4: Настройка таблиц для NextCloud

Теперь нужно сконфигурировать первую базу MariaDB. Для авторизации на сервере вводим:

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

Шаг 5: Установка движка NextCloud

Сам NextCloud нужно устанавливать не из репозиториев, а с сайта. Это также делаем в Терминале. Вводим:

После распаковки настраиваем NextCloud:

Шаг 6: Настройка Apache

Это шаг, на котором мы настроим работу пользователей с контентом в облаке. Для этого вводим:

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

Сохраняем (Ctrl + O) и выходим (Ctrl + X). Далее открываем /etc/hosts и добавляем туда строку:

Шаг 7: Активация модулей NextCloud

В терминале вводим последовательно команды:

Перезапускаем службу командой:

Шаг 8. Тестирование работы Nextcloud

Теперь открываем браузер и заходим по адресу, который мы внесли ранее. В нашем случае это http://example.com. Если всё сделано правильно, вы увидите стартовую страницу NextCloud. Там можно авторизоваться в базе данных и начать работу.

Выводы

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

Оцените статью:

Об авторе

25 комментариев

Протух твой Owencloud, забудь есть опенсорсный Nextcloud

NextCloud это fork проекта owncloudони там во мнениях не сошлись и разделились, как по мне он более перспективный.

Суть Nextcloud — в подключении к облаку с любого устройства. А как мне это сделать, если IP динамический (в основном, у всех так)? Очевидно, что написанный текст бесполезен без этой информации.

Тогда проси провайдера дать тебе статический. А если ты сидишь за NAT-том и еще и динамический IP, то я тебе соболезную.

Есть такие штуки как port mapping (проброс портов) и DDNS для динамических IP. А так штука не плохая. У себя дома настроил, подключил смартфоны жены, детей + с домашних компов/ноутов документы синхронизируются. Фоток уже на 300 Гб за два года накопилось, все облака платные пусть лесом идут.

Для динамических IP существует DDNS. Ну а если NAT то да, дальше никак.

Через VPN можно настроить

На сервере ставь, какой смысл дома от неё.

В маркетплэйсе некст клауда есть плагин, который решает данную проблему.

Кто-то еще apache в 21-ом веке использует как веб-сервер? Печально.

С такой нагрузкой ты даже не заметишь разницы между ngnix, а вообще да можно вместо ngnix и apache поставить openlitespeed

Как установить NextCloud на Ubuntu 18.04
Шаг 1: Установка веб-сервера Apache
Шаг 2: Установка MariaDB
Шаг 3: Установка PHP и дополнительных модулей
Шаг 4: Настройка таблиц для NextCloud
Шаг 5: Установка движка NextCloud
Шаг 6: Настройка Apache
Шаг 7: Активация модулей NextCloud
Шаг 8. Тестирование работы Nextcloud
Выводы

Как установить NextCloud на Ubuntu 18.04
Шаг 1: Установка веб-сервера Apache

Это веб-сервер, который нужен для работы системы. Устанавливаем его командой в Терминале:

После этого вводим команду:

sudo sed -i «s/Options Indexes FollowSymLinks/Options FollowSymLinks/» /etc/apache2/apache2.conf

Это отключит список каталогов для Apache. После этого нужно остановить, запустить и активировать службу Apache2. Это позволит ей запускаться при загрузке ОС. Выполняем команды:

sudo systemctl restart apache2
sudo systemctl enable apache2

Это сервер баз данных, который используется в NextCloud. Установим его командой:

sudo apt install mariadb-client mariadb-server

После установки по аналогии с Apache вводим команды:

sudo systemctl restart mariadb
sudo systemctl enable mariadb

Это позволит серверу стартовать при запуске ОС. Далее настраиваем параметры безопасности. Вводим команду:

Читайте также:  Установка галогенок на опель

После этого система задаст несколько вопросов, отвечаем на них так:

Перезапускаем сервер базы данных командой:

sudo systemctl restart mariadb

Шаг 3: Установка PHP и дополнительных модулей

Для работы установим новый PHP 7.1. Его пока нет в стандартных репозиториях Ubuntu, поому ставим из сторонних. Выполняем команды:

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Затем обновляем список пакетов:

Устанавливаем PHP 7.1 и остальные пакеты одной командой: —конфликт, конфликт, конфликт а дальше ничего.

А как установить на Slackware Linux?

вот как можно сделать целую статью на 5к знаков всего из одной команды: snap install nextcloud
Автору удачи 🙂

Ручками круче. Хацкеры типо.

У snap много ограничений 🙁
-нет возможности изменить расположение хранилища
-нет поддержки samba
А так для дома самое оно!

Это кулхацкеру выше адресовано

Здравствуйте. Столкнулся с такой задачей при установке Ubuntu 18 был выбор установить этот самый nextcloud (из коробки). Однако apache, из коробки, сам по себе не шел после поэтому мне пришлось установить «лампу». Но после того как установился Apache nextcloud перестал запускаться, вернее так: если выключить Apache то nextcloud запускается, а если включить то нет соответственно. Как сделать так чтобы он запускался вместе с Apache? Спасибо

вы нашли ответ? у меня такая же проблема.
какокой правильнй алгоритм установки.

А зачем столько мучений если есть snap пакет? Обновляется атомарно, автоматически, работает как сервис, отполированы зависимости. Установить можно в любой дистр 1-2 командами.

Устанавливаем PHP 7.1 и остальные пакеты одной командой:

E: Unable to locate package libapache2-mod-php7.1
E: Couldn’t find any package by glob ‘libapache2-mod-php7.1’
E: Couldn’t find any package by regex ‘libapache2-mod-php7.1’
E: Unable to locate package php7.1-common
E: Couldn’t find any package by glob ‘php7.1-common’
E: Couldn’t find any package by regex ‘php7.1-common’
E: Unable to locate package php7.1-mbstring
E: Couldn’t find any package by glob ‘php7.1-mbstring’
E: Couldn’t find any package by regex ‘php7.1-mbstring’
E: Unable to locate package php7.1-xmlrpc
E: Couldn’t find any package by glob ‘php7.1-xmlrpc’
E: Couldn’t find any package by regex ‘php7.1-xmlrpc’
E: Unable to locate package php7.1-soap
E: Couldn’t find any package by glob ‘php7.1-soap’
E: Couldn’t find any package by regex ‘php7.1-soap’
E: Unable to locate package php7.1-apcu
E: Couldn’t find any package by glob ‘php7.1-apcu’
E: Couldn’t find any package by regex ‘php7.1-apcu’
E: Unable to locate package php7.1-smbclient
E: Couldn’t find any package by glob ‘php7.1-smbclient’
E: Couldn’t find any package by regex ‘php7.1-smbclient’
E: Unable to locate package php7.1-ldap
E: Couldn’t find any package by glob ‘php7.1-ldap’
E: Couldn’t find any package by regex ‘php7.1-ldap’
E: Unable to locate package php7.1-redis
E: Couldn’t find any package by glob ‘php7.1-redis’
E: Couldn’t find any package by regex ‘php7.1-redis’
E: Unable to locate package php7.1-gd
E: Couldn’t find any package by glob ‘php7.1-gd’
E: Couldn’t find any package by regex ‘php7.1-gd’
E: Unable to locate package php7.1-xml
E: Couldn’t find any package by glob ‘php7.1-xml’
E: Couldn’t find any package by regex ‘php7.1-xml’
E: Unable to locate package php7.1-intl
E: Couldn’t find any package by glob ‘php7.1-intl’
E: Couldn’t find any package by regex ‘php7.1-intl’
E: Unable to locate package php7.1-json
E: Couldn’t find any package by glob ‘php7.1-json’
E: Couldn’t find any package by regex ‘php7.1-json’
E: Unable to locate package php7.1-imagick
E: Couldn’t find any package by glob ‘php7.1-imagick’
E: Couldn’t find any package by regex ‘php7.1-imagick’
E: Unable to locate package php7.1-mysql
E: Couldn’t find any package by glob ‘php7.1-mysql’
E: Couldn’t find any package by regex ‘php7.1-mysql’
E: Unable to locate package php7.1-cli
E: Couldn’t find any package by glob ‘php7.1-cli’
E: Couldn’t find any package by regex ‘php7.1-cli’
E: Unable to locate package php7.1-mcrypt
E: Couldn’t find any package by glob ‘php7.1-mcrypt’
E: Couldn’t find any package by regex ‘php7.1-mcrypt’
E: Unable to locate package php7.1-ldap
E: Couldn’t find any package by glob ‘php7.1-ldap’
E: Couldn’t find any package by regex ‘php7.1-ldap’
E: Unable to locate package php7.1-zip
E: Couldn’t find any package by glob ‘php7.1-zip’
E: Couldn’t find any package by regex ‘php7.1-zip’
E: Unable to locate package php7.1-curl
E: Couldn’t find any package by glob ‘php7.1-curl’
E: Couldn’t find any package by regex ‘php7.1-curl’

Привет!
Хотел бы подсказать, что если подключить ElasticSearch и немного его настроить, то у вас будет работать и поиск по самим документам (начиная от простых текстовых файлов и заканчивая либраофисныи и мсофисными форматами). Проверено в том числе и на табличных файлах.

Будут вопросы по этой связке — почту добавил 🙂

источник

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

Adblock
detector