Cómo instalar Automad CMS con Apache y Let’s encrypt en Debian 10
Automad es un sistema de gestión de contenido plano, gratuito y de código abierto escrito en lenguaje PHP. Es rápido, receptivo y ofrece características que pueden no estar disponibles para otros CMS basados en PHP. Automad utiliza un archivo de texto para almacenar su contenido en lugar de una base de datos. Automad proporciona una interfaz basada en web para administrar el sitio, la configuración del sistema, cargar imágenes y escribir una publicación de blog. Se envía con un editor Markdown incorporado y un actualizador con un solo clic para mantener su Automad actualizado.
En este tutorial, le mostraremos cómo instalar Automad CMS en Debian 10 utilizando el servidor web Apache.
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 Apache y PHP
Automad está basado en PHP y se ejecuta en un servidor web. Por lo tanto, deberá instalar Apache, PHP y otros módulos necesarios en su servidor. Puede instalarlos todos ejecutando el siguiente comando:
apt-get install apache2 php libapache2-mod-php php-zip php-curl php-mbstring php-gd php-xml php-xmlrpc php-soap unzip -y
Una vez que todos los paquetes estén instalados, inicie el servidor web Apache y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:
systemctl start apache2 systemctl enable apache2
Una vez que lo haya hecho, puede continuar con el siguiente paso.
Instalar Automad
Primero, deberá descargar la última versión de Automad del repositorio de Bitbucket. Puedes descargarlo con el siguiente comando:
wget https://bitbucket.org/marcantondahmen/automad/get/default.zip
Una vez que se complete la descarga, extraiga el archivo descargado con el siguiente comando:
unzip default.zip
A continuación, mueva el directorio extraído a la raíz web de Apache con el siguiente comando:
mv marcantondahmen-automad-c241e88edc3c /var/www/html/automad
A continuación, cambie la propiedad del directorio automad a www-data y otorgue el permiso adecuado con el siguiente comando:
chown -R www-data:www-data /var/www/html/automad chmod -R 755 /var/www/html/automad
Una vez que lo haya hecho, puede continuar con el siguiente paso.
Configurar Apache para Automad
A continuación, deberá crear un archivo de configuración de host virtual de Apache para el servidor Automad. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/automad.conf
Agrega el siguiente contenido:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/automad ServerName example.com <Directory /var/www/html/automad> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/automadcms_error.log CustomLog ${APACHE_LOG_DIR}/automadcms_access.log combined </VirtualHost>
Guarde y cierre el archivo cuando haya terminado. Luego, verifique Apache en busca de cualquier error de sintaxis con el siguiente comando:
apachectl configtest
Si todo está bien, debería obtener el siguiente resultado:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message Syntax OK
A continuación, habilite el host virtual de Apache y el módulo de reescritura con el siguiente comando:
a2ensite automad a2enmod rewrite
Finalmente, reinicie el servidor web Apache para aplicar los cambios de configuración:
systemctl restart apache2
Una vez que haya terminado, puede continuar con el siguiente paso.
Acceder a Automad
Automad ahora está instalado y configurado, es hora de acceder a la interfaz web de Automad.
Abra su navegador web y escriba la URL http://example.com. Será redirigido al sitio de Automad en la siguiente pantalla:
Para crear una cuenta de Automad, abra su navegador web y visite la URL http://example.com/dashboard. Será redirigido a la siguiente página:
Anuncio publicitario
Ahora, proporcione su nombre de usuario y contraseña deseados, luego haga clic en el Descargar cuentas Expediente botón para descargar el formulario de registro de usuario y copiarlo dentro del directorio de configuración:
mv config.php /var/www/html/automad/config/
A continuación, otorgue el permiso adecuado al archivo config.php con el siguiente comando:
chown -R www-data:www-data /var/www/html/automad/config/config.php
Ahora, abra su navegador web y escriba la URL http://example.com/dashboard. Debería ver la página de inicio de sesión de Automad:
Ahora, proporcione su nombre de usuario y contraseña, y haga clic en el Tronco En botón. Debería ver el panel predeterminado de Automad CMS en la siguiente página:
Asegure Automad con Let’s Encrypt
Primero, deberá instalar la herramienta Certbot para descargar e instalar SSL gratuito de Let’s Encrypt para su sitio web.
Primero, agregue 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, deberá crear un directorio .well-known dentro del directorio letsencrypt. Puedes crearlo con el siguiente comando:
mkdir -p /var/lib/letsencrypt/.well-known
A continuación, deberá otorgar los permisos adecuados para el directorio letsencrypt. Puedes hacerlo con el siguiente comando:
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, instale SSL gratuito de Let’s Encrypt para su dominio ejemplo.com ejecutando 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
Su Automad CMS ahora está protegido con SSL gratuito de Let’s Encrypt. Puede acceder visitando la URL https://example.com.