Добавить в корзинуПозвонить
Найти в Дзене

15. Настройка облачного хранилища

Источник http://altlinuxmetod.ru/?page_id=385 Установим веб-сервер Apache2 и необходимые пакеты для PHP: apt-get update && apt-get install -y apache2 apache2-mod_ssl apache2-mod_php8.4 php8.4 php8.4-{pgsql,pdo_pgsql,curl,dom,exif,fileinfo,gd2,gmp,imagick,intl,libs,mbstring,memcached,opcache,openssl,pcntl,pdo,xmlreader,zip,ldap} Включаем необходимые модули и зупускаем веб-сервер: for i in dir env headers mime rewrite;do a2enmod $i;done systemctl enable --now httpd2 Скачиваем Nextcloud требуемой версии: wget https://download.nextcloud.com/server/releases/nextcloud-33.0.0.zip Распаковываем скаченный архим и копируем файлы в директорию веб-сервера: unzip nextcloud-33.0.0.zip && rm -f nextcloud-33.0.0.zip cp -r nextcloud /var/www/html/ && rm -rf nextcloud Создаём необходимую структуру каталогов и прав: chown -R root /var/www/html/nextcloud
mkdir /var/www/html/nextcloud/data
chown -R apache2 /var/www/html/nextcloud/{apps,config,data}/ Создаём конфигурационный файл для веб-сервера: cat <<EOF
Оглавление

Источник http://altlinuxmetod.ru/?page_id=385

SRV-BR:

Установим веб-сервер Apache2 и необходимые пакеты для PHP:

apt-get update && apt-get install -y apache2 apache2-mod_ssl apache2-mod_php8.4 php8.4 php8.4-{pgsql,pdo_pgsql,curl,dom,exif,fileinfo,gd2,gmp,imagick,intl,libs,mbstring,memcached,opcache,openssl,pcntl,pdo,xmlreader,zip,ldap}

Включаем необходимые модули и зупускаем веб-сервер:

for i in dir env headers mime rewrite;do a2enmod $i;done

systemctl enable --now httpd2

Скачиваем Nextcloud требуемой версии:

wget https://download.nextcloud.com/server/releases/nextcloud-33.0.0.zip

Распаковываем скаченный архим и копируем файлы в директорию веб-сервера:

unzip nextcloud-33.0.0.zip && rm -f nextcloud-33.0.0.zip

cp -r nextcloud /var/www/html/ && rm -rf nextcloud

Создаём необходимую структуру каталогов и прав:

chown -R root /var/www/html/nextcloud
mkdir /var/www/html/nextcloud/data
chown -R apache2 /var/www/html/nextcloud/{apps,config,data}/

Создаём конфигурационный файл для веб-сервера:

cat <<EOF > /etc/httpd2/conf/sites-available/nextcloud.conf
<VirtualHost *:80>
DocumentRoot /var/www/html/nextcloud/

<Directory /var/www/html/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews

<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
</VirtualHost>
EOF

Добавляем символьную ссылку и перезапускаем веб-сервер:

ln -s /etc/httpd2/conf/sites-available/nextcloud.conf /etc/httpd2/conf/sites-enabled/
systemctl restart httpd2

Устанавливаем требуемую СУБД:

apt-get install -y postgresql17-server

Запускаем СУБД:

/etc/init.d/postgresql initdb

systemctl enable --now postgresql

Создаём БД и пользователя для Nextcloud:

su - postgres -s /bin/bash -c 'createuser --no-superuser --no-createdb --no-createrole --encrypted --pwprompt nextclouduser'

su - postgres -s /bin/bash -c 'createdb -O nextclouduser nextclouddb'

ADM-HQ:

Переходим в веб-браузер на http://srv-br.au.team/

  • создаём учётную запись для администратора, а также указываем данные для подключения к СУБД:

Должно получиться следующее:

-2

Для настройки интеграции базы пользователей с LDAP:

  • необходимо в списке приложений Nextcloud включить приложение «LDAP user and group backend»:
-3
-4

Сама настройка LDAP/AD интеграция может выглядеть следующим образом:

-5
-6
-7
-8

Проверить:

-9

Проверить вход из-под доменного пользователя:

-10

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

-11

Заполняем форму Добавление правила публикации

-12

Должно получиться следующее:

  • требуемое имя и автоматический редирект запросов с http на https
-13

А также и корректный сертификат:

-14

На DNS во FreeIPA добавляем CNAME запись следующего вида:

-15

Результат:

-16

SRV-BR:

Правим файл /var/www/html/nextcloud/config/config.php добавив строку:

-17

ADM-HQ:

-18