Gestation de LoGaton, le CHATON gascon!

Bonjour tout le monde,

Suite au #collectif:camp-chatons de cette été et à la demande concommitante de plusieurs connaissances, j’ai décidé d’activer la mise à bas d’un CHATON local, et que s’appelorio LoGaton (ce qui signifie « le chaton » en occitan) !

logoton200

Pour me sentir un peu moins seul (et peut-être poser quelques questions et espérer quelques réponses), j’ai décidé de vous raconter ici la gestation technique (et un peu administratif) de ce petit nouveau, qui, je l’espère, rejoindra la future portée de CHATONS !

Contexte

Après quelques années dans le Gers, j’ai migré non loin (à 6 km de la frontière départementale !) en Haute-Garonne. J’ai malgré tout gardé quelques liens avec le Gers et construit d’autres liens dans le Haut-Comminges.
Cela fait longtemps que j’aimerai créer un CHATON local mais les astres n’était pas alignés. Mais cette fois-ci, il y a quelques besoins exprimés par des connaissances :

Calendrier des événements locaux

Une demande récurrente depuis quelques années, la volonté d’avoir un calendrier à la Démosphère pour le Gers. Le collectif Demosphère ne répondant pas à nos demandes de mise en place d’un antenne gersoise, il m’a été demandé ce qu’il était possible de faire pour du court-terme. J’avais évoqué la possibilité de mettre en place une instance Mobilizon.

Passage au libre en local

Plusieurs personnes souhaitent maintenant quitter les GAFAMs et passer sur du 100% libre. L’idée d’avoir la possibilité de s’adresser à une personne/un collectif en réel les intéresse beaucoup et leur permettrai de franchir le cap.
On me demande des mails (avec toute la réserve que je peux y mettre connaissant la prise de tête que peuvent amener la gestion d’un serveur mail), des outils de sondage (aka Framadate), des outils de stockage (via un Nextcloud) et des outils de travail collaboratif (type Cryptad).
Dont acte.

YunoHost

Il y avait aussi ma volonté de monter en compétence sur YunoHost afin d’avoir une bonne base pour le déploiement de CLIC! dans mon éco-hameau ou lors d’événements/marchés locaux pour sa version « offline ».

Bon, bah, c’est parti

Les premiers achats

Histoire de ne pas partir d’une feuille blanche, j’ai décidé de rédiger le projet sur papier.
Bon, en fait, non. Comme l’idée du nom LoGaton était né durant mon trajet de train pour le Camps CHATONS #TrueStory, j 'ai décidé de prendre le nom de domaine et le serveur (pendant le Camps CHATONS #TrueStory)
Le nom de domaine a été pris chez Gandi, tandis que le serveur a été choisi chez Hetzner (en attendant le futur datacenter auscitain).
Ce serveur est équipé d’un processeur ntel Core i7-4770, de 2 SSD de 256 Go (qui recevront le système) et de 2 SSD de 512 Go (qui recevront les données) et de 32 Go de Ram (qui supporteront tout ça, j’espère).

L’installation

(affaire à suivre)
J’ai commencé par installer une Debian Bullseye via l’outil de déploiement d’image de Hetzner (la procédure sera sur le site), le RAID1 est configuré directement sur les deux disques de 256Go.
J’ai ensuite créer la grappe RAID1 en BTRFS sur les deux autres disques de 512Go qui recevront donc /var
Tout est décrit, vive les copier-coller ! Si je suis bien motivé, je pourrais même écrire le script. Si jamais.

Install de YunoHost

L’installation de YunoHost par le script s’est passé à merveille.
La configuration de YunoHost ne pose pas de soucis.

J’ai donc configuré le domaine LoGaton.fr et c’était parti.
À la création des sous-domaines, j’ai parfois eu l’impossibilité de créer le certificat Let’s Encrypt par l’interface d’administration. J’ai donc du passer par le terminal et utiliser la commande :

yunohost domain cert-install whatever.logaton.fr

J’ai pu constater sur cryptcheck.com que j’obtenais par défaut une note de D. :question: J’aimerai bien l’améliorer, si vous avez des pistes, je suis preneur !

L’outil de diagnostic m’a relevé quelques erreurs, certaines ont été résolues dans la foulée (quel bon outil !) et d’autres restent à traiter dans les prochaines nuits

  • :question: Il semble qu’apt (le gestionnaire de paquets) soit configuré pour utiliser le dépôt des rétroportages (backports).
  • Les ports 4443 et 10000 ne sont pas ouverts sur l’extérieur.
    • :question: apparemment, ce serait du côté Hetzner, mais le firewall m’a l’air OK. Si vous avez une idée ?
  • :question: Aucun DNS inverse n’est défini pour IPv6. Work to do, je suis preneur d’info pour m’éviter de Duckduckgiser ça :stuck_out_tongue:

Installation des apps

Après quelques tests et vérification d’apps, j’ai décidé de laisser en prod certaines d’entre elles pour démarrer. On verra d’autres lorsque des besoins seront exprimés et partagés.

Voici déjà pour les apps « d’administration » qui ne seront donc pas destinées à être ouvertes comme services mais seront utilisés pour l’administration de la solution :

YesWiki

J’utilise YesWiki comme site web principal, parce que je <3 (et que je veux le maîtriser encore mieux) (et que c’est la même base que CLIC!).
Pas impossible que je réfléchisse ultérieurement à la possibilité de le transformer en Ferme à Wikis mais pour l’instant, je mets ça de côté.

Garradin

Histoire de conserver les actes finanço-administratifs. Je ressaie Garradin en hommage à la présence de @bohwaz au Camp CHATONS (venez toustes la prochaine fois !).

Webmail RainLoop

Bon, je ne connaissais pas ce webmail, donc go for it.

Cachet

Pour afficher les statuts des applications.
J’ai échoué à installer le service 2-3 fois (erreur à la création de la base de données), mais c’est tombé en marche, après ma mise à jour vers la version 11.0.9.13 de YunoHost (corrélation ou causalité, je ne sais pas !).

Concernant les services proposés au public :

Annotation de PDF

via le logiciel SignaturePDF
Un bon moyen d’arrêter de nous embêter avec Acrobat Reader (ou Okular qui n’est pas forcément super user-friendly)
sur https://signons.logaton.fr

Jeu de mots

via SOTUM
Spéciale dédicace à ma Môman qui apprécie SOTUM
sur https://jouons.logaton.fr/sutom

Outils collaboratifs

via Cryptpad
J’apprécie les outils cryptpad et la possibilité d’avoir plusieurs outils proposés. Et c’est chiffré sur le serveur, je suis d’autant plus tranquille en tant que co-responsable de traitement de données personnelles (coucou @pyg @Sleto )
sur https://collaborons.logaton.fr/

Partage de frais

via I Hate Money
Un outil dont nous aurions souvent besoin à l’éco-hameau. Alors en attendant que notre YnH soit installé en local, autant profiter de celui-ci.
sur https://partageons.logaton.fr

Visio

via Jitsi Meet
Les beaux-parents s’étant éloignés, ils m’ont demandé quel logiciel utiliser pour faire de visios. Plutôt que les orienter vers un outil à installer, je pensais les envoyer sur une instance JitsiMeet. Bon, bah, comme ça, je sais où les envoyer !
:question: J’ai par contre un petit souci car, par défaut, il faut être inscrit et connecté pour être host d’une réunion et la modérer. J’aimerai rendre cela public et sans inscription, une idée de la procédure ?

Mobilizon

Demande ancienne de plusieurs associations/structures d’avoir un agenda partagé ou au moins un moyen de voir ce qui se passe sur le territoire. Suite au Camps Chatons de l’année dernière, j’avais été convaincu que cela répondait aussi de pas mal de besoins d’espace de partage d’infos pour des petits collectifs.
J’ai donc décider d’installer et de faire le focus sur Mobilizon (et de mettre les événements Mobilizon en avant sur la page d’accueil de LoGaton - coucou
:question: Malheureusement, j’ai systématiquement une erreur : Souci à l'installation de Mobilizon - Support apps - YunoHost Forum
Affaire à suivre.
J’ai aussi la possibilité minimaliste et à très court-terme de mettre en place un agenda via le YesWiki du site. On verra suivant la résolution (ou pas) du souci d’installation Mobilizon que j’investiguerai plus longuement un de ces soirs.

Structuration administrative

J’avais imaginé créer une association pouvant prendre en charge ce CHATON. Mais les ressources humaines étaient assez peu disponibles… J’ai donc décidé de lancer ça en mon nom, au plutôt au nom de ma structure professionnel, en me disant que cela pourrait répondre à des demandes particulières de facturation notamment. Cela me permet de me lancer tant que l’énergie est là.

Par contre, c’est clairement un service qui devra avoir sa propre gouvernance à court terme. J’espère que l’existence même de ce CHATON permettra à certain⋅e de s’y engager directement (et sans attendre un éventuel service qui n’existera qu’après maintes réunions préalables).
Il me sera nécessaire d’être attentif à ne pas personnaliser les différents outils et accès pour me permettre de partager le nécessaire sans partager mon compte personnel #ProTip
Et de permettre à toutes les bonnes volontés de s’impliquer dans LoGaton.
Ce n’est pas forcément la manière que je préconise habituellement, on verra si ça fonctionne mieux ou pas, et au moins, j’aurai appris !

Ma Tout Doux Liste

(oui, parce que ça prendra le temps que ça prendra)
Il me reste encore pas mal de choses à faire avant d’avoir quelque chose de présentable.
Mais parmi celles-ci, voici ce que j’ai noté (si vous voyez d’autres tâches, n’hésitez pas à me les dire !)

  • Présentation de LoGaton
    le site web de présentation de LoGaton est plein de peinture et de tests divers. Mais ça prend forme. Et merci au compte-rendu de @fabrice61 pour m’orienter un peu !
  • Documentation technique
  • Présentation des services
  • Guide d’utilisation des services
  • CGU
  • Mentions Légales
  • Politique de collecte des données personnelles
  • Qualité chiffrement -cryptcheck-
  • Mise en place d’une sauvegarde
    + archivage externalisé
  • créer les fiches properties cc #collectif:stats-chatons-org

Et c’est tout, pour le moment !

Merci de m’avoir écouté, n’hésitez pas à me conseiller pour que la gestation se passe au mieux et qu’on accouche d’un joli chaton gascon dans les prochaines semaines !
Je mettrai à jour ces listes et histoires au fur et à mesure de la gestation pour vous tenir au courant !

Adishtaz,
@Jeey
éleveur de chaton gascon

10 « J'aime »

Bonjour @Jeey , chouette un chaton Gascon :smiley: !

J’ai regardé vite fait. Avec un autre outil, j’obtiens un joli A+ . Je ne connais pas du tout Ynh, mais il me semble qu’il y a une misconfiguration entre les redirections de logaton.fr vers le sous-domaine www.logaton.fr (ou vice versa) ? Car la redirection renvoie vers le répertoire www. Ainsi, www.logaton.fr n’a pas de certificat et utilise celui par défaut du domaine yunohost.org . Ça expliquerait la note de cryptcheck.com (qui teste par défaut www.example.com et example.com je crois ).

testssl.sh www.logaton.fr
...
 Testing server defaults (Server Hello) 

 TLS extensions (standard)    "renegotiation info/#65281" "server name/#0" "EC point formats/#11" "next protocol/#13172" "supported versions/#43" "key share/#51" "supported_groups/#10" "max fragment length/#1"
                              "application layer protocol negotiation/#16" "extended master secret/#23"
 Session Ticket RFC 5077 hint no -- no lifetime advertised
 SSL Session ID support       yes
 Session Resumption           Tickets no, ID: yes
 TLS clock skew               Random values, no fingerprinting possible 
 Certificate Compression      none
 Client Authentication        none
 Signature Algorithm          SHA256 with RSA
 Server key size              RSA 2048 bits (exponent is 65537)
 Server key usage             Digital Signature, Non Repudiation, Key Encipherment
 Server extended key usage    --
 Serial                       BDCFE9EE41FDE5C0D06EB66C3A0F6BEF729F46 (OK: length 19)
 Fingerprints                 SHA1 ED6C0CB9E834B21B06BDB0D7791C01E254101CF7
                              SHA256 0712500F49D52FBE3189E99409FF3586BE1B7E2E2A6A24753BDE27774117089E
 Common Name (CN)             yunohost.org 
 subjectAltName (SAN)         yunohost.org www.yunohost.org ns.yunohost.org xmpp-upload.yunohost.org 
 Trust (hostname)             certificate does not match supplied URI (same w/o SNI)
 Chain of trust               NOT ok (chain incomplete)
 EV cert (experimental)       no 
 Certificate Validity (UTC)   726 >= 60 days (2022-09-02 00:33 --> 2024-09-01 00:33)
                              > 398 days issued after 2020/09/01 is too long
 ETS/"eTLS", visibility info  not present
 Certificate Revocation List  --
 OCSP URI                     --
                              NOT ok -- neither CRL nor OCSP URI provided
 OCSP stapling                not offered
 OCSP must staple extension   --
 DNS CAA RR (experimental)    available - please check for match with "Issuer" below: issue=letsencrypt.org
 Certificate Transparency     --
 Certificates provided        1
 Issuer                       yunohost.org (yunohost)
 Intermediate Bad OCSP (exp.) Ok

Enfin, tu peux activer DNSSEC sur ton domaine avec Gandi et en un clic. Ce qui est une bonne pratique qui ne mange pas de pain.

1 « J'aime »

je n’ai effectivement pas créer manuellement de sous-domaine www.logaton.fr
Je vérifie si ça améliore le bouzin. Merci !

J’apprécie également les outils cryptpad. Mais êtes-vous sûr de la prochaine déclaration ? :smiley:

vaste débat. Mais mes capacités de détection sont en tout cas limitées par le chiffrement. Et ce chiffrement limite l’exposition de données personnelles (ce qui est un objectif du RGPD). Vive le chiffrement.

Pour le soucis avec mobilizon, je pense que c’est parce que cryptpad dépend de onlyoffice et qu’il ya un conflit entre onlyoffice et mobilizon.

https://wiki.arn-fai.net/benevoles:technique:yunohost_mutu#conflit_apt_entre_mobilizon_et_onlyoffice

1 « J'aime »

Salut Jeey,

Ton projet LoGaton m’avait déjà interpellé. Mais maintenant qu’on s’est croisé au CHATONS camp, je souhaiterai te proposer, dans la limite de mes compétences de partager cette gestation.

Ça avance cette idée de datacenter gascon ?
La vallée du Louron est-elle encore en Gascogne ou déjà en Espagne ?

Mes bases d’Informatique Industrielle me poussent plutôt coté hardware, alimentation et réseaux. Et cette idée de micros datacenters locaux avec de la récup ou de l’occas me branche vraiment depuis longtemps. Ils seront forcement plus fragile que les énormes usines à data mais je me propose de compenser cela par une maintenance de proximité attentive et réactive. Il y a aussi le CHATONS et des trucs comme garage pour fédérer les backups.
Voilà 2 ans que j’installe, casse et réinstalle des serveurs sur différentes machines, sans jamais oser les proposer en production. Mais avec un objectif comme d’héberger physiquement de LoGaton, les conseils de gens comme @12b et d’autres, ça collerait parfaitement à ma vision d’une « AMAP numérique ».

L’évolution de mes serveurs :

  1. Raspeberry Pi (2021-02) :

hardware :

  • Raspeberry Pi 4B 8GB
  • carte TF 32GB Kioxia Exceria High Endurance (mémoire flash MLC)

software :

  • Rasbian base
  • Apache
  • MariaDB
  • WordPress
  1. Ordinosaure (on line de 2021-09 à 2023-04 nonstop) :

hardware tout récup :

  • Carte mère MSI GF615M-P33
  • Processeur AMD Atlon X2 à 2.9 GHz
  • RAM KHX1600C9AD3_2G + KVR1333D3N9_2G = 4GB 1333
  • HD 2 x 2.5 160GB 7200 rpm en RAID1 logiciel
  • Alimentation ATX
  • Onduleur APC BACK-UPS CS 500VA 230V asservissant le serveur.

software :

  • yunohost-buster-4.1.8-amd64-stable
  • WordPress
  • Lufi
  • NetData
  • phpMyAdmin
  1. Serveur FUJITSU PRIMERGY TX1330 M1 Rack (2023-04 en cour de reconstruction logiciel) + Carte mère de spare

hardware : récup + https://www.ebay.fr/itm/266101202179

  • Processeur Intel Xeon E3-1231 V3 @ 3.4Ghz + 1 spare
  • RAM 32GB ( 4 x 8GB) Max. 32GB
  • 8 caddy HD 2.5" + Fujitsu Raid Controller D2607 SAS 6Gbit/s 1GB 8 Port
  • SSD OSCOO (mémoire flash MLC Intel) 256GB ou 512GB quantité type de RAID ???
  • Alimentation FUJITSU 2 x 450 Watt + 1 de spare
  • Onduleur MGE Pulsar 1500 RT2U asservissement du serveur à finaliser

Software à réparer ou réinstaller

  • Proxmox direct (Proxmox/Debian pour plus de contrôle ?)
  • YuNoHost (diagnostique tout OK quand IPv6 sera + stable, on y bosse avec le support de FDN)
  • Wordpress
  • NetData
  • Dolibarr (à remplacer par Paheko @bohwaz )
  • phpMyAdmin
  1. Projet faire un serveur de fichier NFS, pour du stockage lourd et lent, avec des HD 3.5" et 2.5" de récupération en grappe RAID5 ou 6 afin de les amener en fin de vie ultime. Au CHATONS camp, on m’a mis en garde contre un risque corruption de toute la grappe en cas d’erreur de lecture non détectées. Je pensais m’en prémunir avec beaucoup de test smartctl et du contrôle de parité ???

Prochain épisode
L’évolution de mon réseau et de ma connexion à l’internet : vers FTTH, IPv6 et au delà…

Coming soon…

C’est bien joli de bricoler un serveur, mais si il n’est accessible que sur mon réseau local, c’est juste un NAS naze. :laughing:
Les tutos, diagnostiques, forums et échanges avec YuNoHost, Tétaneutral, FDN, Gandi, Le PIC, Picasoft… m’ont permis de rendre mon serveur accessible depuis l’internet, au travers de ma vielle ASDLBox D-Link DSL-2640B et par le truchement de mon abonnement chez FDN. J’arrive à un diagnostique YNH parfait en IPv4 (malgré un trucs vraiment tordu pour le hairpinning). Un ami graphiste, à même pu commencer à créer un site WordPress pour l’asso. Nous avons testé le mail, le XMPP préconfigurés de YNH et Lufi avec un autre pote du Gers. Super facile, merci ! :slightly_smiling_face:
Nous n’étions que 3, mais je ne pouvais déjà plus arrêter, casser et refaire la machine ou le réseau, sans les prévenir. Je découvre la notion de disponibilité (merci@denis et Démystifier l’activité d’hébergeur). Une vrai responsabilité pour un hébergeur physique.
J’ai installé logwatch et là horreur au bout de quelques semaines plusieurs milliers de tentatives d’accès repoussées par fail2ban, YNH est bien fait. L’aspect sécurité, ne peux pas être négligé : dehors c’est la jungle ! :scream: . Malgré l’usage de mots de passe supers forts avec Keepass pour les connections web, je configure SSH avec authentification par clés.
Puis le graphiste qui bosse sur du serveur mutualisé OVH, me demande des accès FTP à certains
dossiers WordPress. J’ai bricolé ça avec des permissions étendues ACL. Sans trop savoir si c’est la bonne pratique. Mais je me sens comme le maître des clés de ce petit domaine, avec mes droits de root. Ce pouvoir est presque terrifiant sur des infrastructures plus sensibles, ou entre les mains de gens malveillants.
Bref, pendant que je faisais autre choses (faire skier des touristes sur les cailloux, sauver du hardware de la destruction, rendre leurs données à quelques victimes des GAFAM, éclairer quelques artistes…) mon ordinosaure est rester on line sans, ni servir à grand chose, ni se faire zombifier par des pédo-nazi-russes ! :wink:
Quand la saison de chômer fut revenue, il me restait ces erreurs IPv6 dans le diagnostique YNH. Mon vieux D-Link DSL-2640B ne prenait pas plus en charge l’IPv6 que le hairpinning. Tétaneutral m’a orienté vers OpenWRT, une distribution GNU-Linux dédier au routage. Mon Raspberry Pi s’est alors transformé en routeur. J’ai encore quelques soucis de stabilité que je décris ICI. Le support de FDN est prévenu, j’attends leurs retours (de vacances ?) :wink:, j’ai toujours de IPv4.

La suite : c’est l’arrivée de la fibre FTTH dans mon village. Mon local est déjà indiqué "Déployé (raccordable) " sur la carte de l’ARCEP. La balle est dans mon camp, il faut que je perce les murs de 90cm, que je pose de jolis chemins de câbles et que je déménage tout le système de mon bureau à ce local.

Voilà si LoGaton veut de l’hébergement physique, ça devrait être possible dans quelques mois.
Mais ça me permettrai surtout de sortir de mon isolement montagnard et de continuer à me former sur le tas comme conseillé ICI.

Adishtaz y gardarem lo moral ! :smiley_cat:
@yanngui

5 « J'aime »

Bonjour,
wow sacré taf !
Je me permet de proposer l’utilisation de SFTP et non FTP.

  • FTP c’est en clair sur le réseau identifiant et mot de passe
  • SFTP c’est Secure FTP, sur le même port que le SSH, par défaut 22 mais il est de bon aloi d’utiliser un autre port :slight_smile:
    les clés SSH fonctionnent toutes seules avec le SFTP comme avec la commande SCP

Phil

1 « J'aime »