GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare ProjectSend con Apache e Lets Encrypt SSL su Ubuntu 20.04

ProjectSend è un'applicazione gratuita e open source per la condivisione di file e immagini che ti aiuta a condividere file tra la tua azienda e i tuoi clienti. È uno strumento di condivisione file orientato al client che ti consente di caricare e condividere file di dimensioni illimitate su qualsiasi server. È scritto in PHP e utilizza un database MySQL per memorizzare le informazioni. Offre un ricco set di funzionalità tra cui statistiche in tempo reale, registrazione automatica, accesso automatico, modelli di posta elettronica personalizzati e altro ancora.

In questo post, ti mostreremo come installare l'applicazione di condivisione file ProjectSend con Apache e Let's Encrypt SSL su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Un nome di dominio valido puntato all'IP del tuo server.
  • Sul server è configurata una password di root.

Per iniziare

Innanzitutto, aggiorna i pacchetti di sistema alla versione aggiornata eseguendo il comando seguente:

apt-get update -y

Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.

Installa il server LAMP

Innanzitutto, dovrai installare Apache, MariaDB, PHP e altre estensioni richieste sul tuo server. Puoi installarli tutti con il seguente comando:

apt-get install apache2 mariadb-server imagemagick php libapache2-mod-php php-imagick php7.4-common php7.4-mysql php7.4-gd php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-bcmath php7.4-gmp

Dopo aver installato tutti i pacchetti, modifica il file php.ini:

nano /etc/php/7.4/apache2/php.ini

Modifica le seguenti impostazioni:

memory_limit = 512M
upload_max_filesize = 32M
max_execution_time = 300
date.timezone = Asia/Kolkata

Salva e chiudi il file, quindi riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Una volta terminato, puoi procedere al passaggio successivo.

Crea un database per ProjectSend

Successivamente, dovrai creare un database e un utente per ProjectSend.

Per farlo, accedi a MariaDB con il seguente comando:

mysql

Una volta effettuato l'accesso, crea un database e un utente con il seguente comando:

MariaDB [(none)]> create database projectsend;
MariaDB [(none)]> create user [email protected] identified by 'password';

Quindi, concedi tutti i privilegi al database di projectsend con il seguente comando:

MariaDB [(none)]> grant all privileges on projectsend.* to [email protected];

Quindi, svuota i privilegi ed esci da MariaDB con il seguente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Una volta terminato, puoi procedere al passaggio successivo.

Scarica ProjectSend

Successivamente, dovrai scaricare l'ultima versione di ProjectSend dal suo sito Web ufficiale. Puoi scaricarlo con il seguente comando:

wget -O projectsend.zip https://www.projectsend.org/download/387/

Una volta completato il download, estrai il file scaricato con il seguente comando:

unzip projectsend.zip -d /var/www/html/projectsend

Quindi, cambia la directory nella directory estratta e rinomina il file di configurazione predefinito:

cd /var/www/html/projectsend/includes
cp sys.config.sample.php sys.config.php

Quindi, modifica il file di configurazione con il seguente comando:

nano sys.config.php

Modifica le seguenti impostazioni:

define('DB_DRIVER', 'mysql');

/** Database name */
define('DB_NAME', 'projectsend');

/** Database host (in most cases it's localhost) */
define('DB_HOST', 'localhost');

/** Database username (must be assigned to the database) */
define('DB_USER', 'projectsend');

/** Database password */
define('DB_PASSWORD', 'password');

Salva e chiudi il file, quindi imposta l'autorizzazione e la proprietà appropriate con il seguente comando:

chown -R www-data:www-data /var/www/html/projectsend
chmod -R 775 /var/www/html/projectsend
chmod 644 /var/www/html/projectsend/includes/sys.config.php

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per ProjectSend

Quindi, crea un file di configurazione dell'host virtuale apache con il seguente comando:

nano /etc/apache2/sites-available/projectsend.conf

Aggiungi le seguenti righe:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/projectsend/
ServerName projectsend.example.com
<Directory /var/www/html/projectsend/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/example.com-error_log
CustomLog /var/log/apache2/example.com-access_log common
</VirtualHost>

Salvare e chiudere il file, quindi abilitare il modulo di riscrittura e il file di configurazione dell'host virtuale con il seguente comando:

a2enmod rewrite
a2ensite projectsend.conf

Quindi, riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Ora puoi controllare lo stato di Apache con il seguente comando:

systemctl status apache2

Dovresti vedere il seguente output:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2021-06-02 07:11:08 UTC; 5min ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 17680 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)
   Main PID: 14862 (apache2)
      Tasks: 6 (limit: 2353)
     Memory: 25.0M
     CGroup: /system.slice/apache2.service
             ??14862 /usr/sbin/apache2 -k start
             ??17684 /usr/sbin/apache2 -k start
             ??17685 /usr/sbin/apache2 -k start
             ??17686 /usr/sbin/apache2 -k start
             ??17687 /usr/sbin/apache2 -k start
             ??17688 /usr/sbin/apache2 -k start

Jun 02 07:11:08 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Accedi all'interfaccia Web di ProjectSend

Ora apri il tuo browser web e accedi all'interfaccia web di ProjectSend utilizzando l'URL http://projectsend.example.com . Dovresti vedere la seguente pagina:

Fornisci il nome del tuo sito, l'URL del sito, il nome utente e la password dell'amministratore e fai clic su Installa pulsante. Dovresti vedere la seguente pagina:

Ora, fai clic su Accedi pulsante. Dovresti vedere la seguente pagina:

Fornisci il nome utente e la password dell'amministratore e fai clic su Accedi pulsante. Dovresti vedere la dashboard di ProjectSend nella pagina seguente:

ProjectSend sicuro con Let's Encrypt SSL

È sempre una buona idea proteggere il tuo sito Web con Let's Encrypt SSL. Innanzitutto, dovrai installare il client Certbot per installare e gestire SSL. Per impostazione predefinita, il pacchetto Certbot è incluso nel repository predefinito di Ubuntu, quindi puoi installarlo con il seguente comando:

apt-get install python3-certbot-apache -y

Una volta installato Certbot, esegui il comando seguente per proteggere il tuo sito Web con Let's Encrypt SSL:

certbot --apache -d projectsend.example.com

Ti verrà chiesto di fornire la tua email e di accettare i termini del servizio come mostrato di seguito:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
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
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for projectsend.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/projectsend-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/projectsend-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/projectsend-le-ssl.conf

Quindi, seleziona se reindirizzare o meno il traffico HTTP su HTTPS come mostrato di seguito:

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

Digita 2 e premi Invio per installare Let's Encrypt SSL per il tuo sito web:

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

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

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=projectsend.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/projectsend.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/projectsend.example.com/privkey.pem
   Your cert will expire on 2021-12-23. 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"
 - 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

Conclusione

Congratulazioni! hai installato correttamente ProjectSend con Apache e Let's Encrypt SSL su Ubuntu 20.04. Ora puoi condividere facilmente file e immagini dall'interfaccia web di ProjectSend.


Ubuntu
  1. Come installare Nextcloud con Nginx e Lets Encrypt SSL su Ubuntu 20.04 LTS

  2. Come installare Magento 2 con Nginx e Lets Encrypt SSL su Ubuntu 20.04 LTS

  3. Come installare WonderCMS con Apache e Lets Encrypt SSL su CentOS 8

  4. Come installare Drupal con Nginx e Lets Encrypt SSL su Ubuntu 20.04 LTS

  5. Come installare Joomla con Apache2 e Lets Encrypt su Ubuntu 20.04

Come installare Drupal con Apache e Lets Encrypt SSL su Debian 11

Installa TaskBoard con Apache e lascia Encrypt SSL su Debian 11

Come installare Moodle con Nginx e Lets Encrypt SSL su Ubuntu 20.04

Come installare MediaWiki con Nginx e Lets Encrypt SSL su Ubuntu 20.04

Come installare Gitea con Nginx e Lets Encrypt SSL gratuito su Ubuntu 20.04

Come installare Let's Encrypt SSL su Ubuntu con Apache