serveur_hebergement:i_hate_money

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
gnu_linux:i_hate_money [2021/12/19 19:09] – créée fateserveur_hebergement:i_hate_money [2023/08/15 20:20] fate
Ligne 3: Ligne 3:
 ===== Introduction ===== ===== Introduction =====
  
-[[https://github.com/spiral-project/ihatemoney|I hate money]] est un logiciel permettant de gérer les budget partagés, comme pour le jour de l'an par exemple. Chaque participant peut rentrer de nouvelles factures et le logiciel calcule automatiquement qui doit combien à qui. Ça fait comme tricount sauf que c'est libre et peut être auto-hébergé+[[https://github.com/spiral-project/ihatemoney|I hate money]] est un logiciel permettant de gérer les budgets partagés, comme pour le jour de l'an par exemple. Chaque participant peut rentrer de nouvelles factures et le logiciel calcule automatiquement qui doit combien à qui. Ça fait comme tricount sauf que c'est libre et peut être auto-hébergé
  
 ===== Installation ===== ===== Installation =====
Ligne 9: Ligne 9:
 L'accès au logiciel se fait via une interface web. Il vous faudra donc un serveur web, qui sera Apache dans mon cas, et un nom de domaine. Je vais installer I hate money sur mon Raspberry (Raspbian 11). L'accès au logiciel se fait via une interface web. Il vous faudra donc un serveur web, qui sera Apache dans mon cas, et un nom de domaine. Je vais installer I hate money sur mon Raspberry (Raspbian 11).
  
-Commençons pas installer les pré-requis +Commençons par installer les pré-requis 
-<code bash>sudo aptitude install python3-dev libssl-dev libapache2-mod-wsgi-py3</code>+<code bash>sudo aptitude install python3-dev libssl-dev libapache2-mod-wsgi-py3 python3-venv</code>
  
 Créez un environnement virtuel Créez un environnement virtuel
Ligne 31: Ligne 31:
 ===== Configuration ===== ===== Configuration =====
  
-Créez les répertoire de I hate money+Créez les répertoires de I hate money
 <code bash>sudo mkdir /etc/ihatemoney /var/lib/ihatemoney</code> <code bash>sudo mkdir /etc/ihatemoney /var/lib/ihatemoney</code>
  
 Générez le fichier de configuration Générez le fichier de configuration
-<code bash>sudo ihatemoney generate-config ihatemoney.cfg > /etc/ihatemoney/ihatemoney.cfg</code>+<code bash>ihatemoney generate-config ihatemoney.cfg > ihatemoney.cfg</code> 
 + 
 +Copiez le fichier dans /etc/ihatemoney 
 +<code bash>sudo cp ihatemoney.cfg /etc/ihatemoney/</code>
  
 Mettez les droits adéquats Mettez les droits adéquats
 <code bash>sudo chmod 740 /etc/ihatemoney/ihatemoney.cfg</code> <code bash>sudo chmod 740 /etc/ihatemoney/ihatemoney.cfg</code>
-<code bash>chgrp www-data /etc/ihatemoney/ihatemoney.cfg</code> +<code bash>sudo chgrp www-data /etc/ihatemoney/ihatemoney.cfg</code> 
-<code bash>chown www-data /var/lib/ihatemoney</code>+<code bash>sudo chown www-data /var/lib/ihatemoney</code> 
 + 
 +Créez le mot de passe admin :  
 +<code bash>ihatemoney generate_password_hash</code> 
 +Ca va vous générer un hash qu'il faudra mettre dans le fichier de configuration.
  
 Ouvrez le fichier de configuration Ouvrez le fichier de configuration
Ligne 76: Ligne 83:
 # DO NOT enter the password in cleartext. Generate a password hash with # DO NOT enter the password in cleartext. Generate a password hash with
 # "ihatemoney generate_password_hash" instead. # "ihatemoney generate_password_hash" instead.
-ADMIN_PASSWORD = ""+ADMIN_PASSWORD = "hashmotdepasse#Mettez ici le hash généré précédemment.
  
 # If set to True (default value) anyone can create a new project. # If set to True (default value) anyone can create a new project.
Ligne 107: Ligne 114:
 MAIL_PASSWORD = "mot de passe" #à adapter MAIL_PASSWORD = "mot de passe" #à adapter
 </code> </code>
-Pensez à adaptez les lignes où il est indiqué "#à adapter".+Pensez à adapter les lignes où il est indiqué "#à adapter". 
  
 Créez la base de donnée mysql ihatemoney ainsi que l'utilisateur ihatemoney ayant pour mot de passe celui que vous avez indiqué dans le fichier de configuration. Créez la base de donnée mysql ihatemoney ainsi que l'utilisateur ihatemoney ayant pour mot de passe celui que vous avez indiqué dans le fichier de configuration.
  
-Il ne reste plus qu'à créer le vhost Apache+Déplacez le dossier ihatemoney vers /var/www afin que l'utilisateur www-data y ait accès : 
 +<code bash>sudo mv ihatemoney/ /var/www/</code>
  
-===== Vhost Apache =====+Changez le propriétaire : 
 +<code bash>sudo chown -R www-data:www-data /var/www/ihatemoney/</code> 
 + 
 +Il ne reste plus qu'à créer le vhost Apache
  
-I hate money permet de pré-créer le fichier vhost +===== Configuration Apache2 =====
-<code bash>ihatemoney generate-config apache-vhost.conf</code>+
  
-Créez un fichier vhost apache et collez-y le retour de la commande précédente+Créez un fichier de configuration Apache2 :
 <code bash>sudo nano /etc/apache2/sites-available/budget.nomdedomaine.conf</code> <code bash>sudo nano /etc/apache2/sites-available/budget.nomdedomaine.conf</code>
  
-Voici à quoi ressemble mon fichier vhost par exemple+Collez-y le retour de la commande précédente et complétez pour qu'il ressemble à ceci :
 <code apache> <code apache>
 <VirtualHost *:80> <VirtualHost *:80>
  
         ServerName budget.nomdedomaine.fr         ServerName budget.nomdedomaine.fr
-        ServerAdmin fate@nomdedomaine.fr +         
- +        Redirect / https://budget.nomdedomaine.fr/ 
-        <Location /> +        
-                Redirect / https://budget.nomdedomaine.fr/ +
-        </Location> +
 </VirtualHost> </VirtualHost>
- 
  
 <VirtualHost *:443> <VirtualHost *:443>
  
         ServerName budget.nomdedomaine.fr         ServerName budget.nomdedomaine.fr
-        ServerAdmin fate@nomdedomaine.fr 
  
-        WSGIDaemonProcess ihatemoney user=www-data group=www-data threads=5 python-home=/home/pi/ihatemoney +        WSGIDaemonProcess ihatemoney user=www-data group=www-data threads=5 python-home=/var/www/ihatemoney 
-        WSGIScriptAlias / /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney/wsgi.py+        WSGIScriptAlias / /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney/wsgi.py
         WSGIPassAuthorization On         WSGIPassAuthorization On
  
Ligne 148: Ligne 154:
         ErrorLog ${APACHE_LOG_DIR}/budget.error.log         ErrorLog ${APACHE_LOG_DIR}/budget.error.log
  
-        <IfModule mod_ssl.c> +        SSLEngine on 
-                SSLEngine on +        SSLCertificateFile /etc/letsencrypt/live/nomdedomaine.fr/fullchain.pem 
-                SSLCertificateFile /etc/letsencrypt/live/nomdedomaine.fr/fullchain.pem +        SSLCertificateKeyFile /etc/letsencrypt/live/nomdedomaine.fr/privkey.pem
-                SSLCertificateKeyFile /etc/letsencrypt/live/nomdedomaine.fr/privkey.pem +
-        </IfModule>+
  
-        <Directory /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney>+        <Directory /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney>
                 WSGIProcessGroup ihatemoney                 WSGIProcessGroup ihatemoney
                 WSGIApplicationGroup %{GLOBAL}                 WSGIApplicationGroup %{GLOBAL}
Ligne 160: Ligne 164:
         </Directory>         </Directory>
  
-        Alias /static/ /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney/static/       +        Alias /static/ /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney/static/       
                  
 </VirtualHost> </VirtualHost>
- 
-# modern configuration, tweak to your needs 
-SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1 
-SSLCipherSuite          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 
-SSLHonorCipherOrder     on 
-SSLCompression          off 
-SSLSessionTickets       off 
- 
-# OCSP Stapling, only in httpd 2.3.3 and later 
-SSLUseStapling          on 
-SSLStaplingResponderTimeout 5 
-SSLStaplingReturnResponderErrors off 
-SSLStaplingCache        shmcb:/var/run/ocsp(128000) 
  
 </code> </code>
Ligne 185: Ligne 176:
 <code bash>sudo systemctl restart apache2</code> <code bash>sudo systemctl restart apache2</code>
  
-I hate money est maintenant accessible depuis l'adresse configuré dans le vhost Apache.+I hate money est maintenant accessible depuis l'adresse configuré dans le vhost Apache. Si vous cliquez sur la roue crantée en bas à droite, après avoir rentré le mot de passe admin vous aurez accès à la zone d'administration.
  
  
  
  • serveur_hebergement/i_hate_money.txt
  • Dernière modification : 2023/08/15 20:42
  • de fate