Ricerca nel sito web

Come installare DokuWiki su Ubuntu 20.04 LTS


Questo tutorial esiste per queste versioni del sistema operativo

  • Ubuntu 18.04 (Castoro bionico)

Su questa pagina

  1. Prerequisiti
  2. Aggiorna i pacchetti di sistema
  3. Installa Apache e PHP
  4. Scarica DokuWiki
  5. Configura Apache per DokuWiki
  6. Proteggi DokuWiki con Lets Encrypt SSL
  7. Accedi a DokuWiki
  8. L'impostazione consente di crittografare il rinnovo automatico del certificato SSL
  9. Conclusione

DokuWiki è un'applicazione wiki gratuita, open-source e molto versatile scritta in PHP. È semplice e leggero che utilizza un semplice formato di file per archiviare i propri dati, quindi non richiede alcun database. È noto per la sua sintassi chiara e leggibile e consente di ridimensionare e ottimizzare facilmente utilizzando molte funzionalità avanzate. Puoi creare i tuoi siti web personali o aziendali semplicemente caricandone il contenuto sul tuo server. Viene fornito con un ricco set di funzionalità tra cui supporto WYSIWYG, SEO friendly, controlli di accesso integrati e connettori di autenticazione, framework CSS flessibile e molti altri.

In questo tutorial, ti mostreremo come installare DokuWiki con il certificato SSL Apache e Letsencrypt su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Un nome di dominio valido indirizzato al tuo server.
  • Una password di root è configurata sul tuo server.

Aggiorna i pacchetti di sistema

Prima di iniziare, si consiglia di aggiornare i pacchetti di sistema all'ultima versione. Puoi farlo con il seguente comando:

apt-get update -y
apt-get upgrade -y

Una volta aggiornato il sistema, riavvialo per implementare le modifiche.

Installa Apache e PHP

DokuWiki è scritto in PHP e gira sul server web. Quindi dovrai installare il server web Apache, PHP e altre librerie PHP sul tuo sistema. Puoi installarli tutti eseguendo il seguente comando:

apt-get install apache2 php php-gd php-xml php-json -y

Una volta installati tutti i pacchetti, avvia il servizio Apache e abilitalo per l'avvio all'avvio con il seguente comando:

systemctl start apache2
systemctl enable apache2

Al termine, puoi procedere al passaggio successivo.

Scarica DokuWiki

Innanzitutto, vai alla pagina di download ufficiale di DokuWiki e scarica l'ultima versione di DokuWiki con il seguente comando:

wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz

Una volta completato il download, crea una directory DokuWiki all'interno della directory root web di Apache ed estrai il DokuWiki:

mkdir /var/www/html/dokuwiki
tar -xvzf dokuwiki-rc.tgz -C /var/www/html/dokuwiki/ --strip-components=1

Successivamente, copia il file .htaccess di esempio con il seguente comando:

cp /var/www/html/dokuwiki/.htaccess{.dist,}

Successivamente, cambia la proprietà del dokuwiki in www-data:

chown -R www-data:www-data /var/www/html/dokuwiki

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per DokuWiki

Quindi, crea un file di configurazione dell'host virtuale Apache per servire il sito Web DokuWiki:

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

Aggiungi le seguenti righe:

<VirtualHost *:80>
        ServerName    dokuwiki.linuxbuz.com      
        DocumentRoot  /var/www/html/dokuwiki

        <Directory ~ "/var/www/html/dokuwiki/(bin/|conf/|data/|inc/)">
            <IfModule mod_authz_core.c>
                AllowOverride All
                Require all denied
            </IfModule>
            <IfModule !mod_authz_core.c>
                Order allow,deny
                Deny from all
            </IfModule>
        </Directory>

        ErrorLog   /var/log/apache2/dokuwiki_error.log
        CustomLog  /var/log/apache2/dokuwiki_access.log combined
</VirtualHost>

Salva e chiudi il file quando hai finito. Quindi, abilita il sito DokuWiki e ricarica il servizio Apache con il seguente comando:

a2ensite dokuwiki.conf
systemctl reload apache2

A questo punto, il web server Apache è configurato per servire il sito DokuWiki. Ora puoi procedere con l'installazione di Lets Encrypt SSL sul tuo sito web.

Proteggi DokuWiki con Lets Encrypt SSL

Innanzitutto, dovrai installare il client Certbot nel tuo sistema. Il Certbot è un client di facile utilizzo che recupera un certificato da Lets Encrypt un'autorità di certificazione aperta lanciata da EFF, Mozilla e altri e lo distribuisce a un server web. Utilizzando il client Certbot Lets Encrypt puoi scaricare, installare e rinnovare facilmente il certificato SSL per il tuo dominio.

Puoi installare Certbot con il seguente comando:

apt-get install certbot python3-certbot-apache -y

Una volta che il client Certbot è stato installato correttamente, esegui il seguente comando per installare Lets Encrypt SSL per il tuo sito web:

certbot --apache -d dokuwiki.linuxbuz.com

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

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): 

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

Successivamente, seleziona se reindirizzare o meno il traffico HTTP su HTTPS o configurare Nginx per reindirizzare tutto il traffico a un accesso HTTPS sicuro come mostrato nel seguente output:

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 avviare il processo. Una volta completata l'installazione, dovresti ottenere il seguente output:

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

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://dokuwiki.linuxbuz.com

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

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

A questo punto, il tuo sito Dokuwiki è protetto con Lets Encrypt SSL. Ora puoi accedere al tuo sito in modo sicuro utilizzando il protocollo HTTPS.

Accedi al DokuWiki

Ora apri il tuo browser web e digita l'URL https://dokuwiki.linuxbuz.com/install.php. Dovresti vedere la schermata di installazione di DokuWiki:

Fornisci il tuo nome wiki, nome utente amministratore, password, e-mail, scegli la tua politica e fai clic sul pulsante Salva. Verrai reindirizzato alla seguente pagina:

Clicca su \tu nuovo DokuWiki\. Dovresti vedere la seguente schermata:

Fare clic sul pulsante Accedi. Verrai reindirizzato alla schermata di accesso di DokuWiki come mostrato di seguito:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard di DokuWiki nella seguente schermata:

L'impostazione consente di crittografare il rinnovo automatico del certificato SSL

Per impostazione predefinita, i certificati Let's Encrypt sono validi per 90 giorni. Quindi, dovrai impostare un cron job per rinnovare automaticamente il certificato SSL. È sicuro creare un cron job che viene eseguito ogni settimana o anche ogni giorno.

Se desideri rinnovare manualmente il certificato SSL, esegui il seguente comando:

certbot renew --dry-run

Puoi impostare il cron job per il rinnovo automatico del certificato SSL ogni giorno alle 10:00 modificando il seguente file:

crontab -e

Aggiungi la seguente riga:

00 10 * * *   root /usr/bin/certbot renew >/dev/null 2>&1

Salva e chiudi il file quando hai finito.

Conclusione

Congratulazioni! hai installato correttamente DokuWiki e lo hai protetto con Lets Encrypt SSL su Ubuntu 20.04. Puoi anche estendere il tuo DokuWiki utilizzando temi, plugin e modelli. Non esitate a chiedermi se avete domande.