Ricerca nel sito web

Installa TaskBoard con Apache e consente di crittografare SSL su Debian 11


Su questa pagina

  1. Prerequisiti
  2. Per iniziare
  3. Installa Apache, PHP e Sqlite
  4. Scarica la bacheca delle attività
  5. Configura Apache per Taskboard
  6. Accedi alla bacheca delle attività
  7. Taskboard sicuro con Lets Encrypt SSL
  8. Conclusione

TaskBoard è un'applicazione Kanban gratuita e open source utilizzata per tenere traccia delle cose che devono essere fatte. È un'applicazione basata su PHP e self-hosted che ti aiuta a tenere traccia di tutte le attività. Fornisce un'interfaccia web semplice e intuitiva per la gestione di tutte le tue attività. Viene utilizzato da team o organizzazioni per rappresentare il lavoro e il suo percorso verso il completamento.

Caratteristiche

  • Gratis e open-source
  • Tavole illimitate
  • Semplice e facile da installare
  • Facile personalizzazione
  • API RESTful
  • Gestione utenti di base

In questo tutorial, ti mostrerò come installare Taskboard su Debian 11.

Prerequisiti

  • Un server che esegue Debian 11.
  • Un nome di dominio valido indicato con l'IP del tuo server.
  • Sul server è configurata una password di root.

Iniziare

Prima di iniziare, è una buona idea aggiornare i pacchetti di sistema alla versione aggiornata. Puoi aggiornarli tutti eseguendo il seguente comando:

apt-get update -y

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

Installa Apache, PHP e Sqlite

Innanzitutto, dovrai installare il server Web Apache, PHP, SQLite e altre dipendenze richieste sul tuo server. Puoi installarli tutti eseguendo il seguente comando:

apt-get install apache2 sqlite3 php libapache2-mod-php php-cli php-common php-json php-readline php-sqlite3 libaio1 libapr1 libhtml-template-perl libaprutil1-dbd-sqlite3 libaprutil1-ldap libaprutil1 libdbi-perl libterm-readkey-perl curl libwrap0 unzip wget -y

Una volta installati tutti i pacchetti, avvia il servizio Apache e abilitalo per l'avvio al riavvio del sistema:

systemctl start apache2
systemctl enable apache2

Una volta terminato, puoi procedere al passaggio successivo.

Scarica Taskboard

Innanzitutto, scarica l'ultima versione di Taskboard utilizzando il seguente comando:

curl -s https://api.github.com/repos/kiswa/TaskBoard/releases/latest |grep browser_download_url | cut -d '"' -f 4 | wget -i -

Una volta completato il download, estrai il file scaricato nella directory root web di Apache con il seguente comando:

unzip TaskBoard_v*.zip -d /var/www/html/taskboard

Successivamente, imposta la proprietà e l'autorizzazione corrette nella directory Taskboard:

chown -R www-data:www-data /var/www/html/taskboard
chmod -R 775 /var/www/html/taskboard

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per Taskboard

Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per Taskboard. Puoi crearlo eseguendo il seguente comando:

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

Aggiungi le seguenti righe:

<VirtualHost *:80>
    ServerAdmin 
    DocumentRoot "/var/www/html/taskboard"
    ServerName taskboard.example.com
    <Directory "/var/www/html/taskboard">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog "/var/log/apache2/taskboard-error_log"
    CustomLog "/var/log/apache2/taskboard-access_log" combined
</VirtualHost>

Salva e chiudi il file quando hai finito, quindi abilita l'host virtuale Apache con il seguente comando:

a2ensite taskboard.conf

Successivamente, abilita il modulo di riscrittura Apache e riavvia il servizio Web Apache con il seguente comando:

a2enmod rewrite
systemctl restart apache2

Ora puoi controllare lo stato del servizio Apache usando il seguente comando:

systemctl status apache2

Otterrai il seguente output:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-11-06 14:46:54 UTC; 5s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 23704 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 23709 (apache2)
      Tasks: 6 (limit: 4679)
     Memory: 15.3M
        CPU: 110ms
     CGroup: /system.slice/apache2.service
             ??23709 /usr/sbin/apache2 -k start
             ??23710 /usr/sbin/apache2 -k start
             ??23711 /usr/sbin/apache2 -k start
             ??23712 /usr/sbin/apache2 -k start
             ??23713 /usr/sbin/apache2 -k start
             ??23714 /usr/sbin/apache2 -k start

Nov 06 14:46:54 debian11 systemd[1]: Starting The Apache HTTP Server...

Una volta terminato, puoi procedere al passaggio successivo.

Accedi alla bacheca delle attività

A questo punto, Taskboard è installato e configurato. Ora apri il tuo browser web e accedi alla Taskboard utilizzando l'URL http://taskboard.example.com. Verrai reindirizzato alla pagina di accesso di Taskboard:

Fornire il nome utente e la password dell'amministratore predefiniti admin/admin e fare clic sul pulsante Accedi. Dovresti vedere la dashboard Taskboard nella pagina seguente:

Ora, fai clic sul pulsante Impostazioni per modificare la password amministratore predefinita di Taskboard. Dovresti vedere la seguente pagina:

Fornisci la tua nuova password di amministratore e fai clic sul pulsante Cambia password per applicare le modifiche.

Taskboard sicuro con Lets Encrypt SSL

Se vuoi proteggere la tua Taskboard con Lets Encrypt SSL, dovrai installare il pacchetto client Certbot e gestire Lets Encrypt SSL per la tua Taskboard.

Puoi installarlo eseguendo il seguente comando:

apt-get install python3-certbot-apache -y

Una volta installato il pacchetto Certbot, esegui il seguente comando per scaricare e installare Lets Encrypt SSL per il tuo sito Web Taskboard.

certbot --apache -d taskboard.example.com

Ti verrà chiesto di fornire la tua email e di accettare i termini di 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): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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 taskboard.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/taskboard-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/taskboard-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/taskboard-le-ssl.conf

Successivamente, 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 Lets Encrypt SSL per il tuo sito web:

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

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

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

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

Ora puoi accedere al tuo sito Web in modo sicuro utilizzando l'URL https://taskboard.example.com.

Conclusione

Congratulazioni! hai installato correttamente Taskboard con Apache e Lets Encrypt SSL. Ora puoi creare la tua bacheca, aggiungere utenti, assegnare compiti e gestire tutto dalla dashboard centrale. Non esitate a chiedermi se avete domande.