Ricerca nel sito web

Come installare ElkArte Forum con Apache e consente di crittografare SSL su CentOS 8


Su questa pagina

  1. Prerequisiti
  2. Installa il server LAMP
  3. Configura MariaDB
  4. Scarica ElkArte
  5. Configura Apache per ElkArte
  6. Configura Selinux e Firewall
  7. Accedi a ElkArte
  8. Proteggi Elkarte con Lets Encrypt SSL
  9. Conclusione

ElkArte è un software per forum gratuito e open source basato su Simple Machine Forum. È scritto in PHP e utilizza MariaDB come backend del database. Fornisce tutte le funzionalità necessarie per creare un forum della comunità completo. È semplice, leggero e utilizza temi reattivi adatti a qualsiasi browser, smartphone o tablet moderno.

Caratteristiche

  • Interfaccia semplice e intuitiva
  • Gestore di componenti aggiuntivi personalizzabile e integrato
  • Funzionalità Anti Spam migliorata
  • Trascina e rilascia i file allegati
  • Incorporamento video integrato per youtube, vimeo e dailymotion

In questo tutorial, ti mostreremo come installare ElkArte con Lets Encrypt SSL su CentOS 8.

Prerequisiti

  • Un server che esegue CentOS 8.
  • Un nome di dominio valido indicato con l'IP del tuo server.
  • Il server è configurato con una password di root.

Installa LAMP Server

Innanzitutto, dovrai installare Apache, MariaDB, PHP e altre estensioni nel tuo sistema. Puoi installarli tutti eseguendo il seguente comando:

dnf install httpd mariadb-server php php-common php-json php-curl php-intl php-mbstring php-xmlrpc php-mysqlnd php-gd php-pgsql php-xml php-cli php-bcmath php-gmp php-zip unzip -y

Una volta installati tutti i pacchetti, modifica il file php.ini e apporta le modifiche desiderate:

nano /etc/php.ini

Modificare i seguenti valori:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

Salva e chiudi il file, quindi avvia il servizio Apache e MariaDB e abilitali all'avvio al riavvio del sistema con il seguente comando:

systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb

Una volta terminato, puoi procedere al passaggio successivo.

Configura MariaDB

Per impostazione predefinita, la password root di MariaDB non è impostata. Quindi dovrai impostarlo nel tuo sistema. Puoi farlo eseguendo il seguente script:

mysql_secure_installation

Rispondi a tutte le domande come mostrato di seguito per impostare la password di root:

Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] Y
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

Una volta che MariaDB è protetto, accedi alla shell MariaDB con il seguente comando:

mysql -u root -p

Fornisci la tua password di root quando richiesto, quindi crea un database e un utente con il seguente comando:

MariaDB [(none)]> CREATE DATABASE elkarte;
MariaDB [(none)]> CREATE USER 'elkarte'@'localhost' IDENTIFIED BY 'password';

Successivamente, concedi tutti i privilegi al database ElkArte con il seguente comando:

MariaDB [(none)]> GRANT ALL ON elkarte.* TO 'elkarte'@'localhost' WITH GRANT OPTION;

Successivamente, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Una volta terminato, puoi procedere al passaggio successivo.

Scarica Elk Arte

Innanzitutto, dovrai scaricare l'ultima versione di ElkArte dal repository Git. Puoi scaricarlo con il seguente comando:

wget https://github.com/elkarte/Elkarte/archive/master.zip

Una volta scaricato, decomprimere il file scaricato con il seguente comando:

unzip master.zip

Successivamente, sposta la directory estratta nella directory principale di Apache con il seguente comando:

mv Elkarte-master /var/www/html/elkarte

Successivamente, modifica la proprietà e le autorizzazioni con il seguente comando:

chown -R apache:apache /var/www/html/elkarte
chmod -R 775 /var/www/html/elkarte

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per ElkArte

Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per ElkArte. Puoi crearlo con il seguente comando:

nano /etc/httpd/conf.d/elkarte.conf

Aggiungi le seguenti righe:

<VirtualHost *:80>
     ServerAdmin 
     DocumentRoot /var/www/html/elkarte
     ServerName elk.example.com

     <Directory /var/www/html/elkarte/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog /var/log/httpd/error.log
     CustomLog /var/log/httpd//access.log combined

</VirtualHost>
systemctl restart httpd

A questo punto, il web server Apache è configurato per servire ElkArte. Ora puoi procedere al passaggio successivo.

Configura Selinux e Firewall

Per impostazione predefinita, SELinux è abilitato in CentOS 8. Quindi dovrai configurarlo per il tuo sito Web ElkArte.

Puoi configurare SELinux con il seguente comando:

setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/elkarte

Successivamente, consentire la porta 80 e 443 attraverso il firewall con il seguente comando:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Al termine, puoi procedere al passaggio successivo.

Accedi a ElkArte

Ora apri il tuo browser web e accedi a ElkArte utilizzando l'URL http://elk.example.com. Verrai reindirizzato alla seguente pagina:

Fare clic sul pulsante Continua per avviare l'installazione. Dovresti vedere la seguente pagina:

Fornisci i dettagli del tuo database e fai clic sul pulsante Continua. Dovresti vedere la seguente pagina:

Fornisci il nome del forum, l'URL e fai clic sul pulsante Continua. Dovresti vedere la seguente pagina:

Ora, fai clic sul pulsante Continua per popolare il database. Dovresti vedere la seguente pagina:

Fornisci il nome utente, la password, l'e-mail dell'amministratore e fai clic sul pulsante Continua. Dovresti vedere la seguente pagina:

Fare clic sul pulsante del forum appena installato. Dovresti vedere la seguente pagina:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard di ElkArte nella pagina seguente:

Proteggi Elkarte con Lets Encrypt SSL

A questo punto ElkArte è installato e configurato. Successivamente, si consiglia di proteggere il proprio sito ElkArte con Lets Encrypt SSL. Innanzitutto, dovrai installare il client Certbot sul tuo sistema. Il Certbot è un client Lets Encrypt che può essere utilizzato per scaricare l'SSL dal sito Web Lets Encrypt e configurare il server Web Apache per utilizzare l'SSL scaricato.

Puoi installare Certbot con il seguente comando:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

Ora, esegui il seguente comando per ottenere e installare un certificato SSL per il tuo sito Web ElkArte.

certbot-auto --apache -d elk.example.com

Il comando precedente installerà prima tutte le dipendenze richieste sul tuo server. Una volta installato, ti verrà chiesto di fornire un indirizzo e-mail e di accettare i termini di servizio come mostrato di seguito:

Nota: se ricevi un errore relativo a SSL, riavvia il servizio httpd ed esegui nuovamente il comando precedente.

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 elk.example.com
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/httpd/conf.d/elkarte-le-ssl.conf
Deploying Certificate to VirtualHost /etc/httpd/conf.d/elkarte-le-ssl.conf

Successivamente, scegli se reindirizzare o meno il traffico HTTP su HTTPS, rimuovendo l'accesso HTTP.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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 di installazione. Una volta che l'installazione è stata completata con successo, dovresti ottenere il seguente output:

Redirecting vhost in /etc/httpd/conf.d/elkarte.conf to ssl vhost in /etc/httpd/conf.d/elkarte-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://elk.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=elk.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/elk.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/elk.example.com/privkey.pem
   Your cert will expire on 2020-05-10. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again with the "certonly" option. To non-interactively renew *all*
   of your certificates, run "certbot-auto 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

Ora puoi accedere al tuo ElkArte in modo sicuro utilizzando l'URL https://elk.example.com.

Conclusione

Congratulazioni! hai installato con successo ElkArte con Apache e Lets Encrypt SSL su CentOS 8. Ora puoi iniziare a creare il tuo forum online. Non esitate a chiedermi se avete domande.