ElkArte es un software de foro potente, de código abierto y gratuito que le permite crear su propia comunidad de foro en línea. Es una plataforma de foros simple, liviana y moderna basada en PHP y utiliza MySQL/MariaDB para almacenar sus datos. ElkArte viene con una gran cantidad de características que incluyen notificaciones, me gusta para publicaciones, borradores, guardado automático, arrastrar y soltar archivos adjuntos, incrustación de video integrada para youtube, publicación por correo electrónico, medidas antispam mejoradas y muchas más.
En este tutorial, explicaremos cómo instalar ElkArte en el servidor Debian 10.
Requisitos
- Un servidor que ejecuta Debian 10.
- Se ha configurado una contraseña de root para su servidor.
Cómo empezar
Antes de comenzar, deberá actualizar su sistema con la última versión. Puede hacerlo ejecutando el siguiente comando:
apt-get update -y
apt-get upgrade -y
Una vez que su servidor esté actualizado, reinícielo para aplicar los cambios.
Instalar Apache, MariaDB y PHP
Primero, deberá instalar el servidor web Apache, el servidor de base de datos MariaDB, PHP y otras bibliotecas necesarias en su servidor. Puede instalarlos todos ejecutando el siguiente comando:
apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-pgsql php-xml php-cli php-imagick php-bcmath php-gmp php-zip unzip -y
Una vez que todos los paquetes estén instalados, abra el archivo php.ini y modifique algunas configuraciones:
nano /etc/php/7.3/apache2/php.ini
Cambie las siguientes líneas:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = America/Chicago
Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servidor web Apache con el siguiente comando:
systemctl restart apache2
Configurar Base de Datos para ElkArte
A continuación, deberá crear una base de datos y un usuario para ElkArte. Para hacerlo, inicie sesión en el shell de MariaDB con el siguiente comando:
mysql -u root -p
Proporcione su contraseña raíz cuando se le solicite, luego cree una base de datos y un usuario con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE elkartedb;
MariaDB [(none)]> CREATE USER 'elkarte'@'localhost' IDENTIFIED BY 'password';
A continuación, otorga todos los privilegios a ElkArte con el siguiente comando:
MariaDB [(none)]> GRANT ALL ON elkartedb.* TO 'elkarte'@'localhost' WITH GRANT OPTION;
A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Una vez que haya terminado, puede continuar con el siguiente paso.
Descargar ElkArte
Primero, deberá descargar la última versión de ElkArte desde el repositorio de Git. Para descargarlo, ejecute el siguiente comando:
wget https://github.com/elkarte/Elkarte/archive/master.zip
Una vez completada la descarga, descomprima el archivo descargado con el siguiente comando:
unzip master.zip
A continuación, mueva el directorio extraído al directorio raíz web de Apache:
mv Elkarte-master /var/www/html/elkarte
A continuación, cambie la propiedad del directorio elkarte y proporcione los permisos necesarios con el siguiente comando:
chown -R www-data:www-data /var/www/html/elkarte
chmod -R 755 /var/www/html/elkarte
Una vez que haya terminado, puede continuar con el siguiente paso.
Crear host virtual para ElkArte
A continuación, deberá crear un archivo de configuración de host virtual de Apache para servir a ElkArte. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/elkarte.conf
Agregue las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/elkarte ServerName example.com <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>
Guarde y cierre el archivo cuando haya terminado. Luego, habilite el archivo de host virtual y el módulo de reescritura de Apache con el siguiente comando:
a2ensite elkarte.conf
a2enmod rewrite
Finalmente, reinicie el servidor web Apache para aplicar los cambios:
systemctl restart apache2
Acceso a la Interfaz Web de ElkArte
ElkArte ahora está instalado y configurado. Es hora de acceder a la interfaz web de ElkArte.
Abra su navegador web y escriba la URL http://example.com . Será redirigido a la página de bienvenida de ElkArte:
Haga clic en Continuar botón. Debería ver la siguiente página:
Proporcione el nombre de su base de datos, el nombre de usuario de la base de datos, la contraseña y haga clic en Continuar botón. Debería ver la siguiente página:
Proporcione el nombre de su foro, la URL del foro y haga clic en el botón Continuar. Debería ver la siguiente página:
Ahora, haga clic en Continuar botón. Debería ver la página de creación de administrador:
Proporcione su nombre de administrador deseado, contraseña, correo electrónico, contraseña de la base de datos y haga clic en Continuar botón. Una vez finalizada la instalación, debería ver la siguiente página:
Ahora, haga clic en "su foro recién instalado ". Deberías ver el tablero de ElkArte en la siguiente página:
Asegure ElkArte con Let's Encrypt
Primero, deberá instalar Certbot en su servidor. Certbot se usa para obtener un certificado SSL de Let's Encrypt y configurar Apache para usar este certificado.
De forma predeterminada, la última versión de Certbot no está disponible en el repositorio predeterminado de Debian 10. Por lo tanto, deberá agregar el repositorio de Certbot en su servidor.
Primero, agregue el repositorio de Certbot con el siguiente comando:
add-apt-repository ppa:certbot/certbot
Una vez que se agrega el repositorio, actualice el repositorio e instale Certbot con el siguiente comando:
apt-get update -y
apt-get install certbot python-certbot-apache -y
Certbot ahora está instalado y listo para usar.
Ejecute el siguiente comando para obtener el certificado SSL para su dominio:
certbot --apache -d example.com
Primero, deberá proporcionar una dirección de correo electrónico válida y aceptar los términos de servicio como se muestra a continuación:
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 example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf 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
A continuación, elige la opción 2 para descargar e instalar un certificado SSL gratuito para su dominio. Una vez que la instalación se haya completado con éxito. Deberías obtener el siguiente resultado:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/ example.com-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2019-10-22. 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
¡Felicidades! su ElkArte ahora está protegido con un certificado SSL. Ahora puede acceder a él de forma segura visitando la URL https://example.com .