DokuWiki je bezplatná, open source a nejuniverzálnější wiki aplikace napsaná v PHP. Je jednoduchý a lehký a používá k ukládání dat jednoduchý formát souboru, takže nevyžaduje žádnou databázi. Je známý svou čistou a čitelnou syntaxí a umožňuje snadné škálování a optimalizaci pomocí mnoha pokročilých funkcí. Můžete si vytvořit své osobní nebo firemní webové stránky pouhým nahráním jejich obsahu na váš server. Dodává se s bohatou sadou funkcí včetně podpory WYSIWYG, optimalizace pro SEO, vestavěného řízení přístupu a autentizačních konektorů, flexibilního rámce CSS a mnoha dalších.
V tomto tutoriálu vám ukážeme, jak nainstalovat DokuWiki s certifikátem Apache a Letsencrypt SSL na Ubuntu 20.04.
Předpoklady
- Server se systémem Ubuntu 20.04.
- Platný název domény odkazovaný na váš server.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Aktualizujte systémové balíčky
Před spuštěním se doporučuje aktualizovat systémové balíčky na nejnovější verzi. Můžete to udělat pomocí následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile je váš systém aktualizován, restartujte jej, aby se změny implementovaly.
Nainstalujte Apache a PHP
DokuWiki je napsána v PHP a běží na webovém serveru. Budete tedy muset do svého systému nainstalovat webový server Apache, PHP a další PHP knihovny. Všechny je můžete nainstalovat spuštěním následujícího příkazu:
apt-get install apache2 php php-gd php-xml php-json -y
Jakmile jsou všechny balíčky nainstalovány, spusťte službu Apache a povolte její spuštění při spouštění pomocí následujícího příkazu:
systemctl start apache2
systemctl enable apache2
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Stáhněte si DokuWiki
Nejprve přejděte na oficiální stránku stahování DokuWiki a stáhněte si nejnovější verzi DokuWiki pomocí následujícího příkazu:
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz
Po dokončení stahování vytvořte adresář DokuWiki v kořenovém adresáři webu Apache a extrahujte DokuWiki:
mkdir /var/www/html/dokuwiki
tar -xvzf dokuwiki-rc.tgz -C /var/www/html/dokuwiki/ --strip-components=1
Dále zkopírujte ukázkový soubor .htaccess pomocí následujícího příkazu:
cp /var/www/html/dokuwiki/.htaccess{.dist,}
Dále změňte vlastnictví dokuwiki na www-data:
chown -R www-data:www-data /var/www/html/dokuwiki
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Konfigurovat Apache pro DokuWiki
Dále vytvořte konfigurační soubor virtuálního hostitele Apache, který bude sloužit webu DokuWiki:
nano /etc/apache2/sites-available/dokuwiki.conf
Přidejte následující řádky:
<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>
Po dokončení uložte a zavřete soubor. Poté povolte web DokuWiki a znovu načtěte službu Apache pomocí následujícího příkazu:
a2ensite dokuwiki.conf
systemctl reload apache2
V tomto okamžiku je webový server Apache nakonfigurován pro obsluhu webu DokuWiki. Nyní můžete přistoupit k instalaci Let's Encrypt SSL na svůj web.
Zabezpečte DokuWiki pomocí Let's Encrypt SSL
Nejprve budete muset nainstalovat klienta Certbot do vašeho systému. Certbot je snadno použitelný klient, který načte certifikát z otevřené certifikační autority Let's Encrypt spuštěné EFF, Mozillou a dalšími – a nasadí jej na webový server. Pomocí klienta Certbot Let's Encrypt můžete snadno stáhnout, nainstalovat a obnovit certifikát SSL pro vaši doménu.
Certbot můžete nainstalovat pomocí následujícího příkazu:
apt-get install certbot python3-certbot-apache -y
Jakmile bude klient Certbot úspěšně nainstalován, spusťte následující příkaz pro instalaci Let's Encrypt SSL pro váš web:
certbot --apache -d dokuwiki.linuxbuz.com
Budete požádáni, abyste poskytli svůj platný e-mail a přijali podmínky služby, jak je uvedeno níže:
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 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
Dále vyberte, zda chcete přesměrovat provoz HTTP na HTTPS, nebo nakonfigurujte Nginx tak, aby přesměroval veškerý provoz na zabezpečený přístup HTTPS , jak je znázorněno v následujícím výstupu:
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
Zadejte 2 a stisknutím klávesy Enter spusťte proces. Po dokončení instalace byste měli získat následující výstup:
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
V tuto chvíli jsou vaše stránky Dokuwiki zabezpečeny pomocí Let's Encrypt SSL. Nyní můžete ke svému webu přistupovat zabezpečeně pomocí protokolu HTTPS.
Přístup k DokuWiki
Nyní otevřete webový prohlížeč a zadejte adresu URL https://dokuwiki.linuxbuz.com/install.php. Měli byste vidět instalační obrazovku DokuWiki:
Zadejte své wikinázev, uživatelské jméno správce, heslo, e-mail, vyberte zásady a klikněte na Uložit knoflík. Budete přesměrováni na následující stránku:
Klikněte na „vy jste nový DokuWiki ". Měli byste vidět následující obrazovku:
Klikněte na Přihlásit knoflík. Budete přesměrováni na přihlašovací obrazovku DokuWiki, jak je znázorněno níže:
Zadejte své administrátorské uživatelské jméno, heslo a klikněte na Přihlásit V knoflík. Na následující obrazovce byste měli vidět řídicí panel DokuWiki:
Nastavení automatického obnovení certifikátu Let's Encrypt
Ve výchozím nastavení jsou certifikáty Let’s Encrypt platné 90 dní. Budete tedy muset nastavit úlohu cron pro automatické obnovení certifikátu SSL. Je bezpečné vytvořit úlohu cron, která běží každý týden nebo dokonce každý den.
Pokud chcete certifikát SSL obnovit ručně, spusťte následující příkaz:
certbot renew --dry-run
Úlohu cron můžete nastavit tak, aby automaticky obnovovala certifikát SSL každý den v 10:00 úpravou následujícího souboru:
crontab -e
Přidejte následující řádek:
00 10 * * * root /usr/bin/certbot renew >/dev/null 2>&1
Po dokončení uložte a zavřete soubor.
Závěr
Gratulujeme! úspěšně jste nainstalovali DokuWiki a zabezpečili ji pomocí Let's Encrypt SSL na Ubuntu 20.04. Svou DokuWiki můžete také rozšířit pomocí motivu, pluginů a šablon. Pokud máte nějaké dotazy, neváhejte se mě zeptat.