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
- Prerequisiti
- Aggiorna i pacchetti di sistema
- Installa Apache e PHP
- Scarica DokuWiki
- Configura Apache per DokuWiki
- Proteggi DokuWiki con Lets Encrypt SSL
- Accedi a DokuWiki
- L'impostazione consente di crittografare il rinnovo automatico del certificato SSL
- 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.