GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat MyBB Forum s Nginx a Lets Encrypt na Debian 10

MyBB je bezplatný a open source, intuitivní a rozšiřitelný program fóra. MyBB se snadno používá a je rozšiřitelný o stovky pluginů a motivů, které usnadňují přidávání nových funkcí nebo nového vzhledu.

Zdrojový kód MyBB je hostován na GitHubu. Tento výukový program vám ukáže, jak nainstalovat software fóra MyBB na systém Debian 10 (buster).

Požadavky

MyBB 1.8 a Merge System 1.8 mají několik minimálních systémových požadavků:

  • PHP, alespoň verze 5.2. Vysoce doporučeno PHP 7.3.
  • MySQL verze 5.0 nebo vyšší, PostgreSQL verze 8.1 nebo vyšší nebo SQLite verze 3 nebo vyšší. Důrazně doporučujeme PostgreSQL 10.0 nebo MySQL 8.0.
  • Webový server Apache, Nginx, Lighttpd nebo IIS
  • Jsou také zapotřebí následující rozšíření PHP:
  • SimpleXML
  • mbstring
  • gd
  • Rozšíření PHP databáze specifické pro příslušného dodavatele

POZNÁMKA: Nahradit všechny instance example.com s názvem vaší domény.

Předpoklady

  • Operační systém Debian 10 (buster).
  • Uživatel bez oprávnění root s funkcí sudo privilegia.

Počáteční kroky

Zkontrolujte svou verzi Debianu:

lsb_release -ds
# Debian GNU/Linux 10 (buster)

Nastavte časové pásmo:

sudo dpkg-reconfigure tzdata

Aktualizujte balíčky operačního systému (software). To je nezbytný první krok, protože zajišťuje, že máte nejnovější aktualizace a opravy zabezpečení pro výchozí softwarové balíčky vašeho operačního systému:

sudo apt update && sudo apt upgrade -y

Nainstalujte některé základní balíčky, které jsou nezbytné pro základní správu operačního systému Debian:

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

Krok 1 – Instalace PHP a požadovaných rozšíření PHP

Nainstalujte PHP a také požadovaná rozšíření PHP:

sudo apt install -y php php-cli php-fpm php-gd php-mbstring php-xml php-mysql php-pgsql

Chcete-li zobrazit PHP zkompilované v modulech, můžete spustit:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Zkontrolujte verzi:

php --version

# PHP 7.3.9-1~deb10u1 (cli) (built: Sep 18 2019 10:33:23) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.9, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.4-2, Copyright (c) 1999-2018, by Zend Technologies

Služba PHP-FPM se automaticky spouští a povoluje při restartu systému Debian 10, takže ji není nutné spouštět a povolovat ručně. Můžeme přejít k dalšímu kroku.

Krok 2 – Instalace klienta acme.sh a získání certifikátu Let's Encrypt (volitelné)

Zabezpečení fóra pomocí HTTPS není nutné, ale je dobrým zvykem zabezpečit provoz na webu. K získání TLS certifikátu od Let's Encrypt použijeme klienta acme.sh. Acme.sh je jednoduchý unixový shell software pro získávání TLS certifikátů z Let's Encrypt s nulovými závislostmi.

Stáhněte a nainstalujte acme.sh:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~

Zkontrolujte verzi acme.sh:

acme.sh --version
# v2.8.2

Získejte RSA a ECC/ECDSA certifikáty pro vaši doménu/název hostitele:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Pokud chcete falešné certifikáty pro testování, můžete přidat --staging příznak k výše uvedeným příkazům.

Po spuštění výše uvedených příkazů budou vaše certifikáty a klíče bude v:

  • Pro RSA :/home/username/example.com adresář.
  • Pro ECC/ECDSA :/home/username/example.com_ecc adresář.

Chcete-li uvést své vydané certifikáty, můžete spustit:

acme.sh --list

Vytvořte adresář pro ukládání vašich certifikátů. Použijeme /etc/letsencrypt adresář.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Nainstalujte/zkopírujte certifikáty do adresáře /etc/letsencrypt.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Všechny certifikáty budou automaticky obnovovány každých 60 dní.

Po získání certifikátů ukončete uživatele root a vraťte se k běžnému uživateli sudo:

exit

Krok 3 – Instalace MariaDB a vytvoření databáze pro MyBB

Nainstalujte databázový server MariaDB:

sudo apt install -y mariadb-server

Zkontrolujte verzi MariaDB:

mysql --version
# mysql  Ver 15.1 Distrib 10.3.17-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Spusťte mysql_secure installation skript ke zlepšení zabezpečení MariaDB a nastavení hesla pro MariaDB root uživatel:

sudo mysql_secure_installation

Odpovězte na každou z otázek:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_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

Připojte se k prostředí MariaDB jako uživatel root:

sudo mysql -u root -p
# Enter password

Vytvořte prázdnou databázi MariaDB a uživatele pro fórum MyBB a zapamatujte si přihlašovací údaje:

mariadb> CREATE DATABASE dbname;
mariadb> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mariadb> FLUSH PRIVILEGES;

Ukončete službu MariaDB:

mariadb> exit

Nahraďte dbname,  username a password s vašimi vlastními jmény.

Krok 4 – Instalace a konfigurace Nginx

Stáhněte a nainstalujte NGINX z úložiště Debian:

sudo apt install -y nginx

Zkontrolujte verzi NGINX:

sudo nginx -v
# nginx version: nginx/1.14.2

Nakonfigurujte Nginx. Spusťte sudo vim /etc/nginx/sites-available/mybb.conf a naplňte soubor následujícím.

server {

listen 80;
listen 443 ssl;

ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name forum.example.com; root /var/www/mybb; location / { index index.php; } # Deny access to internal files. location ~ /(inc|uploads/avatars) { deny all; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Aktivujte nový mybb.conf konfiguraci propojením souboru s sites-enabled adresář:

sudo ln -s /etc/nginx/sites-available/mybb.conf /etc/nginx/sites-enabled/

Zkontrolujte, zda konfigurace NGINX neobsahuje chyby syntaxe:

sudo nginx -t

Znovu načtěte Nginx:

sudo systemctl reload nginx.service

Krok 5 – Instalace MyBB

Vytvořte kořenový adresář dokumentu:

sudo mkdir -p /var/www/mybb

Stáhněte si nejnovější verzi MyBB a rozbalte ji:

cd /var/www/mybb
sudo wget https://resources.mybb.com/downloads/mybb_1821.zip
sudo unzip mybb_1821.zip
sudo mv /var/www/mybb/Upload/* /var/www/mybb

Odstraňte stažený soubor .zip soubor:

sudo rm mybb_1821.zip
sudo rmdir Upload

Změňte vlastnictví /var/www/mybb do adresáře www-data:

sudo chown -R www-data:www-data /var/www/mybb

Jako poslední krok otevřete svou doménu a postupujte podle instalačního průvodce pro MyBB. Pro přístup k instalačnímu programu musíte přejít do /install adresář vašeho webu ve vašem webovém prohlížeči. Pokud je například vaše doména example.com a nahráli jste své soubory MyBB do kořenového adresáře a poté přejděte na http://example.com/install . Pro přístup k MyBB admin přidejte /admin na adresu URL vašeho webu. Úspěšně jste nainstalovali MyBB.

Po instalaci byste měli odstranit /install adresář z vašeho serveru, abyste zabránili komukoli jinému spustit instalaci znovu.

sudo rm -rf /var/www/mybb/install/

Krok 6 – Dokončete nastavení MyBB

Pro přístup k instalačnímu programu musíte přejít do install/ adresář vašeho webu ve vašem webovém prohlížeči.

Po otevření průvodce instalací MyBB by se vám měla zobrazit stránka podobná této. Vše, co musíte udělat, je kliknout na „Další“ na této stránce:

Zkontrolujte licenci MyBB a klikněte na "Další" :

Tato stránka kontroluje, zda váš server splňuje požadavky pro provozování MyBB. Pokud ne, budete upozorněni na této stránce. Pokud vše funguje správně, stačí kliknout na „Další“ na této stránce.

Tato stránka slouží ke konfiguraci vaší databáze. Zadejte požadované údaje o databázi a klikněte na "Další" .

V tomto kroku se vloží databázové tabulky. Na této stránce není potřeba žádný uživatelský vstup, takže klikněte na Další až se objeví.

V tomto kroku se do výše vytvořených databázových tabulek vloží výchozí data. Klikněte na Další .

V tomto kroku se do fóra načtou data motivu. Na této stránce není potřeba žádný vstup uživatele. Klikněte na „Další“ až se objeví.

Dále nakonfigurujte základní nastavení, jako je název fóra, adresa URL atd.:

Vytvořte si účet správce MyBB. Tento účet má oprávnění ke všem sekcím v ovládacím panelu správce.

Po vytvoření účtu správce se zobrazí stránka „Dokončit nastavení“. Tato stránka ukazuje, že instalace je dokončena:

Pro přístup do administrátorského rozhraní připojte /admin k vaší URL:

Správce MyBB bude vypadat nějak takto:

A zde je snímek obrazovky frontendu MyBB:

Blahopřejeme ! Úspěšně jste nainstalovali MyBB.

Odkazy

  • https://mybb.com
  • https://github.com/mybb/mybb

Debian
  1. Nainstalujte Lets Encrypt and Secure Nginx pomocí SSL/TLS v Debianu 9

  2. Jak nainstalovat Shopware s NGINX a nechat šifrovat na Ubuntu 18.04 LTS

  3. Jak nainstalovat Shopware s NGINX a Lets Encrypt na CentOS 7

  1. Jak nainstalovat Shopware s NGINX a Lets Encrypt na Fedoře 30

  2. Jak nainstalovat WonderCMS s Nginx na Debian 9

  3. Jak nainstalovat Pico CMS s Nginx a Lets Encrypt na CentOS 7

  1. Nainstalujte Automad CMS s Nginx a Lets Encrypt SSL na Debian 10

  2. Jak nainstalovat ElkArte Forum s Apache a Lets Encrypt na Debian 10

  3. Jak nainstalovat DokuWiki s Nginx a šifrovat SSL na CentOS 8