======LaboM Yunohost sur raspberrypi======
**Cette page est obsolète:** Pour l'installation de Yunohost voir [[installation_de_yunohost_sur_raspberry_pi|Yunohost 3.1 ou +]]
===== LaboM =====
Le but est d'installer un ensemble d'applications et de services Internet (via Yunohost) sur une Raspberry Pi équipée d'une carte wifi, et de faire en sorte que ces services soient consultables sans que la raspberry soit connectée au net.
ça permet de constituer un serveur ressources autonome dans lequel on peut retrouver des PADs, un wiki, un owncloud, une piratebox et [[https://yunohost.org/#/apps_fr|toutes les applications proposées via yunohost]]
===== Installation de base =====
Je me suis appuyé sur ce tutoriel avec quelques modifications (merci à son auteur !) http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:yunohost-jessie
Formatage de la carte SD et y copier les fichiers raspbian
Il est nécessaire de :
* formater la carte SD en FAT 32
* identifier la partition, le nom de la carte SD
df
/dev/sdb1 15232464 2188800 13043664 15% /media/b01/GNURADIO
c'est sdb1
sudo umount /dev/sdb1
sudo mkfs.vfat -n 'PBKey' -I /dev/sdb1
* télécharger le fichier zip de la dernière version de raspbian jessie ou jessie lite si vous ne comptez pas utiliser l'interface graphique https://www.raspberrypi.org/downloads/raspbian/
* possible également d'installer raspbian-ua-netinst une version encore plus minimale via https://github.com/debian-pi/raspbian-ua-netinst/releases/tag/v1.0.8.1
==== Raspbian jessie light ====
Installer l'image sur la carte SD as usual : https://www.raspberrypi.org/documentation/installation/installing-images/README.md
Il convient ensuite d'installer l'image sur une carte SD (classe 10) 16 Gbits c'est pas mal, pour installer, une fois identifié le périphérique correspondant à la carte SD avec la commande
mount
chez moi c'est /dev/sdb1, donc ça donne
umount /dev/sdb1
sudo dd bs=4M if=2016-05-27-raspbian-jessie-lite.img of=/dev/sdb
! **ne pas mettre le 1 de sdb1 pour la commande dd**
Dans un autre terminal, pour suivre l'avancée de dd, taper :
sudo pkill -USR1 -n -x dd
ou utiliser dcfdd qui montre la progression
sudo dcfldd statusinterval=10 bs=4M if=/mnt/diskimages/ISOs/Raspberry\ Pi/2015-11-21-raspbian-jessie-lite.img of=/dev/sdb
==== Suite de l'installation pour Raspbian Jessie lite ligne droite ====
Une fois la raspi branchée lancée (ça clignote vert), il faut ensuite trouver la raspi sur le réseau, plusieurs techniques :
sudo ifconfig
ou
hostname -I
donne l'adresse IP de son ordi type 192.168.1.101, on va scanner ce réseau avec nmap
sudo apt-get install nmap
sudo nmap -sn 192.168.1.0/24
Nmap scan report for raspberrypi.local (192.168.1.102)
Host is up (0.0031s latency).
MAC Address: 0C:D2:92:86:01:EB (Raspberry Pi Fondation)
Faire alors
ssh pi@192.168.1.102
si pas trouver, tenter un truc du genre (à adapter en fonction de son domaine)
ssh pi@raspberry.local
ça permet de rentrer en ssh dans la raspberry et de taper des commandes, on commence par
sudo raspi-config
étendre la partition (mais plus besoin avec jessie light car automatique(ne focntionne pas sur clé USB, le faire dans gparted)), adapter les Locales, rebooter, une fois cela fait, rebelote en suivant ces indications https://yunohost.org/#/install_manually_fr :
dpkg-reconfigure locales
dpkg-reconfigure tzdata
Advanced Option : Hostname : changer pi en YunoHost
Le grand ménage des packets
sudo apt-get update
sudo apt-get upgrade
Installez git
sudo apt-get install git
Clonez le dépôt du script d’installation de YunoHost
git clone [[https://github.com/YunoHost/install_script| https://github.com/YunoHost/install_script]] /tmp/install_script
L’utilisateur root doit avoir un mot de passe, si ce n’est pas le cas, créez-en un (sinon le script d’installation échoue) :
sudo passwd root
Lancez le script d’installation en root
su
cd /tmp/install_script && ./install_yunohost
Répondre oui à l'écrasement des fichiers de config de metronome et +, si tout va bien :
{{media_13:yunohostpostinstallno.png?660|fig:Yunohostpostinstallno.png}}\\
Répondre NON au lancement de la post install, regarder le log d'installation pour voir si tout va bien
cat /var/log/yunohost-installation.log
sudo apt-get -f install
sudo apt-get autoclean && apt-get autoremove
sudo reboot
J'ai fait 2 installations successives pour être sur ...
yunohost tools postinstall
Il faudra renseigner votre Nom De Domaine et définir un mot de passe d'administration, si vous n'avez pas de domaine ou sous-domaine, choisir un domaine du type mondomaine.nohost.me
L'adresse d'administration de votre YunoHost est https://monserveur.org/yunohost/admin/ et l'adresse du portail de votre YunoHost est https://monserveur.org/.
Si l'erreur "utilisateur admin inconnu" s'affiche au début de la postinstallation en la faisant avorter, il n'y a pas de solutions simples à votre problème ! Recommencez la procédure du formatage de la carte SD, ma quatrième installation ce fut la bonne (Ale)...
===== Nom de domaine =====
==== Si on dispose d'un nom de domaine ====
=== Chez Gandi ===
[[LaboM_Yunohost_sur_raspberrypi:_Gandi|La page détaillée de la configuration du domaine chez Gandi]] L'interface des fichiers de zones est très confuse !!
=== Chez OVH ===
Créer un sous-domaine :
https://www.ovh.com/fr/g1332.attacher-domaine-ou-sous-domaine-a-mon-hebergement-web#ajouter_un_sous-domaine_vers_votre_hebergement_web
Création d'un DynHost :
https://www.ovh.com/fr/g2024.mutualise_dynhost
La création du DynHost prend 24H, j'ai du refaire la manipulation, car le DynHost ne s'affichait pas. Suite à la création d'une DNS dynamique, il reste néanmoins l'adresse du sous-domaine chez OVH. Dans l'onglet Zone DNS, il faut supprimer les différentes occurrences du sous-domaines concerné en cliquant sur les corbeilles de chaque champ.
Mettre à jour l'IP
* Script pour mettre à jour l'IP dynamique de la box :
http://zwindler.fr/wordpress/2014/09/22/mise-a-jour-de-votre-dns-chez-ovh-avec-dynhost/
Pour que les script fonctionne de manière optimale, modifier la ligne suivante comme suit :
OLDIP=`dig +short @dns17.ovh.net $HOST`
Pour forcer à regarder le serveur DNS d'OVH.
Explication de crontab pour modifier la temporalité des mises à jour de l'adresse :
https://openclassrooms.com/courses/reprenez-le-controle-a-l-aide-de-linux/executer-un-programme-a-une-heure-differee
* ddclient :
https://doc.ubuntu-fr.org/ddclient
* Ipcheck
http://ipcheck.sourceforge.net
==== Si on ne dispose pas de nom de domaine > nohost.me ====
Se connecter avec son navigateur à l'adresse https://mondomaine.nohost.me/, mais pour que cela marche :
* Il faut **configurer sa box internet pour que les ports 80 et 443 soient routés vers l'ip de la raspberry**, ça se passe en général à travers l'interface web de gestion de la box
=== Sur Free-box ===
{{media_11:pi_freebox.png?500|fig:PI_freebox.png}}\\
* OU modifier le fichiers hosts de SON ordinateur comme cela :
sudo nano /etc/hosts
127.0.0.1 localhost
127.0.1.1 db.ultimedia db
192.168.1.88 labominable.nohost.me
=== Sur Livebox ===
Se connecter chez soi à la livebox, taper dans un navigateur :
192.168.1.1
Il faut s'identifier. Le mot de passe d’administration de la Livebox est initialisé avec les 8 premiers caractères de la clé de sécurité WiFi par défaut inscrite sur la Livebox. Cliquer sur l'onglet Configuration avancée. Puis sur l'onglet PAT/NAT
Pour ajouter une règle personnalisée, choisir les configurations suivantes : {{media_11:pi_livebox.png?660|fig:PI_livebox.png}}
Il n'est pas possible de se connecter sur le serveur en étant sur le même réseau que celui-ci car la LIvebox ne possède pas de fonction de loopback. Pour y accéder utilisez en un autre ou un smartphone pour les tests.
===== Une fois rentré à la maison =====
==== Modifier son fichier /etc/hosts ====
Regarder depuis votre ordinateur quelle adresse IP la raspberry a pris sur votre réseau local (type 192.168.1.%%**%%* par exemple)
sudo nmap -sP 192.168.1.0/24
doit donner l'adresse de la pi, disons 192.168.1.101
L'interface de votre Box internet peut aussi vous donner l'adresse IP de la Pi directement (voir la partie DHCP)
ensuite, il faut dire à yunohost que le domaine enregistré a changé d'IP publique, se connecter en ssh à la pi :
ssh pi@192.168.1.101
et taper, une fois loggué sur la Pi en ssh :
yunohost domain dns-conf mondomaine.nohost.me
Vérifier que vous avez fait le routage des ports sur votre box internet pour qu'à minima, les ports 80 et 443 soient routés vers l'adresse de la pi soit 192.168.1.101
Au final, votre box doit être désormais visible de l'extérieur, pour être sur, il faut enlever la ligne du fichier hosts de votre ordinateur :
sudo nano /etc/hosts
=== Exemple de fichier /etc/hosts ===
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
#127.0.1.1 Yunohost
#192.168.1.18 mondomaine.nohost.me
==== Administrer son yunohost ====
Se rendre sur l'interface via l'adresse du domaine yunohost en ajoutant /admin à la fin de l'adresse (exemple:[[https://tondomaine/yunohost/admin| https://tondomaine/yunohost/admin]]), puis y saisir le mot de passe qui a été personnalisé pour le root.
=== La Moulinette ===
La Moulinette permet d'administer, configurer Yunohost:
* https://yunohost.org/#/moulinette
Des détails [[LaboM_Yunohost_sur_raspberrypi:_Moulinette| **Moulinette**]]
=== Se connecter à sa pi à distance via un terminal ===
Quand on est loin de sa raspberry pi (mettons que vous êtes aux Tongas, et que votre Pi se trouve au 108 rue de Bourgogne à Orléans), et que l'on veut avoir accès à sa pi via un terminal, comme quand on est près de cette pi, rien de plus simple. Il suffit de se souvenir de l'identifiant d'utilisateur que l'on a indiqué lors de l'installation, et du mot de passe, et de taper la commande suivante, dans un terminal, en adaptant à votre situation (en remplaçant monnomutilisateur, mondomainecheri.cheri.cheri et monmotdepasse), en acceptant le certificat, et en saississant le mot de passe quand c'est demandé:
ssh monnomdutilisateur@mondomaincheri.cheri.cheri
===== Installer des applications Yunohost / La Brique =====
* Commencer par créer un utilisateur, puis installer des applications (en se rendant sur l'interface administrateur)
* Un post recensant **les applications compatibles avec la version 2.4 de Yunohost** : https://forum.yunohost.org/t/list-of-apps-working-with-yunohost-2-4/1604/1
==== Owncloud ====
[[LaboM_Yunohost_sur_raspberrypi:_owncloud|La page détaillée de l'installation de Owncloud]]
==== Etherpad ====
Pour l'instant l'appli etherpad n'est pas prête pour yunohost 2.4, installation à la main en suivant ce tutoriel qui a fonctionné pour debian jessie, pas le passage sur le port 80 pour lequel il doit plutot falloir adopter la méthode proposée par le deuxième tuto
* http://wiki.dane.ac-versailles.fr/index.php?title=Installer_un_serveur_Etherpad-Lite_interne_sous_Debian
pour revenir en arrière sur le port 80 et rétablir le port 9001 :
setcap 'cap_net_bind_service=-ep' /usr/bin/nodejs
changer le port dans
nano /home/etherpad/etherpad-lite/settings.json
* http://framacloud.org/cultiver-son-jardin/installation-detherpad/ voir également la liste des plug-ins installés dans les commentaires
Il faut décommenter la partie concernant le compte admin sinon, pas d'admin !
donc enlever les :
/*
\\
*/
==== Installer une interface graphique type XFCE, MATE ou LXCE ====
* Voir ce tuto https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=133691
===== Troubleshootings =====
=== Votre sd card déconne ===
[[Raspberry_Pi_Installation_sur_Carte_SD_ou_disque_USB|Installer sur une clé USB]]
=== Metronome ===
* Sur Raspberry B+ : erreur sur installation de metronome: compiler avec ce [[http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:yunohost-jessie|tuto]]
== Ressources ==
Doc:
* https://lightwitch.org/metronome
Pour l'installation:
* https://github.com/jappix/jappix/wiki/XmppServer
A voir:
* https://www.guillaume-leduc.fr/installation-du-serveur-xmpp-jabber-metronome.html
* http://www.cypouz.com/article/130919/installation-serveur-xmpp-metronome
=== Version de noyau ===
Mise à jour du noyau avec:
sudo rpi-update
en particulier si raspbian est sur une clé usb, la sd card n'est pas mise à jour lors d'une nouvelle install sur la clé.
===== Bonus =====
==== Lignes de commande utiles ====
* Changer le mot de passe root
sudo passwd root
* Changer le mot de passe pi
sudo passwd pi
* Eteindre la pi
sudo shutdown now
=== Ajouter une passerelle ===
Si problème du type
SIOCADDRT: Le réseau n'est pas accessible
ajouter sa propre adresse ip comme passerelle et ensuite celle du routeur
sudo route add default gw 192.168.0.2
sudo route add default gw 192.168.1.254
==== hotspot wifi ====
=== Les différents type de hotspot : "normal", via vpn, via TOR ===
Pour installer la brique internet (hotspot wifi), se rendre dans l'espace d'administration de Yunohost puis Applications / Installer / Installer une application personnalisée et coller ce lien :
[[https://github.com/labriqueinternet/hotspot_ynh| https://github.com/labriqueinternet/hotspot_ynh]]
Une fois installé vous avez un réseau sans accès internet (une Pirate box). Pour avoir un réseau internet VPN, il faut répéter la même opération avec ce lien
[[https://github.com/labriqueinternet/vpnclient_ynh| https://github.com/labriqueinternet/vpnclient_ynh]]
Si, en revanche, vous souhaitez un réseau TOR :
[[https://github.com/labriqueinternet/torclient_ynh| https://github.com/labriqueinternet/torclient_ynh]]
=== Troubleshooting ===
Dans mon cas, hostapd ne voulait pas démarrer,
sudo service hostapd status
sudo hostapd -dd /etc/hostapd/hostapd.conf
donne :
nl80211: Failed to set interface 3 to mode 3: -16 (Device or resource busy)
il a fallu trouver le service à désactiver :
sudo apt-get install aircrack-ng
sudo airmon-ng check
sudo airmon-ng check kill : pour tout tuer en mode bourin
le processus coupable était là wpa_supplicant
sudo nano /etc/network/interfaces
et commenter les 2 lignes appelant wpa_suppli
# wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
a priori pas besoin de désactiver wpa2 dans l'admin du wifi ...
**Pour rendre Internet accessible via le wifi**, il m'a fallu :
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
et rendre tout ça pérenne : sauvegarder les régles
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat" to save the rules to the file /etc/iptables.ipv4.nat
sudo nano /etc/rc.local and just above the line exit 0, add the following line:
iptables-restore < /etc/iptables.ipv4.nat
* https://frillip.com/using-your-raspberry-pi-3-as-a-wifi-access-point-with-hostapd/
=== Ressources complémentaires ===
* https://forum.yunohost.org/t/probleme-ssl-lors-de-la-post-installation-sur-raspberry/1593<<<
* http://superuser.com/questions/761029/tl-wn725n-access-point-on-archlinux-hostapd
* http://elinux.org/RPi_USB_Wi-Fi_Adapters
==== Rendre les services accessibles via le hotspot wifi sans connexion au net ====
**1) modifier le fichier /etc/resolvconf.conf** pour indiquer à LaboM que le serveur DNS à utiliser est lui-même
sudo nano /etc/resolvconf.conf
# If you run a local name server, you should uncomment the below line and
# configure your subscribers configuration files below.
name_servers=10.0.242.1
**2) modifier le fichier /etc/dnsmasq.conf** pour indiquer au service dnsmasq la correspondance entre l'IP le domaine labom.lobotomie.org
# Add domains which you want to force to an IP address here.
# The example below send any host in double-click.net to a local
# web-server.
address=/labom.lobotomie.org/10.0.242.1
**3) modifier le fichier /etc/hosts** au cas où mais à priori pas nécessaire, en ajoutant la ligne :
10.0.242.1 labom.lobotomie.org
**4) modifier l'IP du DNS Resolver du réseau Wifi de LaboM**
dans l'interface utilisateur de Yunohost, ouvrir l'app Wifi HotSpot (par défaut [[https://domain.tld/wifiadmin/1| https://domain.tld/wifiadmin/1]] ). Dans l'onglet "IPv4" du réseau Wifi utilisé pour se connecter à la Brique (à priori le Hotspot 1), modifier l'adrese IP des champs "First DNS Resolver" en indiquant 10.0.242.1 et "Second DNS resolver" en indiquant 80.67.169.12
**5) redémarrer dnsmasq**
sudo service dnsmasq restart
* D'après la configuration décrite ici : https://forum.yunohost.org/t/utiliser-la-brique-en-equipe-dans-un-lan-serveur-dns-local-connexion-internet-faible-inexistante/1440
==== Installer Letsencrypt pour avoir de jolis certificats https ====
**Ajouter jessie-backports pour installer certbot**
sudo nano /etc/apt/sources.list
ajouter :
deb [[http://ftp.debian.org/debian| http://ftp.debian.org/debian]] jessie-backports main
puis
sudo apt-get update
sudo apt-get install certbot -t jessie-backports
cd /etc/yunohost
sudo cp -r certs certs.bak
sudo service nginx stop
**on utilise la méthode standalone** qui implique que les dns choisis (paramètre -d) pointent bien vers la raspberry (port 80 et 443) et donc votre box internet doit être configurée pour router ces ports vers l'ip de la raspberry
sudo certbot certonly --standalone -d labom.lobotomie.org -d labompad.lobotomie.org
Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/labom.lobotomie.org/fullchain.pem
Your cert will expire on 2016-12-25 ...
**Il faut ensuite relier ces certificats générés avec la config** (btw, j'ai du recommencer le certbot pour le deuxième domaine, don't know why) :
cd /etc/yunohost/certs/labom.lobotomie.org
sudo ln -sf /etc/letsencrypt/live/labom.lobotomie.org/privkey.pem key.pem
sudo ln -sf /etc/letsencrypt/live/labom.lobotomie.org/fullchain.pem crt.pem
cd /etc/yunohost/certs/labompad.lobotomie.org
sudo ln -sf /etc/letsencrypt/live/labompad.lobotomie.org-0001/privkey.pem key.pem
sudo ln -sf /etc/letsencrypt/live/labompad.lobotomie.org-0001/fullchain.pem crt.pem
sudo chown root:metronome /etc/letsencrypt/live /etc/letsencrypt/archive
sudo chmod g+rx /etc/letsencrypt/live /etc/letsencrypt/archive
sudo service nginx start
**Automatiser le renouvellement des certificats**
sudo nano /etc/systemd/system/letsencrypt.service
[Unit]
Description=Renews letsencrypt certificates with certbot
After=network.target
[Service]
Type=oneshot
WorkingDirectory=/etc/letsencrypt
ExecStart=/usr/bin/certbot renew
sudo nano /etc/systemd/system/letsencrypt.timer
[Unit]
Description=letsencrypt timer
[Timer]
OnCalendar=daily
Persistent=true
Unit=letsencrypt.service
[Install]
WantedBy=basic.target
sudo mkdir /etc/systemd/system/letsencrypt.service.d
sudo nano /etc/systemd/system/letsencrypt.service.d/nginx.conf
[Service]
ExecStartPost=/bin/systemctl reload nginx
**Test**
date
systemctl restart letsencrypt.service
journalctl -xn
done :
sudo systemctl status letsencrypt.service
● letsencrypt.service - Renews letsencrypt certificates with certbot
Loaded: loaded (/etc/systemd/system/letsencrypt.service; static)
Drop-In: /etc/systemd/system/letsencrypt.service.d
└─nginx.conf
Active: inactive (dead)
sept. 26 17:54:43 raspberrypi certbot[4681]: -------------------------------------------------------------------------------
sept. 26 17:54:43 raspberrypi certbot[4681]: -------------------------------------------------------------------------------
sept. 26 17:54:43 raspberrypi certbot[4681]: Processing /etc/letsencrypt/renewal/labompad.lobotomie.org-0001.conf
sept. 26 17:54:43 raspberrypi certbot[4681]: -------------------------------------------------------------------------------
sept. 26 17:54:43 raspberrypi certbot[4681]: The following certs are not due for renewal yet:
sept. 26 17:54:43 raspberrypi certbot[4681]: /etc/letsencrypt/live/labompad.lobotomie.org-0001/fullchain.pem (skipped)
sept. 26 17:54:43 raspberrypi certbot[4681]: /etc/letsencrypt/live/labom.lobotomie.org/fullchain.pem (skipped)
sept. 26 17:54:43 raspberrypi certbot[4681]: /etc/letsencrypt/live/labompad.lobotomie.org-0001/fullchain.pem (skipped)
sept. 26 17:54:43 raspberrypi certbot[4681]: No renewals were attempted.
sept. 26 17:54:43 raspberrypi systemd[1]: Started Renews letsencrypt certificates with certbot.
Pour que cela marche, j'ai du copier le contenu de /etc/letsencrypt/renewal $ sudo nano labompad.lobotomie.org-0001.conf dans /etc/letsencrypt/renewal $ sudo nano labompad.lobotomie.org.conf
* voir le post : https://forum.yunohost.org/t/how-to-install-let-s-encrypt-certificates/1075/83?u=benjamin
j'ai fini par générer le certificat en standalone et à nettoyer les 2 fichiers de confs du début du post car le serveur nginx n'arrivait pas à aller chercher les fichiers temporaires tels qu'indiqués dans le tuto
* Pour avoir en plus un joli A+ au test ssllab : https://forum.yunohost.org/t/yunohost-let-s-encrypt-a-au-ssllabs/1855
**Si le renouvellement automatique n'a pas fonctionné:**\\
Si le renouvellement automatique n'a pas fonctionné, et que vous avez choisi l'installation ci-dessus en mode "standalone", connectez vous sur votre raspberry pi en mode console, puis lancez la commande indiquée dans les détails de recommandations de Certbot ().
Dans votre terminal, tapez la commande suivante et le certificat se renouvelle:\\
sudo certbot renew --pre-hook "service nginx stop" --post-hook "service nginx start"
Cette commande vous renvoie l'information de renouvellement du certificat (bien sûr, ce n'est pas mon.nomdedomaine.afterix qui va apparaître dans le texte généré, mais votre nom de domaine à vous):\\
Saving debug log to /var/log/letsencrypt/letsencrypt.log
-------------------------------------------------------------------------------
Processing /etc/letsencrypt/renewal/mon.nomdedomaine.afterix.conf
-------------------------------------------------------------------------------
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Running pre-hook command: service nginx stop
Renewing an existing certificate
Performing the following challenges:
tls-sni-01 challenge for mon.nomdedomaine.afterix
Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0001_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0001_csr-certbot.pem
-------------------------------------------------------------------------------
new certificate deployed without reload, fullchain is
/etc/letsencrypt/live/mon.nomdedomaine.afterix/fullchain.pem
-------------------------------------------------------------------------------
Congratulations, all renewals succeeded. The following certs have been renewed:
/etc/letsencrypt/live/mon.nomdedomaine.afterix/fullchain.pem (success)
Running post-hook command: service nginx start
==== Cloner un site web en utilisant Multi_webapp et wget ====
* Installer https://github.com/YunoHost-Apps/multi_webapp_ynh
* en ssh, aller au répertoire créé lors de l'installation de multi_webapp_ynh
cd /var/www/webapp_b01/zotero/
sudo wget -r -k -E -np [[https://www.zotero.org/groups/1.camp/items
-nd pour ne pas créer l'arborescence de répertoire
-np pas remonter dossier parent
-p pour prendre les fichiers prérequis associés
Faire un lien symbolique pour remplacer le index.html par un lien vers la racine du site aspiré
cd /var/www/webapp_b01/zotero/
sudo mv index.html index.bak
sudo ln -s www.zotero.org/groups/1.camp/items.html index.html
==== Installer LibViz sous flask nginx python ====
=== Installer flask ===
sudo apt install python-virtualenv
cd LibViz
virtualenv venv
source venv/bin/activate
pip install -r requirements.txtt install python-virtualenv
cd LibViz
virtualenv venv
source venv/bin/activate
pip install -r requirements.txt
=== Utiliser uwsgi avec nginx ===
sudo uwsgi -s /tmp/LibViz.sock --manage-script-name --mount /LibViz=run:app --plugin python
et en même temps mais bizar
sudo chown www-data:www-data /tmp/LibViz.sock
=== Configurer nginx ===
sudo nano /etc/nginx/conf.d/labom.lobotomie.org.d/webapp_LibViz.conf
location = /LibViz { rewrite ^ /LibViz/; }
location /LibViz { try_files $uri @LibViz; }
location @LibViz {
include uwsgi_params;
uwsgi_pass unix:/tmp/LibViz.sock;
}
* http://flask.pocoo.org/docs/0.11/deploying/uwsgi/
=== Mettre à jour LibViz ===
* Se logguer sur ArtLabo en ssh - le dépot : https://github.com/JulienParis/LibViz
cd ~/www/libviz.artlabo.org/LibViz
git status
git pull
git checkout app/static/data/1camp_network.json
git checkout app/static/data/substances_network.json
git pull
Redémarrer Apache2
su
systemctl reload apache2
===== Ressources =====
* https://yunohost.org/#/build_arm_image_en
* https://yunohost.org/#/admindoc_fr
* https://yunohost.org/#/moulinette_fr
* https://yunohost.org/#/regenerate_certificate_fr
* https://yunohost.org/#/change_admin_password_fr
* https://yunohost.org/#/dns_fr
* https://forum.yunohost.org/t/point-sur-mon-installation-yunohost-sur-raspberry3/1588
Vous pouvez aussi contribuer à ce projet ici https://doc.yunohost.org/#/contribute_fr.
Voir aussi un projet concourant : https://github.com/indiehosters/libre.sh
===== Mettre en place un atelier =====
==== Chaque participant doit se munir de ====
- une Raspberry Pi\\
- une carte SD ou mini sd d'au moins 10 Go et rapide ( au moins pour démarrer le GRUB )\\
- une alim de 5 volts\\
- clavier (USB)\\
- une souris (USB)\\
- un ordinateur\\
==== Celui qui donne l'atelier doit se munir de ====
- un écran HDMI (pour brancher directement la Pi en cas de problème)\\
- un dépôt local de Debian type proxy cash\\
- un switch RJ45 (chaque participant y branchera son ordi et sa Raspberrypi)\\
- 2 câbles ethernets par participants\\
===== Projets concourants / concurrents =====
* FreedomBox orienté boîte prêt à l'emploi mais évolutions du projet quelque peu chaotique http://freedomboxfoundation.org/
* Cloudrion orienté cloud serveur Amazon / OVH / ... mais peut s'installer sur un serveur normal https://cloudron.io
* SandStorm les applis peuvent être hébergées sur leur serveur ou sur un serveur autohébergé https://sandstorm.io/
* EthicBox https://ethibox.fr/
* La liste des projets d'autohébergement : https://yunohost.org/#/selfhosting
* Un témoignage de quelqu'un qui a décidé de "reprendre le contrôle de ses données" https://www.joffredolebrun.fr/mathonautes/comment-jai-repris-en-main-ma-vie-numerique/
{{tag>micro_ordinateur atelier bj yunohost raspberry_pi}}