ElkArte je bezplatný, open source a výkonný software pro vytváření komunitních fór založený na Simple Machines Forum. Je napsán v PHP a umožňuje vám vytvořit komunitní fórum plně reagující na mobilní a bezdrátová zařízení. Je navržen tak, aby poskytoval všechny funkce, které potřebujete pro plnohodnotné komunitní fórum hned po vybalení.
ElkArte je pro vás správnou volbou, pokud hledáte jednoduchou a přímočarou platformu fóra, kterou lze snadno přizpůsobit.
V tomto tutoriálu vám ukážeme, jak nainstalovat ElkArte pomocí Let's Encrypt 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.
Instalovat Apache, PHP a MariaDB
ElkArte běží na webovém serveru založeném na PHP a používá MariaDB jako databázový backend. Takže budete muset nainstalovat rozšíření Apache, MariaDB, PHP a další PHP na váš server. Všechny balíčky můžete nainstalovat pomocí následujícího příkazu:
apt-get install apache2 mariadb-server php7.4 libapache2-mod-php7.4 php7.4-common php7.4-curl php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-mysql php7.4-gd php7.4-pgsql php7.4-xml php7.4-cli php7.4-imagick php7.4-bcmath php7.4-gmp php7.4-zip unzip -y
Jakmile jsou všechny balíčky nainstalovány, otevřete soubor php.ini a upravte některá užitečná nastavení:
nano /etc/php/7.4/apache2/php.ini
Change the following lines: memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = Asia/Kolkata
Uložte a zavřete soubor a poté restartujte službu Apache, aby se změny projevily:
systemctl restart apache2
Konfigurace databáze MariaDB
Nejprve zabezpečte instalaci MariaDB a nastavte heslo roota MariaDB pomocí následujícího příkazu:
mysql_secure_installation
Odpovězte na všechny otázky, jak je uvedeno níže:
Enter current password for root (enter for none): Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Dále se přihlaste do prostředí MariaDB pomocí následujícího příkazu:
mysql -u root -p
Po přihlášení vytvořte databázi a uživatele pro ElkArte:
MariaDB [(none)]> CREATE DATABASE elkdb;
MariaDB [(none)]> CREATE USER 'elk'@'localhost' IDENTIFIED BY 'password';
Dále udělte všechna oprávnění elkdb pomocí následujícího příkazu:
MariaDB [(none)]> GRANT ALL ON elkdb.* TO 'elk'@'localhost' WITH GRANT OPTION;
Dále vyprázdněte oprávnění a ukončete prostředí MariaDB pomocí následujícího příkazu:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Jakmile je databáze nakonfigurována, můžete přejít k dalšímu kroku.
Stáhnout ElkArte
Nejprve si stáhněte nejnovější verzi ElkArte z úložiště Git pomocí následujícího příkazu:
wget https://github.com/elkarte/Elkarte/releases/download/v1.1.6/ElkArte_v1-1-6_install.zip
Po dokončení stahování rozbalte stažený soubor do kořenového adresáře webu Apache pomocí následujícího příkazu:
unzip ElkArte_v1-1-6_install.zip -d /var/www/html/elkarte
Dále udělte správná oprávnění k adresáři elkarte pomocí následujícího příkazu:
chown -R www-data:www-data /var/www/html/elkarte/
chmod -R 755 /var/www/html/elkarte/
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Konfigurovat Apache pro ElkArte
Dále vytvořte nový konfigurační soubor virtuálního hostitele Apache pro ElkArte.
nano /etc/apache2/sites-available/elkarte.conf
Přidejte následující řádky:
<VirtualHost *:80> ServerAdmin [email protected] ServerName elk.linuxbuz.com DocumentRoot /var/www/html/elkarte <Directory /var/www/html/elkarte/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Po dokončení uložte a zavřete soubor. Poté povolte modul virtuálního hostitele a přepisu Apache pomocí následujícího příkazu:
a2ensite elkarte.conf
a2enmod rewrite
Nakonec restartujte službu Apache a implementujte změny.
systemctl restart apache2
Zabezpečte ElkArte pomocí Let's Encrypt SSL
Nejprve si nainstalujte klienta Certbot Let's Encrypt pro správu SSL pro váš web:
apt-get install certbot python3-certbot-apache -y
Jakmile je Certbot nainstalován, spusťte následující příkaz ke stažení a instalaci Let's Encrypt SSL pro váš web:
certbot --apache -d elk.linuxbuz.com
Budete požádáni, abyste poskytli svou e-mailovou adresu 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 elk.linuxbuz.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/elk-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/elk-le-ssl.conf Enabling available site: /etc/apache2/sites-available/elk-le-ssl.conf
Dále vyberte, zda chcete přesměrovat provoz HTTP na HTTPS, jak je uvedeno níže:
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 stiskněte Enter dokončete instalaci, jak je uvedeno níže.
Redirecting vhost in /etc/apache2/sites-enabled/elk.conf to ssl vhost in /etc/apache2/sites-available/elk-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://elk.linuxbuz.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=elk.linuxbuz.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/elk.linuxbuz.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/elk.linuxbuz.com/privkey.pem Your cert will expire on 2020-08-19. 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" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - 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 - We were unable to subscribe you the EFF mailing list because your e-mail address appears to be invalid. You can try again later by visiting https://act.eff.org.
V tomto okamžiku je vaše ElkArte zabezpečeno pomocí Let's Encrypt SSL.
Přístup k webovému rozhraní ElkArte
Nyní otevřete webový prohlížeč a zadejte adresu URL https://elk.linuxbuz.com. Budete přesměrováni na uvítací stránku ElkArte:
Klikněte na tlačítko Pokračovat knoflík. Měli byste vidět stránku nastavení databázového serveru:
Zadejte podrobnosti o databázi a klikněte na Pokračovat knoflík. Měli byste vidět stránku nastavení fóra:
Zadejte adresu URL svého fóra, název fóra a klikněte na Pokračovat knoflík. Měli byste vidět následující stránku:
Klikněte na tlačítko Pokračovat knoflík. Měli byste vidět stránku vytvoření účtu správce:
Zadejte své uživatelské jméno správce, heslo, e-mail a klikněte na tlačítko Pokračovat knoflík. Po dokončení instalace byste měli vidět následující stránku:
Klikněte na vaše nově nainstalované fórum . Na následující stránce byste měli vidět řídicí panel ElkArte:
Závěr
Gratulujeme! úspěšně jste nainstalovali ElkArte s Apache a Let's Encrypt SSL na Ubuntu 20.04. Nyní můžete snadno hostit své vlastní komunitní fórum s ElkArte. Pokud máte nějaké dotazy, neváhejte se mě zeptat.