## Step 1. Обновление системы необходимо обновить системные пакеты до последних доступных версий. Для этого выполните следующие команды: `sudo apt update -y && sudo apt upgrade -y`

Установка стека Lamp

## Step 2. Установка [[LAMP стек]] (Перейти в ссылку) >[!warning] Установку выполняем строго по очередности!!!! ## Step 3. Создание пользователя Nextcloud Далее мы создадим базу данных **Nextcloud** и пользователя **Nextcloud** и назначим привилегии этому пользователю и базе данных. База данных и пользователь будут иметь одно и то же имя **nextcloud**. 1) Войти в mariadb командой: `sudo mariadb` 2) Отредактировать данные о будущем пользователе и исполняем код >[!warrning] Первоначальный код `MariaDB [(none)]> CREATE DATABASE nextcloud;` `MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO` 'nextcloud`'@'localhost' IDENTIFIED BY` 'YourStrongPasswordHere'; `MariaDB [(none)]> FLUSH PRIVILEGES;` `MariaDB [(none)]> EXIT;` >[!warrning] Пример как должно быть `CREATE DATABASE nextcloud;` `GRANT ALL PRIVILEGES ON nextcloud.* TO` 'Stitch505'`@'localhost'` `IDENTIFIED BY` 'Tested123123'; `FLUSH PRIVILEGES;` `EXIT;` >[!warrning] Где `Stitch505` это твой логин, а `Tested123123` это пароль ## Step 3. Установка NextCloud Стек LAMP готов, база данных создана. Теперь нам нужно загрузить последнюю версию Nextcloud и поместить ее в корень документа Apache. <<<<<<< HEAD `sudo wget https://download.nextcloud.com/server/releases/nextcloud-30.0.4.zip` После загрузки извлеките его в корень документа Apache. `sudo unzip nextcloud-30.0.4.zip -d /var/www/html/` ======= `sudo wget https://download.nextcloud.com/server/releases/nextcloud-29.0.0.zip` После загрузки извлеките его в корень документа Apache. `sudo unzip nextcloud-29.0.0.zip -d /var/www/html/` >>>>>>> 77abb6a0bf9452daf6706798b3a3b4cdd4d5f8a2 >[!warning] Если пишет что нет программы unzip, то нужно его установить командой: sudo apt-get update sudo apt-get install unzip Установите правильное владение файлом и папкой: `chown -R www-data:www-data /var/www/html/nextcloud` ## Step 5. Создайте файл виртуального хоста Apache Нужно создать файл виртуального хоста Apache для сервера файлов Nextcloud, чтобы мы могли получить к нему доступ через доменное имя: `touch /etc/apache2/sites-available/nextcloud.conf` 1) Откройте созданный файл командой: <<<<<<< HEAD 2) sudo nano `/etc/apache2/sites-available/nextcloud.conf` ======= 2) sudo nano `etc/apache2/sites-available/nextcloud.conf` >>>>>>> 77abb6a0bf9452daf6706798b3a3b4cdd4d5f8a2 3) в редакторе и вставьте код из [[Virtual_host]] 4) нажмите для сохранения и выхода `ctrl + x -> y -> enter` Теперь запустим вебсайт (NextCloud) <<<<<<< HEAD `sudo a2ensite nextcloud.conf` ======= `a2ensite nextcloud.conf` >>>>>>> 77abb6a0bf9452daf6706798b3a3b4cdd4d5f8a2 Затем включите необходимые модули Apache с помощью следующей команды `a2enmod rewrite headers env dir mime setenvif ssl` Проверьте синтаксис Apache: `apachectl -t` >[!warning] При ошибке `Could not reliably determine the server's fully qualified domain name` нужно: >1) Открыть глобальный конфигурационный файл Apache (путь `sudo nano /etc/apache2/apache2.conf`) >2) В конец файла добавьте строку `ServerName ____` , указывающую имя сервера. Если у вас нет полноценного доменного имени, (~~можно использовать IP-адрес~~): >3) Пример того, как должно быть [[Открой файл в папке и посмотри содержимое!]] >4) После внесения изменений нужно использовать команды >5) `sudo apachectl -t` >6) `sudo systemctl restart apache2` Если всё корректно, то выполняем команду перезапуска apache сервера `sudo systemctl restart apache2` ## Step 6. Установка сертификатов на домен **Для установки выполните команду** `sudo apt update` `sudo apt install certbot python3-certbot-apache` После установки используем certbote под apache2 `sudo certbot --apache` Если требуется указываем номер требуемого домена, если же хотим подтянуть ssl сертификаты ко всем доменам из списка, жмём enter ![[Pasted image 20240916160825.png]] ## Step 6. Указание данных пользователя и данных пользователя ![[Pasted image 20240917121754.png]] >[!Success] Чтобы свериться с данными в базе mariadb нужно: >1) Войти в Mariadb >`sudo mariadb` >2) Посмотреть Какие у нас есть базы > `SHOW DATABASES;` >3) Теперь нужно посмотреть всех пользователей в базе данных >`SELECT User, Host FROM mysql.user;` >4) Осталось проверить права и все данные о пользователе >`SHOW GRANTS FOR 'username'@'localhost';` >>[!warning] Измени USER на нужное имя! >[!Example] Пример > ![[Pasted image 20240917122810.png]] > >>[!Warning] **На изображении видно**: > >- **Имя базы данных**: Ваша база данных называется `nextcloud`. >- **Пользователь базы данных**: Пользователь с именем `Stitch505` имеет >полный доступ к базе данных `nextcloud`. >- **Хост**: Пользователь подключается с хоста `localhost`. > Так что ваша база данных называется `nextcloud`, а пользователь базы данных — `Stitch505`, с хостом `localhost`. >[!warning] >ссылка на оригинальный сайт `https://www.rosehosting.com/blog/how-to-install-nextcloud-on-ubuntu-24-04/`