GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Vanilla Forum na Debian 9

Vanilla je bezplatné diskuzní fórum s otevřeným zdrojovým kódem napsané v PHP. Software Vanilla Forum je distribuován pod licencí GNU GPL2. Jeho zdrojový kód je dostupný přes Github. Má bohatý systém doplňků, který můžete využít k přidávání vlastních funkcí do fóra Vanilla. Obsah pro Vanilla Forum lze psát pomocí jazyka Markdown. V tomto tutoriálu vám ukážu, jak nainstalovat Vanilla Forum na Debian 9 pomocí Nginx jako webového serveru, MariaDB jako databázového serveru a volitelně můžete zabezpečit transportní vrstvu pomocí klienta acme.sh a certifikační autority Let's Encrypt pro přidání podpora SSL.

Požadavky

Vanilla vyžaduje server s PHP, MySQL a softwarem webového serveru (jako Apache nebo Nginx). Pokud chcete instalovat na produkční server, budete pravděpodobně muset vlastnit doménu a již ji mít nakonfigurovanou na svém serveru pomocí DNS, ale pokud ne, pak doménu nepotřebujete.

Vanilla Forumminimálně požadavky jsou:

  • PHP verze 7.0 nebo novější.
  • Rozšíření PHP mbstring, cURL, GD a PDO, MySQLi, OpenSSL.
  • MySQL verze 5.0 nebo novější (nebo ekvivalent Percona/MariaDB).
  • Software webového serveru (Nginx, Apache ...).
  • Přísný režim MySQL je zakázán.

Vanilla Forum důrazně doporučuje :

  • PHP verze 7.2 nebo novější.
  • Rozšíření PHP mbstring, cURL, GD a PDO, MySQLi, OpenSSL.
  • MySQL verze 5.7 nebo novější (nebo ekvivalent Percona/MariaDB).
  • Software webového serveru (Nginx, Apache ...).
  • Šifrování SSL.

POZNÁMKAPHP 7.0 dosáhlo konce životnosti a již nebude dostávat bezpečnostní záplaty, proto důrazně doporučujeme používat novější verze PHP. Podpora Vanilla pro PHP 7.0 brzy skončí!

Předpoklady

  • Operační systém se systémem Debian 9.
  • Uživatel bez oprávnění root s právy sudo.

Počáteční kroky

Zkontrolujte svou verzi Debianu:

lsb_release -ds
# Debian GNU/Linux 9.7 (stretch)

Nastavte časové pásmo:

sudo dpkg-reconfigure tzdata

Aktualizujte balíčky operačního systému (software). Toto je důležitý 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 lsb-release ca-certificates dirmngr software-properties-common

Krok 1 – Instalace PHP a nezbytných rozšíření PHP

Chcete-li nainstalovat novější verzi PHP, přidejte nové úložiště do systému:

sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update && sudo apt upgrade -y

Nainstalujte PHP a také potřebná rozšíření PHP:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-curl php7.2-gd php7.2-mysql php7.2-json

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

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Zkontrolujte verzi PHP:

php --version

# PHP 7.2.14-1+0~20190113100742.14+stretch~1.gbpd83c69 (cli) (built: Jan 13 2019 10:07:43) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.14-1+0~20190113100742.14+stretch~1.gbpd83c69, Copyright (c) 1999-2018, by Zend Technologies

Služba PHP-FPM se automaticky spouští a povoluje při restartu systému Debian 9, takže ji není nutné spouštět a povolovat ručně. Můžeme přejít k dalšímu kroku, kterým je instalace a nastavení databáze.

Krok 2 – Instalace MariaDB a vytvoření databáze pro Vanilla Forum

Vanilla Forum podporuje databáze MySQL, MariaDB a Percona. V tomto tutoriálu použijeme MariaDB jako databázový server.

Nainstalujte MariaDB verze 10.2 z oficiálního úložiště MariaDB pro Debian:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] https://mirrors.nxthost.com/mariadb/repo/10.2/debian stretch main'
sudo apt update
sudo apt install -y mariadb-server

Zkontrolujte verzi MariaDB:

mysql --version

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 Vanilla a zapamatujte si přihlašovací údaje:

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

Nahraďte slovo mojeheslo bezpečným heslem dle vašeho výběru. Ukončete službu MariaDB:

mariadb> exit

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

Krok 3 – Nainstalujte klienta acme.sh a získejte certifikát Let's Encrypt (volitelné)

Zabezpečení webu pomocí protokolu HTTPS není nutné, ale je dobrým zvykem zabezpečit provoz na webu. K získání certifikátu TLS od Let's Encrypt použijeme klienta acme.sh. Acme.sh je čistě unixový shell software pro získávání certifikátů TLS 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.0

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 flag na výše uvedené příkazy.

Po spuštění výše uvedených příkazů budou vaše certifikátyklíč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 adresář /etc/letsencrypt.

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 zpět k normálnímu uživateli sudo:

exit

Krok 4 – Instalace NGINX a konfigurace NGINX pro Vanilla Forum

Vanilla Forum může dobře fungovat s mnoha oblíbenými webovými servery. V tomto tutoriálu jsme vybrali Nginx. Pokud upřednostňujete webový server Apache před Nginxem, navštivte prosím https://docs.vanillaforums.com/developer/backend/server-apache/, kde se dozvíte více.

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

sudo apt install -y nginx

Zkontrolujte verzi Nginx:

sudo nginx -v

Nakonfigurujte Nginx pro Vanilla spuštěním:

sudo vim /etc/nginx/sites-available/vanilla.conf

A naplňte soubor s následující konfigurací:

server {

listen 80;
listen 443 ssl http2;
server_name forum.example.com;
root /var/www/vanilla;
index index.php;

# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

location ~* /\.git { deny all; return 403; }
location /build/ { deny all; return 403; }
location /cache/ { deny all; return 403; }
location /cgi-bin/ { deny all; return 403; }
location /uploads/import/ { deny all; return 403; }
location /conf/ { deny all; return 403; }
location /tests/ { deny all; return 403; }
location /vendor/ { deny all; return 403; }

location ~* ^/index\.php(/|$) {
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_NAME /index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root/index.php;
fastcgi_param X_REWRITE 1;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

location ~* \.php(/|$) {
rewrite ^ /index.php$uri last;
}

location / {
try_files $uri $uri/ @vanilla;
}

location @vanilla {
rewrite ^ /index.php$uri last;
}

}

POZNÁMKA :Pro kompletní a produkčně připravenou konfiguraci Nginx pro Vanilla navštivte https://docs.vanillaforums.com/developer/backend/server-nginx/.

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

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

Zkontrolujte konfiguraci Nginx, zda neobsahuje chyby syntaxe:

sudo nginx -t

Znovu načtěte službu Nginx:

sudo systemctl reload nginx.service

Krok 5 – Instalace fóra Vanilla

Vytvořte kořenový adresář dokumentů, kde by se Vanilla Forum mělo nacházet:

sudo mkdir -p /var/www/vanilla

Změňte vlastnictví /var/www/vanilla do adresáře {your_user}. Replace the string {your_user} with the name of the Linux user that you are currently logged in, so when your username is e.g. johndoe, then replace '{your_user}' with 'johndoe'.

sudo chown -R {your_user}:{your_user} /var/www/vanilla

POZNÁMKA :Nahradit {jour_user} s původně vytvořeným uživatelským jménem uživatele bez oprávnění root.

Přejděte do kořenového adresáře dokumentu:

cd /var/www/vanilla

Stáhněte si zip archiv Vanilla Forum:

wget https://open.vanillaforums.com/get/vanilla-core-2.8.1.zip

Extrahujte a odstraňte archiv zip Vanilla:

unzip vanilla-core-2.8.1.zip
rm vanilla-core-2.8.1.zip
mv vanilla-2.8.1/* . && mv vanilla-2.8.1/.* .

Uveďte příslušné vlastnictví:

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

Ve webovém prohlížeči přejděte do složky, do které jste nahráli Vanilla, a postupujte podle pokynů na obrazovce.

Krok 6 – Dokončete instalaci a nastavení fóra Vanilla

Po otevření vašeho webu ve webovém prohlížeči byste měli být přesměrováni na následující stránku:

Vyplňte požadované informace a klikněte na "Pokračovat →" dokončete instalaci a nastavení. Poté by se mělo objevit rozhraní pro správu fóra Vanilla.

  • https://open.vanillaforums.com/
  • https://github.com/vanilla/vanilla

Debian
  1. Jak nainstalovat PHP 8.0 na Debian 11

  2. Jak nainstalovat PHP 8.0 na Debian 10 / Debian 9

  3. Jak nainstalovat PHP 8 na Debian 10

  1. Jak nainstalovat PHP 7.4 na Debian 10

  2. Jak nainstalovat PHP na Debian 11

  3. Jak nainstalovat PHP 7.3 na Debian 10

  1. Jak nainstalovat Tomcat 8.5 na Debian 9

  2. Jak nainstalovat MongoDB na Debian 9

  3. Jak nainstalovat PHP 7.2 na Debian 9