Comment installer Selfoss RSS Reader sur un VPS FBS FreeBSD 11

Selfoss RSS Reader est un lecteur Web gratuit et open source auto-hébergé, polyvalent, diffusé en direct, mashup, lecteur de flux d'actualités (RSS / Atom) et agrégateur universel. Selfoss RSS Reader comprend l'importation OPML, une API JSON reposante et son système de plug-in ouvert vous permet d'étendre facilement la fonctionnalité par défaut en écrivant vos propres connecteurs de données personnalisés. Vous pouvez utiliser Selfoss pour diffuser en direct et collecter tous vos messages, tweets, podcasts et flux en un seul endroit central auquel vous pouvez facilement accéder depuis n'importe quel ordinateur de bureau ou appareil mobile.

Dans ce tutoriel, nous allons installer Selfoss RSS Reader 2.17 sur un VPS FBS FreeBSD 11 en utilisant le serveur Web Apache, PHP 7.1 et une base de données MariaDB.

Conditions préalables

  • Une instance de serveur Vultr FreeBSD 11 propre avec accès SSH

Étape 1: ajouter un utilisateur Sudo

Nous allons commencer par ajouter un nouvel sudoutilisateur.

Tout d'abord, connectez-vous à votre serveur en tant que root:

ssh root@YOUR_VULTR_IP_ADDRESS

La sudocommande n'est pas installée par défaut dans l'instance de serveur Vultr FreeBSD 11, nous allons donc d'abord installer sudo:

pkg install sudo

Ajoutez maintenant un nouvel utilisateur appelé user1(ou votre nom d'utilisateur préféré):

adduser user1

La addusercommande vous demandera de nombreux détails pour le compte d'utilisateur, il vous suffit donc de sélectionner les paramètres par défaut pour la plupart d'entre eux lorsque cela est logique de le faire. Lorsque vous êtes invité à le faire Invite user1 into any other groups?, vous devez entrer wheelpour ajouter user1au wheelgroupe.

Maintenant, vérifiez le /etc/sudoersfichier pour vous assurer que le sudoersgroupe est activé:

visudo

Recherchez une section comme celle-ci:

# %wheel        ALL=(ALL)       ALL

Cette ligne nous indique que les utilisateurs membres du wheelgroupe peuvent utiliser la sudocommande pour obtenir des rootprivilèges. Il sera commenté par défaut, vous devrez donc le décommenter, puis enregistrer et quitter le fichier.

Nous pouvons vérifier l' user1appartenance au groupe avec la groupscommande:

groups user1

Si user1n'est pas membre du wheelgroupe, vous pouvez utiliser cette commande pour mettre à jour l' user1appartenance au groupe:

pw group mod wheel -m user1 

Utilisez maintenant la sucommande pour basculer vers le nouveau user1compte utilisateur sudo :

su - user1

L'invite de commande sera mise à jour pour indiquer que vous êtes maintenant connecté au user1compte. Vous pouvez le vérifier avec la whoamicommande:

whoami

Redémarrez maintenant le sshdservice pour vous connecter via sshle nouveau compte utilisateur sudo non root que vous venez de créer:

sudo /etc/rc.d/sshd restart

Quittez le user1compte:

exit

Quittez le rootcompte (qui déconnectera votre sshsession):

exit

Vous pouvez maintenant sshaccéder à l'instance de serveur à partir de votre hôte local en utilisant le nouveau user1compte utilisateur sudo non root :

ssh user1@YOUR_VULTR_IP_ADDRESS

Si vous souhaitez exécuter sudo sans avoir à taper un mot de passe à chaque fois, ouvrez à /etc/sudoersnouveau le fichier en utilisant visudo:

sudo visudo

Modifiez la section du wheelgroupe pour qu'elle ressemble à ceci:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Remarque: la désactivation de l'exigence de mot de passe pour l'utilisateur sudo n'est pas une pratique recommandée, mais elle est incluse ici car elle peut rendre la configuration du serveur beaucoup plus pratique et moins frustrante, en particulier pendant les sessions d'administration de systèmes plus longues. Si vous êtes préoccupé par les implications de sécurité, vous pouvez toujours rétablir la modification de configuration à l'original après avoir terminé vos tâches d'administration.

Chaque fois que vous souhaitez vous connecter au rootcompte d'utilisateur à partir du sudocompte d'utilisateur, vous pouvez utiliser l'une des commandes suivantes:

sudo -i
sudo su -

Vous pouvez quitter le rootcompte et revenir à votre sudocompte utilisateur à tout moment:

exit

Étape 2: Mettre à jour le système FreeBSD 11

Avant d'installer des packages sur l'instance du serveur FreeBSD, nous mettrons d'abord à jour le système.

Assurez-vous que vous êtes connecté au serveur à l'aide d'un utilisateur sudo non root et exécutez les commandes suivantes:

sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

Étape 3: installer Apache Web Server

Installez le serveur Web Apache:

sudo pkg install apache24

Entrez ylorsque vous y êtes invité.

Utilisez maintenant la sysrccommande pour permettre au service Apache de s'exécuter automatiquement au démarrage:

sudo sysrc apache24_enable=yes

La sysrccommande met à jour le /etc/rc.conffichier de configuration, donc si vous voulez vérifier manuellement la mise à jour de la configuration, vous pouvez simplement ouvrir le /etc/rc.conffichier avec votre éditeur de terminal préféré:

vi /etc/rc.conf

Démarrez maintenant le service Apache:

sudo service apache24 start

Vous pouvez rapidement vérifier que Apache fonctionne en visitant l'adresse IP ou le domaine de l'instance de serveur dans votre navigateur:

http://YOUR_VULTR_IP_ADDRESS/

Vous verrez la page par défaut de FreeBSD Apache affichant le texte:

It works!

Vérifiez votre fichier de configuration par défaut Apache pour vous assurer que la DocumentRootdirective pointe vers le bon répertoire:

sudo vi /usr/local/etc/apache24/httpd.conf

L' DocumentRootoption de configuration ressemblera à ceci:

DocumentRoot "/usr/local/www/apache24/data"

Nous devons maintenant activer le mod_rewritemodule Apache. Pour ce faire, recherchez le terme dans le fichier de configuration Apache par défaut mod_rewrite.

Par défaut, le mod_rewritemodule Apache sera commenté (ce qui signifie qu'il est désactivé). La ligne de configuration sur une instance propre de Vultr FreeBSD 11 ressemblera à ceci:

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Retirez simplement le symbole de hachage pour décommenter la ligne et charger le module. Bien entendu, cela s'applique également à tous les autres modules Apache requis:

LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Nous devons également activer les modules mod_authz_codeet mod_headers, alors assurez-vous qu'ils ne sont pas non plus commentés:

LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule headers_module libexec/apache24/mod_headers.so

Nous devons maintenant modifier la Directorydirective Apache dans le même fichier de configuration afin que mod_rewritecela fonctionne correctement avec Selfoss RSS Reader.

Recherchez la section du fichier de configuration qui commence par <Directory "/usr/local/www/apache24/data">et passez AllowOverride noneà AllowOverride All. Le résultat final (avec tous les commentaires supprimés) ressemblera à ceci:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Maintenant, enregistrez et quittez le fichier de configuration Apache.

Nous redémarrerons Apache à la fin de ce tutoriel, mais redémarrer régulièrement Apache pendant l'installation et la configuration est certainement une bonne habitude, alors faisons-le maintenant:

sudo service apache24 restart

Étape 4: installez PHP 7.1

Nous pouvons maintenant installer PHP 7.1 avec tous les modules PHP nécessaires requis par Selfoss RSS Reader:

sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar

FreeBSD 11 nous donne la possibilité d'utiliser un développement php.iniou une production php.ini. Puisque nous allons installer Selfoss sur un serveur Web public, nous utiliserons la version de production. Tout d'abord, sauvegardez php.ini-production:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

Créez ensuite un lien logiciel php.ini-productionvers php.ini:

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Nous devons configurer Apache pour utiliser réellement PHP, alors créons un nouveau fichier appelé php.confdans le Includesrépertoire Apache :

sudo vi /usr/local/etc/apache24/Includes/php.conf

Saisissez le texte suivant dans le fichier nouvellement créé:

<IfModule dir_module>
    DirectoryIndex index.php index.html
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

Enregistrez et quittez le fichier.

Redémarrons maintenant Apache pour qu'il puisse recharger les modifications de configuration:

sudo service apache24 restart

Étape 5: installer le serveur MariaDB (MySQL)

Par défaut, FreeBSD 11 utilise le serveur de base de données MariaDB, qui est un remplacement amélioré, entièrement open source, développé par la communauté, pour le serveur MySQL.

Installez la dernière version du serveur de base de données MariaDB:

sudo pkg install mariadb102-server mariadb102-client

Démarrez et activez le serveur MariaDB pour qu'il s'exécute automatiquement au démarrage:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

Sécurisez l'installation de votre serveur MariaDB:

sudo mysql_secure_installation

Lorsque vous êtes invité à créer un utilisateur MariaDB / MySQL root, sélectionnez "Y" (pour oui), puis entrez un rootmot de passe sécurisé . Répondez simplement "Y" à toutes les autres questions oui / non car les suggestions par défaut sont les options les plus sûres.

Étape 6: créer une base de données pour Selfoss RSS Reader

Connectez-vous au shell MariaDB en tant rootqu'utilisateur MariaDB en exécutant la commande suivante:

sudo mysql -u root -p

Pour accéder à l'invite de commande MariaDB, entrez simplement le rootmot de passe MariaDB lorsque vous y êtes invité.

Exécutez les requêtes suivantes pour créer une base de données MariaDB et un utilisateur de base de données pour Selfoss RSS Reader:

CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Vous pouvez remplacer le nom selfoss_dbet le nom selfoss_userd' utilisateur de la base de données par quelque chose de plus à votre goût, si vous préférez. Assurez-vous également de remplacer "UltraSecurePassword" par un mot de passe réellement sécurisé.

Étape 7: Installer les fichiers Selfoss RSS Reader

Remplacez votre répertoire de travail actuel par le répertoire Web par défaut:

cd /usr/local/www/apache24/data

Votre répertoire de travail sera désormais: /usr/local/www/apache24/data. Vous pouvez vérifier cela avec la commande pwd(imprimer le répertoire de travail):

pwd

Maintenant, utilisez wgetpour télécharger le package d'installation de Selfoss RSS Reader:

sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip

Remarque: vous devez absolument rechercher la version la plus récente en visitant la page de téléchargement de Selfoss RSS Reader .

Répertoriez le répertoire actuel pour vérifier que vous avez correctement téléchargé le fichier:

ls -la

Supprimer index.html:

sudo rm index.html

Décompressez maintenant l'archive zip:

sudo unzip selfoss-2.17.zip

Déplacez tous les fichiers d'installation dans le répertoire racine Web:

sudo mv -v selfoss-2.17/* selfoss-2.17/.* /usr/local/www/apache24/data 2>/dev/null

Modifiez la propriété des fichiers Web pour éviter tout problème d'autorisation:

sudo chown -R www:www * ./

Redémarrez Apache à nouveau:

sudo service apache24 restart

Étape 8: installer et exécuter Composer

Selfoss RSS Reader nous oblige à utiliser composerpour télécharger certains plugins alors installons-le composer. Malheureusement, la version de la version binaire précompilée de composer dans les référentiels de packages FreeBSD n'est pas compatible avec PHP 7.1. Donc, au lieu d'installer composeravec la pkgcommande, nous allons plutôt le compiler à partir des sources.

Tout d'abord, configurons le système FreeBSD 11 pour compiler le logiciel PHP en utilisant PHP version 7.1 au lieu de la version par défaut 5.6.

Créez un nouveau fichier dans le /etc/répertoire appelé make.conf:

sudo vi /etc/make.conf

Saisissez le texte suivant dans le fichier:

DEFAULT_VERSIONS+= php=7.1

Maintenant, enregistrez et fermez le fichier.

Ensuite, nous devons télécharger la collection de ports FreeBSD à l'aide de la portsnapcommande:

sudo portsnap fetch extract update

Une fois la portsnapcommande terminée, accédez au php-composerrépertoire du code source:

cd /usr/ports/devel/php-composer/

Lancez maintenant la php-composercompilation et l'installation à l'aide de la makecommande:

sudo make install clean BATCH=yes

Une fois la compilation terminée, accédez au répertoire webroot:

cd /usr/local/www/apache24/data

Exécutez composer à l'aide de l' wwwutilisateur:

sudo -u www composer install

Vous verrez des messages d'avertissement indiquant que vous composerne pouvez pas écrire dans le cache, mais ne vous inquiétez pas trop à ce sujet car tout s'installera toujours très bien.

Nous sommes maintenant prêts à passer à la dernière étape.

Étape 9: terminer l'installation de Selfoss RSS Reader

  1. Nous devons d'abord mettre à jour le fichier de configuration Selfoss RSS Reader config.iniavec les paramètres de base de données corrects, assurez-vous donc que vous êtes toujours dans le répertoire webroot et copiez-le defaults.inidans config.ini:

    sudo cp -iv defaults.ini config.ini
    
  2. Ensuite, ouvrez le config.inifichier de configuration et ajoutez les valeurs de base de données suivantes:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=selfoss_db
    db_username=selfoss_user
    db_password=UltraSecurePassword
    db_port=3306
    
  3. Nous devons maintenant ajouter un hachage de mot de passe à config.ini, mais nous devons d'abord le générer, alors visitez l'URL suivante dans votre navigateur:

    http://YOUR_VULTR_IP_ADDRESS/password
    

    Saisissez ensuite le mot de passe souhaité dans le Passwordchamp et cliquez sur Generate.

    Copiez simplement la valeur de hachage résultante dans l'option de mot de passe dans le config.inifichier pour que la section de mot de passe ressemble maintenant à ceci:

    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Remarque: Le hachage de votre mot de passe sera évidemment différent du hachage montré ci-dessus et vous êtes libre de choisir un nom d'utilisateur différent.

  4. Supprimez toutes les autres options non modifiées du config.inifichier afin que votre fichier de configuration complet ressemble à ceci:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=db1
    db_username=u1
    db_password=usecpass1
    db_port=3306
    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Remarque: Si vous souhaitez modifier l'une des defaults.inioptions, vous pouvez simplement les ajouter à la liste des options ci-dessus.

    Une fois la modification du fichier de configuration terminée, vous pouvez enregistrer et quitter le fichier.

  5. Vous pouvez maintenant vous connecter à Selfoss RSS Reader en visitant la page d'accueil et en entrant votre nom d'utilisateur et votre mot de passe:

     http://YOUR_VULTR_IP_ADDRESS/
    
  6. Si vous voulez que le lecteur mette à jour automatiquement vos flux (et vous le faites presque certainement), vous devrez modifier votre crontab:

    sudo crontab -e
    

    Ajoutez la ligne suivante pour actualiser vos flux toutes les heures:

    0 * * * * www cd /usr/local/www/apache24/data && php cliupdate.php
    

Si vous n'avez pas encore configuré vos paramètres DNS Vultr, vous pouvez le faire à l'aide du panneau de configuration DNS Vultr.

Il est également conseillé de configurer votre site pour utiliser SSL car la plupart des navigateurs modernes avertissent lorsque les sites n'ont pas activé SSL et que les certificats SSL sont désormais disponibles gratuitement.

Dans tous les cas, vous êtes maintenant libre de commencer à ajouter vos flux et à personnaliser davantage votre lecteur, si vous le souhaitez.



Leave a Comment

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1

Limpact de lintelligence artificielle dans les soins de santé 2021

Limpact de lintelligence artificielle dans les soins de santé 2021

L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.