C√≥mo instalar Tiki Wiki con Apache y Let’s encrypt SSL en Debian 10

Instalador Tiki

TikiWiki es un sistema de gesti√≥n de contenido gratuito y de c√≥digo abierto escrito en lenguaje PHP. Es muy potente, tiene todas las funciones y se puede utilizar para crear sitios web, wikis, aplicaciones web, bases de conocimiento, portales, galer√≠as de im√°genes y mucho m√°s. TikiWiki se compone de cuatro componentes principales: herramientas de creaci√≥n y gesti√≥n de contenido, herramientas de comunicaci√≥n y herramientas de configuraci√≥n y administraci√≥n, y herramientas de organizaci√≥n de contenido y ayudas para la navegaci√≥n. Estos le permitir√°n crear y administrar contenido y configurar sitios. TikiWiki viene con un amplio conjunto de funciones, que incluyen foros, blogs, mapas, espacio de trabajo, presentaci√≥n de diapositivas, carrito de compras, seguimiento de errores y problemas, multiling√ľe, galer√≠a de archivos e im√°genes, eventos y muchos m√°s.

En este tutorial, aprenderemos cómo instalar TikiWiki CMS en Debian 10.

Requisitos

  • Un servidor que ejecuta Debian 10.
  • Se configura una contrase√Īa de root para su servidor.

Empezando

Antes de comenzar, deber√° actualizar su sistema con la √ļltima versi√≥n. Puede hacer esto 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 servidor LAMP

TikiWiki se ejecuta en el servidor web Apache/Nginx, est√° escrito en lenguaje PHP y usa MariaDB/MySQL para almacenar sus datos. Por lo tanto, deber√° instalar Apache, MariaDB, PHP y otras extensiones requeridas en su servidor. Primero, instale el servidor Apache y MariaDB con el siguiente comando:

apt-get install apache2 mariadb-server unzip -y

De forma predeterminada, Debian 10 se envía con la versión 7.3 de PHP. Pero TikiWiki no es compatible con PHP 7.3. Por lo tanto, deberá instalar PHP 7.2 y otras extensiones requeridas.

Para agregar el repositorio SURY, primero descargue una clave GPG con el siguiente comando:

wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg

A continuación, agregue el repositorio SURY a APT con el siguiente comando:

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list

Luego, actualice el repositorio e instale PHP7.2 junto con todas las extensiones requeridas con los siguientes comandos:

apt-get update -y
apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-sqlite3 php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-xml php7.2-cli php7.2-zip -y

Después de instalar PHP7.2, abra el archivo php.ini y modifique algunas configuraciones:

nano /etc/php/7.2/apache2/php.ini

Agregue las siguientes líneas:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Asia/Kolkata

Guarde y cierre el archivo cuando haya terminado. Luego, contin√ļe con el siguiente paso.

Crear base de datos para TikiWiki

De forma predeterminada, MariaDB no est√° protegido. Por lo tanto, deber√° asegurarlo primero. Puede asegurarlo con el siguiente script:

mysql_secure_installation

Debe responder todas las preguntas como se muestra a continuación:

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    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 vez que MariaDB esté protegido, inicie sesión en el shell de MariaDB:

mysql -u root -p

Proporcione su contrase√Īa ra√≠z cuando se le solicite y luego cree una base de datos y un usuario para TikiWiki con el siguiente comando:

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

A continuación, otorgue todos los privilegios a la base de datos TikiWiki con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON tikidb.* TO 'tiki'@'localhost' IDENTIFIED BY 'password' 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 lo haya hecho, puede continuar con el siguiente paso.

Descargar Tiki Wiki

Primero, deber√° descargar la √ļltima versi√≥n de TikiWiki del sitio web de Sourceforge. Puedes descargarlo con el siguiente comando:Publicidad

cd /var/www/html/
wget https://sourceforge.net/projects/tikiwiki/files/latest/download -O tikiwiki.zip

Una vez completada la descarga, descomprima el archivo descargado con el siguiente comando:

unzip tikiwiki.zip

A continuación, cambie el nombre del directorio extraído a tikiwiki con el siguiente comando:

mv tiki-20.0 tikiwiki

A continuación, otorgue los permisos adecuados al directorio tikiwiki con el siguiente comando:

chown -R www-data:www-data /var/www/html/tikiwiki/
chmod -R 755 /var/www/html/tikiwiki/

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar Apache para TikiWiki

A continuación, deberá crear un archivo de configuración de host virtual de Apache para TikiWiki. Puedes crearlo con el siguiente comando:

nano /etc/apache2/sites-available/tikiwiki.conf

Agrega el siguiente contenido:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/tikiwiki
     ServerName example.com

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

     ErrorLog ${APACHE_LOG_DIR}/tikiwiki_error.log
     CustomLog ${APACHE_LOG_DIR}/tikiwiki_access.log combined

</VirtualHost>

Guarde y cierre el archivo. Luego, habilite el archivo de configuración del host virtual con el siguiente comando:

a2ensite tikiwiki.conf

Finalmente, habilite el módulo de reescritura de Apache y reinicie el servicio de Apache para volver a cargar los cambios de configuración con el siguiente comando:

a2enmod rewrite
systemctl restart apache2

Acceder a la interfaz web de TikiWiki

Ahora, abra su navegador web y escriba la URL http://example.com. Ser√° redirigido a la p√°gina de bienvenida de TikiWiki:

Instalador Tiki

Seleccione su idioma y haga clic en el Continuar botón. Deberías ver la siguiente página:

Aceptar licencia

Acepte el acuerdo de licencia y haga clic en el Continuar botón. Deberías ver la siguiente página:

Comprobar los requisitos del sistema

Confirme que su sistema cumple con los requisitos mínimos y haga clic en el Continuar botón. Deberías ver la siguiente página:

Establecer conexión de base de datos

Nombre y usuario de la base de datos

Proporcione el nombre de su base de datos, el nombre de usuario y la contrase√Īa de la base de datos. Luego, haga clic en el Continuar bot√≥n. Deber√≠as ver la siguiente p√°gina:

Elegir motor de base de datos

Seleccione el motor de base de datos y haga clic en el Instalar botón para iniciar la instalación. Una vez que la instalación se haya completado con éxito, debería ver la siguiente página:

Instalación Tiki completa

Ahora, haga clic en el Continuar botón, debería ver la siguiente página:

Configurar ajustes generales

Configuración de registro

Proporcione toda la información requerida, como el título Wiki, el correo electrónico del remitente, el inicio de sesión seguro, el correo electrónico del administrador y haga clic en el Continuar botón. Deberías ver la siguiente página:

Notas de instalación

Lea toda la información y haga clic en el Continuar botón. Deberías ver la siguiente página:

Introduce tu Tiki

Ahora, haga clic en el ¬ęEntrar en Tiki y Lock Installer¬ę. Deber√≠a ver la siguiente p√°gina:

Entrar en Tiki y Lock Installer

Ahora, configure su contrase√Īa de administrador y haga clic en el Aplicar bot√≥n. Deber√≠as ver la siguiente p√°gina:

Empezar con Tiki

Asegure TikiWiki con Let’s Encrypt

En esta secci√≥n, explicaremos c√≥mo proteger su sitio TikiWiki con SSL gratuito de Let’s Encrypt.

Primero, deber√° instalar la herramienta Certbot para descargar e instalar SSL gratuito de Let’s Encrypt para su sitio web. 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 a su sistema.

Puede agregar el repositorio de Certbot con el siguiente comando:

apt-get install software-properties-common
add-apt-repository ppa:certbot/certbot

A continuación, actualice el repositorio e instale Certbot con el siguiente comando:

apt-get update -y
apt-get install certbot python-certbot-apache -y

Una vez instalado, cree un archivo conocido.conf para que Let’s Encrypt valide su dominio.

Primero, cree un directorio .bien conocido y otorgue los permisos adecuados:

mkdir -p /var/lib/letsencrypt/.well-known
chgrp www-data /var/lib/letsencrypt
chmod g+s /var/lib/letsencrypt

A continuación, cree un archivo well-known.conf con el siguiente comando:

nano /etc/apache2/conf-available/well-known.conf

Agregue las siguientes líneas:

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
    AllowOverride None
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>

Guarde y cierre el archivo. Luego, habilite los módulos requeridos con el siguiente comando:

a2enmod ssl
a2enmod http2
a2enmod headers
a2enconf well-known

A continuación, reinicie el servicio Apache para aplicar todos los cambios de configuración:

systemctl restart apache2

Ahora, comencemos a instalar el certificado SSL gratuito para su dominio ejemplo.com con el siguiente comando:

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, elija 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

Eso es todo. Ahora, abra su navegador web y acceda a su TikiWiki CMS utilizando la URL https://example.com. Debes que tu sitio TikiWiki esté debidamente protegido con un certificado SSL gratuito.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *