Как установить NextCloud в Debian 10

12 set 2022 5 min di lettura
Как установить NextCloud в Debian 10
Indice dei contenuti

NextCloud — это бесплатный сервер для обмена файлами и хостинга с открытым исходным кодом, созданный на основе проекта ownCloud. Он очень похож на другие службы обмена файлами, такие как Google Drive, Dropbox и iCloud. NextCloud позволяет централизованно хранить файлы, документы, изображения, фильмы и видео. С NextCloud вы можете обмениваться файлами, контактами и любой другой поддержкой со своими друзьями и клиентами. NextCloud интегрируется с почтой, календарем, контактами и другими функциями, которые помогут вашим командам выполнять свою работу быстрее и проще. Вы можете установить клиент NextCloud на настольный компьютер для синхронизации файлов с сервером Nextcloud. Настольные клиенты доступны для большинства операционных систем, включая Windows, macOS, FreeBSD и Linux.

В этом руководстве мы объясним, как установить NextCloud и защитить его с помощью Let’s Encrypt SSL в Debian 10.

Предпосылки

  • Сервер под управлением Debian 10.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера. В этом руководстве мы будем использовать, например, домен nextcloud.example.com.
  • Пользователь с привилегиями sudo.

Установите Apache, MariaDB и PHP

NextCloud работает на веб-сервере, написанном на PHP, и использует MariaDB для хранения своих данных. Затем вам нужно будет установить Apache, MariaDB, PHP и другие необходимые пакеты в вашей системе. Вы можете установить их все, выполнив следующую команду:

sudo apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip wget unzip -y

После установки всех пакетов откройте файл php.ini и измените некоторые рекомендуемые настройки:

sudo nano /etc/php/7.3/apache2/php.ini

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

memory_limit = 512M
 upload_max_filesize = 500M
 post_max_size = 500M
 max_execution_time = 300

Сохраните и закройте файл, когда закончите. Затем запустите службы Apache и MariaDB и включите их после перезагрузки системы с помощью следующей команды:

sudo systemctl start apache2
sudo systemctl start mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadb

После этого вы можете перейти к следующему шагу.

Настроить базу данных для NextCloud

Далее вам нужно будет создать базу данных и пользователя базы данных для NextCloud. Для этого войдите в оболочку MariaDB с помощью следующей команды:

sudo mysql -u root -p

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

CREATE DATABASE nextclouddb;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'password';

Затем предоставьте все привилегии nextclouddb с помощью следующей команды:

GRANT ALL ON nextclouddb.* TO 'nextclouduser'@'localhost';

Затем снимите привилегии и выйдите из оболочки MariaDB с помощью следующей команды:

FLUSH PRIVILEGES;
EXIT;

После этого вы можете перейти к следующему шагу.

Скачать NextCloud

Сначала посетите страницу загрузки NextCloud и загрузите последнюю версию NextCloud в свою систему. На момент написания этой статьи последняя версия NextCloud — 17.0.1. Вы можете скачать его с помощью следующей команды:

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

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

sudo unzip nextcloud-17.0.1.zip

Затем переместите извлеченный каталог в корневой веб-каталог Apache:

sudo mv nextcloud /var/www/html/

Затем предоставьте соответствующие разрешения каталогу nextcloud с помощью следующей команды:

sudo chown -R www-data:www-data /var/www/html/nextcloud/
sudo chmod -R 755 /var/www/html/nextcloud/

После этого вы можете перейти к следующему шагу.

Настройте Apache для NextCloud

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

sudo nano /etc/apache2/sites-available/nextcloud.conf

Добавьте следующие строки:

<VirtualHost *:80>
 ServerAdmin [email protected]
 DocumentRoot /var/www/html/nextcloud/ServerName nextcloud.example.com

 Alias /nextcloud "/var/www/html/nextcloud/"

 <Directory /var/www/html/nextcloud/>
 Options +FollowSymlinks
 AllowOverride All
 Require all granted
 <IfModule mod_dav.c>
 Dav off
 </IfModule>
 SetEnv HOME /var/www/html/nextcloud
 SetEnv HTTP_HOME /var/www/html/nextcloud
 </Directory>

 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined

 </VirtualHost>

Сохраните и закройте файл, когда закончите. Затем включите файл виртуального хоста Apache и другие необходимые модули, используя следующие команды:

sudo a2ensite nextcloud.conf
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod mime
sudo a2enmod env
sudo a2enmod dir

Наконец, перезапустите службу Apache, чтобы применить новую конфигурацию:

sudo systemctl restart apache2

Защитите NextCloud с помощью бесплатного Let's Encrypt SSL

Теперь NextCloud установлен и настроен. После этого рекомендуется защитить его с помощью бесплатного Let's Encrypt SSL. Для этого сначала установите клиент Certbot с помощью следующей команды:

sudo apt-get install python-certbot-apache -y

После установки вы можете запустить следующую команду, чтобы установить сертификат Let's Encrypt для вашего домена nextcloud.example.com.

sudo certbot --apache -d nextcloud.example.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
 Plugins selected: Authenticator apache, Installer apache
 Enter email address (used for urgent renewal and security notices) (Enter 'c' to
 cancel): [email protected]

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Please read the Terms of Service at
 https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
 agree in order to register with the ACME server at
 https://acme-v02.api.letsencrypt.org/directory
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 (A)gree/(C)ancel: A

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Would you be willing to share your email address with the Electronic Frontier
 Foundation, a founding partner of the Let's Encrypt project and the non-profit
 organization that develops Certbot? We'd like to send you email about our work
 encrypting the web, EFF news, campaigns, and ways to support digital freedom.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 (Y)es/(N)o: Y
 Obtaining a new certificate
 Performing the following challenges:
 http-01 challenge for nextcloud.example.com
 Enabled Apache rewrite module
 Waiting for verification...
 Cleaning up challenges
 Created an SSL vhost at /etc/apache2/sites-available/nextcloud-le-ssl.conf
 Deploying Certificate to VirtualHost /etc/apache2/sites-available/nextcloud-le-ssl.conf
 Enabling available site: /etc/apache2/sites-available/nextcloud-le-ssl.conf

 Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 1: No redirect - Make no further changes to the webserver configuration.
 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
 new sites, or if you're confident your site works on HTTPS. You can undo this
 change by editing your web server's configuration.
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Затем введите 2 и нажмите Enter, чтобы загрузить и установить бесплатный SSL-сертификат для вашего домена. После успешного завершения установки. Вы должны получить следующий результат:

Enabled Apache rewrite module
 Redirecting vhost in /etc/apache2/sites-enabled/nextcloud.conf to ssl vhost in /etc/apache2/sites-available/nextcloud-le-ssl.conf

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Congratulations! You have successfully enabled https://nextcloud.example.com

 You should test your configuration at:
 https://www.ssllabs.com/ssltest/analyze.html?d=nextcloud.example.com
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
 /etc/letsencrypt/live/example.com/fullchain.pem
 Your key file has been saved at:
 /etc/letsencrypt/live/example.com/privkey.pem
 Your cert will expire on 2019-10-22. To obtain a new or tweaked
 version of this certificate in the future, simply run certbot again
 with the "certonly" option. To non-interactively renew *all* of
 your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
 configuration directory at /etc/letsencrypt. You should make a
 secure backup of this folder now. This configuration directory will
 also contain certificates and private keys obtained by Certbot so
 making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:
 Donating to ISRG /Let's Encrypt: https://letsencrypt.org/donate
 Donating to EFF: https://eff.org/donate-le

После этого вы можете перейти к следующему шагу.

Войдите в веб-интерфейс NextCloud

Теперь NextCloud настроен и защищен с помощью Let's Encrypt SSL. Затем откройте веб-браузер и введите URL-адрес https://nextcloud.example.com. Вы будете перенаправлены на следующую страницу:

Теперь введите имя пользователя и пароль администратора, папку «Данные», правильные учетные данные базы данных и нажмите кнопку « Завершить настройку ». Вы будете перенаправлены на панель инструментов NextCloud.

Вывод

Поздравляем! вы успешно установили и защитили NextCloud с помощью бесплатного Let's Encrypt SSL на Debian 10. Теперь вы можете легко обмениваться файлами, документами и мультимедиа с другими пользователями с помощью веб-интерфейса NextCloud.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.