GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Wallabag en Ubuntu 18.04 LTS

Wallabag es un tipo de servicio de lectura posterior. Le permite guardar páginas web para que pueda leerlas más tarde a su propio ritmo. Hay muchos servicios que le permiten hacerlo, como Pocket, Instapaper, etc., pero es beneficioso tener un servicio instalado en un servidor de su propiedad. Por un lado, no cerrará y eliminará los enlaces con él. Y puedes mantener la privacidad de tus datos de navegación.

Este tutorial cubrirá cómo instalar y configurar Wallabag en un servidor que se ejecuta en Ubuntu 18.04 y superior. También cubrirá cómo configurar Nginx, MariaDB, Git, Postfix, Composer y PHP, que Wallabag requiere para ejecutarse.

Requisitos

Necesitará lo siguiente antes de continuar con nuestro tutorial.

  • Un servidor basado en Ubuntu 18.04 que tiene un usuario no root con privilegios sudo.

  • También necesitará la herramienta Crear. Para instalarlo, solo use el siguiente comando

    $ sudo apt install make
    

Instalar git

El primer paso es instalar Git, que usaremos más adelante para copiar los archivos de instalación de wallabag desde su repositorio de git. Git viene instalado generalmente en estos días en la mayoría de los servidores web. Si no es así, proceda con los siguientes comandos.

$ sudo apt install git
$ git config --global user.name "Your name"
$ git config --global user.email "[email protected]"

Instalar Nginx

$ sudo apt install nginx 

Si está utilizando el firewall de Ubuntu, agregue las siguientes reglas a su lista.

$ sudo ufw allow "Nginx HTTP" 

Compruebe también el estado.

$ sudo ufw status 

Deberías ver algo como esto

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx HTTP                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx HTTP (v6)            ALLOW       Anywhere (v6)

Intente acceder a la dirección IP de su servidor en el navegador. Debería ver la siguiente página predeterminada de Nginx que confirma que Nginx se instaló correctamente.

Instalar MariaDB

MariaDB es un reemplazo directo de MySQL, lo que significa que los comandos para ejecutar y operar MariaDB son los mismos que para MySQL. Para instalar MariaDB emita los siguientes comandos

$ sudo apt install mariadb-server 

Ejecute el siguiente comando para realizar la configuración predeterminada, como proporcionar una contraseña de root, eliminar usuarios anónimos, prohibir el inicio de sesión de root de forma remota y descartar tablas de prueba. Presiona sí para todo y configura una contraseña de root.

$ sudo mysql_secure_installation 

Hay una advertencia con la configuración de la contraseña de root. MariaDB por defecto permite a los usuarios raíz del sistema iniciar sesión en MariaDB sin una contraseña. Pero si va a utilizar una aplicación de terceros para acceder a través de la raíz, una contraseña es imprescindible, de lo contrario, las aplicaciones como PHPMyAdmin fallarán. Para ello, debe deshabilitar la autenticación basada en complementos, que es la opción predeterminada en MariaDB.

Para deshabilitar la autenticación del complemento y restaurar la contraseña raíz, ingrese primero el indicador de MySQL usando el siguiente comando.

$ sudo mysql -u root 

Ahora ingrese los siguientes comandos para deshabilitar la autenticación del complemento.

use mysql;
update user set plugin='' where User='root';
flush privileges;
exit

Después de esto, reinicie su servicio MariaDB.

$ sudo systemctl restart mariadb.service 

Eso es todo. La próxima vez que desee iniciar sesión en MySQL, use el siguiente comando

$ sudo mysql -u root -p 

Y se le pedirá su contraseña de root que había establecido inicialmente.

Configurar MariaDB para Wallabag

Ahora necesitamos configurar una base de datos para usar con la aplicación wallabag. Para hacer eso, inicie sesión en el indicador de MySQL. Asumiremos que está utilizando el método de autenticación predeterminado de MariaDB (es decir, sin usar la contraseña de root) para el resto del tutorial.

$ sudo mysql -u root 

Una vez que se le solicite, ingrese los siguientes comandos que configurarán una base de datos llamada wallabag y un usuario de base de datos llamado wallabaguser y le otorgarán acceso a la base de datos.

create database wallabag;
create user [email protected];
set password for [email protected]= password("yourpassword");
grant all privileges on wallabag.* to [email protected] identified by "yourpassword";
flush privileges;
exit

Instalar PHP y compositor

Ahora que nuestro servidor está funcionando, es hora de instalar PHP y Composer. Como estamos usando Nginx, necesitamos instalar el paquete PHP-FPM. Junto con él, necesitaremos varias otras extensiones PHP como mbstring, mysql, gd, bc-math, curl, zip y xml.

$ sudo apt install php-fpm php-mysql php-bcmath php-xml php-zip php-curl php-mbstring php-gd php-tidy php-gettext php-tokenizer
$ sudo apt install composer

Eso es todo por ahora. Llegaremos a la parte de configuración de PHP y Composer más adelante. Pasemos al siguiente paso.

Configurar Nginx

Es hora de configurar nuestra instalación de Nginx antes de continuar con la instalación real. Suponiendo que el nombre de dominio que está utilizando para wallabag es example.com, cree un directorio donde alojará su instalación. Wallabag se instalará en el directorio html.

$ sudo mkdir -p /var/www/example.com/html 

A continuación, asigne la propiedad del directorio a los datos www que utiliza Nginx.

$ sudo chown -R www-data:www-data /var/www/example.com/html 

Asegúrese de que se hayan establecido los permisos correctos.

$ sudo chmod -R 755 /var/www/example.com 

A continuación, cree un host virtual para el sitio.

sudo nano /etc/nginx/sites-available/example.com 

Pegue la siguiente configuración que funciona con wallabag.

server {
    server_name example.com www.example.com;
    root /var/www/example/html/web;

    location / {
        try_files $uri /app.php$is_args$args;
    }
    location ~ ^/app\.php(/|$) {
        # replace php7.2-fpm with whichever php 7.x version you are using
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME  $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;
        internal;
    }

    location ~ \.php$ {
        return 404;
    }

    error_log /var/log/nginx/wallabag_error.log;
    access_log /var/log/nginx/wallabag_access.log;
}

Guarde el archivo presionando Ctrl + X e ingresando Y Cuando se le solicite. A continuación, debemos habilitar esta configuración. Para ello, cree un enlace desde allí al directorio de sitios habilitados.

$ sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ 

Es posible que enfrente un problema de depósito de memoria que surge debido a nombres de servidores adicionales. Para solucionarlo, abra el archivo nginx.conf

$ sudo nano /etc/nginx/nginx.conf 

Encuentre el server_names_hash_bucket_size directiva y elimine el # símbolo para descomentar la línea:

server_names_hash_bucket_size 64; 

Guarda el archivo. A continuación, asegúrese de que no haya errores en las configuraciones de Nginx.

$ sudo nginx -t 

Si no hay ningún problema, reinicie Nginx para habilitar los nuevos cambios.

$ sudo systemctl restart nginx 

Instalar Wallabag

Primero, clone wallabag desde su repositorio de GitHub. Dado que otorgamos los permisos de la carpeta html al usuario www-data, necesitaremos cambiar a ella para ejecutar la instalación.

$ sudo -u www-data /bin/bash
$ cd /var/www/example.com
git clone https://github.com/wallabag/wallabag.git html

Esto copiará los archivos de instalación de wallabag en el directorio html. Instale Wallabag usando el comando make.

$ cd html
$ make install

Se le harán varias preguntas durante la instalación.

Si desea utilizar http , ingresa http://example.com en su lugar, cuando se le solicite el nombre de dominio y omita la parte HTTPS del tutorial.

database_driver (pdo_mysql): pdo_mysql
database_driver_class (null): Press Enter
database_host (127.0.0.1): 127.0.0.1
database_port (null): 3306
database_name (wallabag): wallabag
database_user (root): wallabaguser
database_password (null): wallabagpassword
database_path (null): Press Enter
database_table_prefix (wallabag_): Prefix of your choice or Press Enter for the default.
database_socket (null): Press Enter
database_charset (utf8mb4): Press Enter
domain_name ('https://your-wallabag-url-instance.com'): http://example.com 

También se le solicitarán los detalles de SMTP para recibir correos relacionados con el olvido de la contraseña o la autenticación de dos factores. Si desea utilizar un servicio SMTP de terceros como Mailgun o Sendgrid, puede completar los valores restantes o simplemente presionar Intro a través de ellos. Introduzca no contra el parámetro fosuser_registration si no desea que nadie se registre en su sitio. Además, cambia el valor del secret parámetro. Si tiene muchos datos para importar, instale RabbitMQ o Redis e ingrese los valores cuando se le solicite.

Cuando se le pregunte si desea restablecer su base de datos existente, presione Entrar para utilizar la opción predeterminada (no). También se le pedirá que cree un usuario administrador.

Vuelva a su inicio de sesión de usuario predeterminado de Ubuntu cuando haya terminado.

$ exit

Configurar SMTP

Si desea configurar un servidor SMTP básico y no utilizar servicios SMTP de terceros, instale Mailutils.

$ sudo apt install mailutils

Durante la instalación, le pedirá que seleccione un tipo de configuración para Postfix. Seleccione Internet Site y proceder. Introduzca example.com cuando se le solicite el campo de nombre de correo del sistema. Eso es todo.

Configurar HTTPS

Usaremos Let's Encrypt para configurar HTTPS para nuestra instalación de wallabag. Agregue el siguiente repositorio para la herramienta Certbot.

$ sudo add-apt-repository ppa:certbot/certbot

Instale el paquete Certbot Nginx desde el repositorio.

$ sudo apt install python-certbot-nginx

Obtenga el certificado para su dominio ejemplo.com.

$ sudo certbot --nginx -d example.com -d www.example.com

Si es la primera vez que usa la herramienta Certbot, se le pedirá que proporcione un correo electrónico y que acepte los términos del servicio. También se le preguntará si desea que su correo electrónico se comparta con EFF (Electronic Frontier Foundation). Elija N si no desea que EFF le envíe un correo electrónico con sus noticias y campañas.

Si eso tiene éxito, Certbot le preguntará cómo desea configurar sus ajustes de HTTPS.

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):

Elige 2 ya que queremos que todas las solicitudes a su dominio sean redirigidas a https.

Eso es todo. Su dominio HTTPS está activo. Certbot renovará automáticamente su dominio cada 90 días. Para probar el proceso de renovación, haz un ensayo.

$ sudo certbot renew --dry-run

Si no ve ningún error, significa que todo está perfecto.

Configurar Wallabag

Ahora que hemos configurado wallabag, abra su dominio wallabag. Debería ver la siguiente pantalla.

Ingrese las credenciales que eligió durante el make proceso anterior. Después de iniciar sesión, debería ver la siguiente pantalla.

Debe habilitar la autenticación de dos factores. Para hacerlo, haga clic en el botón Configurar a la izquierda y seleccione USER INFORMATION pestaña de la siguiente pantalla. Habilite la marca de verificación Two-factor authentication para habilitarlo.

Puede importar sus datos de Pockets, Instapaper, Pinboard y marcadores de navegadores basados ​​en Firefox y Chrome.

Wallabag le ofrece una multitud de aplicaciones para cada navegador, dispositivo móvil o lector de libros electrónicos con las que puede agregar enlaces. Y si nada más te apetece, puedes incluso usar un Bookmarklet, cuyos detalles puedes acceder desde el How to sección en su configuración.

Actualizar Wallabag

Para actualizar Wallabag a la última versión, simplemente emita los siguientes comandos.

$ sudo -u www-data /bin/bash
$ cd /var/www/example.com/html
$ make update

Eso es todo por este tutorial. Ahora puede guardar y leer artículos desde su servidor sin comprometer la privacidad de sus datos.


Ubuntu
  1. Cómo instalar MariaDB en Ubuntu 20.04 LTS

  2. Cómo instalar LiteCart en Ubuntu 16.04 LTS

  3. Cómo instalar WebERP en Ubuntu 16.04 LTS

  4. Cómo instalar Dotclear en Ubuntu 18.04 LTS

  5. Cómo instalar WebERP en Ubuntu 20.04 LTS

Cómo instalar Joomla en Ubuntu 20.04 LTS

Cómo instalar Magento en Ubuntu 20.04 LTS

Cómo instalar osTicket en Ubuntu 20.04 LTS

Cómo instalar Piwigo en Ubuntu 20.04 LTS

Cómo instalar SuiteCRM en Ubuntu 20.04 LTS

Cómo instalar Ampache en Ubuntu 20.04 LTS