GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Wallabag sur Ubuntu 18.04 LTS

Wallabag est un service de lecture ultérieure. Il vous permet d'enregistrer des pages Web afin que vous puissiez les lire plus tard à votre rythme. Il existe de nombreux services qui vous permettent de le faire comme Pocket, Instapaper, etc., mais avoir un service installé sur un serveur que vous possédez est avantageux. D'une part, il ne fera pas faillite et ne supprimera pas les liens avec lui. Et vous pouvez garder vos données de navigation privées.

Ce didacticiel explique comment installer et configurer Wallabag sur un serveur fonctionnant sous Ubuntu 18.04 et versions ultérieures. Il couvrira également la configuration de Nginx, MariaDB, Git, Postfix, Composer et PHP qui sont tous requis par Wallabag pour fonctionner.

Prérequis

Vous auriez besoin des éléments suivants avant de poursuivre notre didacticiel.

  • Un serveur basé sur Ubuntu 18.04 ayant un utilisateur non root avec des privilèges sudo.

  • Vous aurez également besoin de l'outil Créer. Pour l'installer, utilisez simplement la commande suivante

    $ sudo apt install make
    

Installer git

La première étape consiste à installer Git que nous utiliserons plus tard pour copier les fichiers d'installation de wallabag depuis son référentiel git. Git est généralement installé de nos jours sur la plupart des serveurs Web. Si ce n'est pas le cas, passez aux commandes suivantes.

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

Installer Nginx

$ sudo apt install nginx 

Si vous utilisez le pare-feu d'Ubuntu, ajoutez les règles suivantes à sa liste.

$ sudo ufw allow "Nginx HTTP" 

Vérifiez également l'état.

$ sudo ufw status 

Vous devriez voir quelque chose comme ça

Status: active

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

Essayez d'accéder à l'adresse IP de votre serveur dans le navigateur. Vous devriez voir la page Nginx par défaut suivante qui confirme que Nginx a été installé avec succès.

Installer MariaDB

MariaDB est un remplacement direct de MySQL, ce qui signifie que les commandes pour exécuter et faire fonctionner MariaDB sont les mêmes que celles de MySQL. Pour installer MariaDB, lancez les commandes suivantes

$ sudo apt install mariadb-server 

Exécutez la commande suivante pour effectuer la configuration par défaut, par exemple en donnant un mot de passe root, en supprimant les utilisateurs anonymes, en interdisant la connexion root à distance et en supprimant les tables de test. Appuyez sur oui pour tout et configurez un mot de passe root.

$ sudo mysql_secure_installation 

Il y a une mise en garde avec la configuration du mot de passe root. MariaDB permet par défaut aux utilisateurs racine du système de se connecter à MariaDB sans mot de passe. Mais si vous allez utiliser une application tierce pour accéder via root, un mot de passe est indispensable, sinon des applications comme PHPMyAdmin échoueront. Pour cela, vous devez désactiver l'authentification basée sur le plugin qui est l'option par défaut sur MariaDB.

Pour désactiver l'authentification du plug-in et restaurer le mot de passe root, entrez d'abord l'invite MySQL à l'aide de la commande suivante.

$ sudo mysql -u root 

Entrez maintenant les commandes suivantes pour désactiver l'authentification du plugin.

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

Après cela, redémarrez votre service MariaDB.

$ sudo systemctl restart mariadb.service 

C'est ça. La prochaine fois que vous voudrez vous connecter à MySQL, utilisez la commande suivante

$ sudo mysql -u root -p 

Et il vous sera demandé votre mot de passe root que vous aviez défini initialement.

Configurer MariaDB pour Wallabag

Nous devons maintenant configurer une base de données à utiliser pour l'application wallabag. Pour ce faire, connectez-vous à l'invite MySQL. Nous supposerons que vous utilisez la méthode d'authentification par défaut de MariaDB (c'est-à-dire sans utiliser de mot de passe root) pour le reste du didacticiel.

$ sudo mysql -u root 

Une fois à l'invite, entrez les commandes suivantes qui configureront une base de données nommée wallabag et un utilisateur de base de données nommé wallabaguser et lui accorderont l'accès à la base de données.

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

Installer PHP et composer

Maintenant que notre serveur est opérationnel, il est temps d'installer PHP et Composer. Puisque nous utilisons Nginx, nous devons installer le package PHP-FPM. Parallèlement, nous aurons besoin de plusieurs autres extensions PHP telles que mbstring, mysql, gd, bc-math, curl, zip et 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

C'est tout pour le moment. Nous reviendrons plus tard sur la partie configuration de PHP et composer. Passons à l'étape suivante.

Configurer Nginx

Il est temps de configurer notre installation Nginx avant de procéder à l'installation proprement dite. En supposant que le nom de domaine que vous utilisez pour wallabag est example.com, créez un répertoire où vous hébergerez votre installation. Wallabag sera installé dans le répertoire html.

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

Ensuite, attribuez la propriété du répertoire aux données www utilisées par Nginx.

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

Assurez-vous que les autorisations correctes sont définies.

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

Ensuite, créez un hôte virtuel pour le site.

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

Collez la configuration suivante qui fonctionne avec 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;
}

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité. Ensuite, nous devons activer cette configuration. Pour cela, créez un lien de celui-ci vers le répertoire des sites activés.

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

Vous pouvez être confronté à un problème de compartiment de mémoire dû à des noms de serveur supplémentaires. Pour résoudre ce problème, ouvrez le fichier nginx.conf

$ sudo nano /etc/nginx/nginx.conf 

Trouvez le server_names_hash_bucket_size directive et supprimez le # symbole pour décommenter la ligne :

server_names_hash_bucket_size 64; 

Enregistrez le fichier. Ensuite, assurez-vous qu'il n'y a pas d'erreurs dans les configurations Nginx.

$ sudo nginx -t 

S'il n'y a pas de problème, redémarrez Nginx pour activer les nouvelles modifications.

$ sudo systemctl restart nginx 

Installer Wallabag

Tout d'abord, clonez wallabag depuis son référentiel GitHub. Puisque nous avons donné les autorisations du dossier html à l'utilisateur www-data, nous devrons y basculer pour exécuter l'installation.

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

Cela copiera les fichiers d'installation de wallabag dans le répertoire html. Installez Wallabag à l'aide de la commande make.

$ cd html
$ make install

Plusieurs questions vous seront posées lors de l'installation.

Si vous souhaitez utiliser http , saisissez http://example.com à la place lorsqu'on vous demande le nom de domaine et ignorez la partie HTTPS du didacticiel.

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 

Il vous sera également demandé les détails SMTP pour recevoir des e-mails concernant un mot de passe oublié ou une authentification à deux facteurs. Si vous souhaitez utiliser un service SMTP tiers comme Mailgun ou Sendgrid, vous pouvez remplir les valeurs restantes ou appuyer simplement sur Entrée à travers eux. Saisissez no contre le paramètre fosuser_registration si vous ne voulez pas que quelqu'un s'inscrive sur votre site. Changez également la valeur du secret paramètre. Si vous avez des données volumineuses à importer, installez RabbitMQ ou Redis et entrez les valeurs lorsqu'on vous le demande.

Lorsque vous êtes invité à réinitialiser votre base de données existante, appuyez sur Entrée pour utiliser l'option par défaut (non). Il vous sera également demandé de créer un utilisateur administrateur.

Revenez à votre connexion utilisateur Ubuntu par défaut lorsque vous avez terminé.

$ exit

Configurer SMTP

Si vous souhaitez configurer un serveur SMTP de base et ne pas utiliser de services SMTP tiers, installez Mailutils.

$ sudo apt install mailutils

Lors de l'installation, il vous sera demandé de sélectionner un type de configuration pour Postfix. Sélectionnez Internet Site et continuez. Saisissez example.com lorsqu'on lui a demandé le champ Nom de messagerie système. C'est tout.

Configurer HTTPS

Nous utiliserons Let's Encrypt pour configurer HTTPS pour notre installation de wallabag. Ajoutez le référentiel suivant pour l'outil Certbot.

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

Installez le package Certbot Nginx à partir du référentiel.

$ sudo apt install python-certbot-nginx

Obtenez le certificat pour votre domaine example.com.

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

Si c'est la première fois que vous utilisez l'outil Certbot, il vous sera demandé de fournir un e-mail et d'accepter les conditions d'utilisation. Il vous sera également demandé si vous souhaitez que votre e-mail soit partagé avec EFF (Electronic Frontier Foundation). Choisissez N si vous ne souhaitez pas que l'EFF vous envoie un e-mail concernant ses actualités et ses campagnes.

Si cela réussit, Certbot vous demandera comment vous souhaitez configurer vos paramètres 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):

Choisissez 2 car nous souhaitons que toutes les requêtes adressées à votre domaine soient redirigées vers https.

C'est ça. Votre domaine HTTPS est en ligne. Certbot renouvellera automatiquement votre domaine tous les 90 jours. Pour tester le processus de renouvellement, faites un essai.

$ sudo certbot renew --dry-run

Si vous ne voyez aucune erreur, cela signifie que tout est parfait.

Configurer Wallabag

Maintenant que nous avons configuré wallabag, ouvrez votre domaine wallabag. Vous devriez voir l'écran suivant.

Entrez les informations d'identification que vous avez choisies lors du make processus ci-dessus. Après vous être connecté, vous devriez voir l'écran suivant.

Vous devez activer l'authentification à deux facteurs. Pour ce faire, cliquez sur le bouton Config à gauche et sélectionnez le USER INFORMATION onglet à partir de l'écran suivant. Cochez la case Two-factor authentication pour l'activer.

Vous pouvez importer vos données depuis Pockets, Instapaper, Pinboard et les signets des navigateurs Firefox et Chrome.

Wallabag vous fournit une multitude d'applications pour chaque navigateur, mobile ou lecteur d'ebook à l'aide desquelles vous pouvez ajouter des liens. Et si rien d'autre ne vous intéresse, vous pouvez même utiliser un Bookmarklet, dont vous pouvez accéder aux détails depuis le How to section dans vos paramètres.

Mettre à jour Wallabag

Pour mettre à niveau Wallabag vers la dernière version, exécutez simplement les commandes suivantes.

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

C'est tout pour ce tutoriel. Vous pouvez désormais enregistrer et lire des articles depuis votre serveur sans compromettre la confidentialité de vos données.


Ubuntu
  1. Comment installer MariaDB dans Ubuntu 20.04 LTS

  2. Comment installer LiteCart sur Ubuntu 16.04 LTS

  3. Comment installer WebERP sur Ubuntu 16.04 LTS

  4. Comment installer Dotclear sur Ubuntu 18.04 LTS

  5. Comment installer WebERP sur Ubuntu 20.04 LTS

Comment installer Joomla sur Ubuntu 20.04 LTS

Comment installer Magento sur Ubuntu 20.04 LTS

Comment installer osTicket sur Ubuntu 20.04 LTS

Comment installer Piwigo sur Ubuntu 20.04 LTS

Comment installer SuiteCRM sur Ubuntu 20.04 LTS

Comment installer Ampache sur Ubuntu 20.04 LTS