diff --git a/content/formations/Installation_NixOS.md b/content/formations/Installation_NixOS.md deleted file mode 100644 index 9cbca5d..0000000 --- a/content/formations/Installation_NixOS.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: Installation de NixOS -description: Guide d'installation de NixOS, pour avoir des systèmes d'exploitation configurés à l'identique dans notre cluster -published: true -date: 2021-12-30T12:10:36.753Z -tags: installation, serveur, infrastructure, sysadmin, technique, guide, tutoriel, administration, nixos, linux -editor: markdown -dateCreated: 2021-12-30T12:10:34.730Z ---- - -# Installer NixOS sur son futur serveur - -Chez Deuxfleurs, on essaye d'avoir la même configuration sur tous nos ordinateurs, pour en faciliter l'adminitration. Mission impossible ? Non, pas avec [NixOS](https://nixos.org/) ! Cette distribution Linux - complètement maniaque de la *reproductibitilité* - garantit l'identité à l'octet près de configurations système - et ce, grâce à de simples fichiers de configuration. - -> TODO diff --git a/content/formations/est/_index.md b/content/formations/est/_index.md new file mode 100644 index 0000000..e132c1e --- /dev/null +++ b/content/formations/est/_index.md @@ -0,0 +1,14 @@ ++++ +title = "Études sur les sciences et les techniques" +description = "Études sur les sciences et les techniques" +weight = 20 +sorted_by = "weight" ++++ + +Science & Technology Studies. + +# Ressources + +Technologie Partout, Démocratie nulle part +Techno critique + diff --git a/content/formations/nix/_index.md b/content/formations/nix/_index.md new file mode 100644 index 0000000..bef807b --- /dev/null +++ b/content/formations/nix/_index.md @@ -0,0 +1,6 @@ ++++ +title = "Nix" +description = "L'écosysème Nix : nixlang, nixpkgs, nixos, flakes, etc." +sorted_by = "weight" +weight = 30 ++++ diff --git a/content/formations/nixos.md b/content/formations/nixos.md deleted file mode 100644 index c1cc3f4..0000000 --- a/content/formations/nixos.md +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title = "NixOS" -description = "NixOS" -weight = 1 -+++ - -# NixOS - -Ceci est un manuel diff --git a/content/formations/sysadmin/_index.md b/content/formations/sysadmin/_index.md new file mode 100644 index 0000000..f6c4ad7 --- /dev/null +++ b/content/formations/sysadmin/_index.md @@ -0,0 +1,73 @@ ++++ +title = "Administration Système" +description = "Administration Système" +sort_by = "weight" ++++ + +L'administration système est un concept en réalité aux contours flous. +Ici, on va considérer que l'administration système c'est tout ce qui consiste à faire en sorte que les applications soient fonctionnelles, que les données soient en sécurité, et que les ordinateurs puissent communiquer entre eux à travers le réseau qui nous est mis à disposition. +Et tout ça doit être garanti alors que les usages des services peuvent changer, que des machines peuvent tomber en panne, que des attaques informatiques sont tentées sur notre système, que des fibres sont coupées par des tractopelles, que des bugs existent dans les logiciels, etc. +Promis, on ne s'ennuie pas ! + +Dans d'autres domaines, il est courant de faire la différence entre "conception" et "production", et en réalité cette catégorisation s'applique très bien au monde de l'informatique tel qu'il est constitué aujourd'hui : le développement logiciel est la conception, et l'administration système est la production. +Cette séparation entre "conception" et "production" n'est pas intrinsèque à l'informatique, elle est artificielle et souvent remise en question. +Par exemple, les entreprises de la Silicon Valley ont remarqué que ce découpage était vecteur d'inefficiences. +Formulé avec leurs mots, cette critique a donné des expressions comme "tu le développes, tu l'administres" ou encore les concepts de DevOps et SRE, qui sont parfois devenus plus des buzzwords pour cacher que rien d'autre n'avait changé. +Il nous semble plus efficace de mobiliser des concepts Marxistes de la [division du travail et de l'aliénation](https://www.universalis.fr/encyclopedie/division-du-travail/) pour expliquer ce malaise. + +Chez Deuxfleurs, si on identifie des tâches comme relevant de "la conception" ou de "la production", nos membres de sont pas spécialisés dans un domaine : une même personne développe et opère les logiciels. +Adopter cette attitude a plusieurs avantages importants : ça encourage à concevoir des logiciels faciles à opérer, robuste et résilients, ça permet aussi d'identifier, de remonter et de corriger directement des bugs ou anomalies identifiées en production, +enfin ça permet de mobiliser les outils de développement (exemple : les langages de programmation) pour opérer le système de manière plus sûre et plus rapide. + +Évidemment, pouvoir jongler entre conception et opération, ça demande un grand nombre de qualifications. +Heureusement, la plupart des ressources pour se former sont accessibles gratuitement sur Internet et sont d'excellentes qualité. +De plus, un grand nombre de ces dernières sont mêmes accessibles en Français. +Bref, avec un peu d'aide, il est tout à fait possible de s'auto-former. + +Pour bien se former, il faut des bases théoriques dans un ensemble de domaines précis : réseau, système d’exploitation,« ingénieurie de fiabilité », et sécurité/cryptographie. +Pour couvrir plus largement le domaine, il est bon d'inclure également un peu de programmation, un peu d’architecture matériel, un peu de base de données, un peu d’algorithmie, un peu de structure de données, etc. Une fois cette base acquise, et seulement une fois qu’elle est acquise, il est possible de s'intéresser au fonctionnement précis d'une technologie en particulier, mais c’est vraiment secondaire. +Ce wiki a pour objectif de référencer les bases théoriques existantes et d'apporter des bases pratiques spécifiques complémentaires. + +# Ressources externes + +**Les réseaux de zéro - Zeste de savoir**. Ce livre abondamment illustré explique de manière simple et moderne les principes fondamentaux des réseaux (topologies, couches, protocoles...), avec à l'appui de nombreux schémas, exemples, exercices et cas pratiques. En particulier, il utilise le simulateur de matériel réseau Packet Tracer, outil gratuit édité par Cisco, pour proposer au lecteur des mises en situation et des exercices de configuration. Agréable à lire, cet ouvrage d'une grande pédagogie offre un panorama complet des réseaux informatiques, en accompagnant le lecteur jusqu'à la compréhension des concepts les plus complexes. Sans nécessiter de prérequis, il constituera un excellent support pour tous ceux et celles qui souhaitent acquérir un bagage solide dans ce domaine. + +[Acheter le livre](https://www.eyrolles.com/Informatique/Livre/les-reseaux-de-zero-9782416005237/) - [Lire gratuitement en ligne](https://zestedesavoir.com/tutoriels/2789/les-reseaux-de-zero/) + +**Système d'exploitation 3IF - INSA Lyon**. Contenu du cours : + - Chap. 1: noyau, shell, appel système + - Chap. 2: partage du temps, ordonnancement + - Chap. 3: mémoire virtuelle + - Chap. 4: allocation dynamique de mémoire + - Chap. 5: threads et synchronisation + - Chap. 6: stockage et systèmes de fichiers + +[Accéder au cours sur le Moodle de l'INSA Lyon](https://moodle.insa-lyon.fr/course/view.php?id=4045) + +**Linux - OpenClassrooms**. Pour avoir une approche pratique aux systèmes d'exploitations avec Linux après le cours théorique précédent. + +[Lire "Initiez vous à Linux"](https://openclassrooms.com/fr/courses/7170491-initiez-vous-a-linux) - [Lire "Administrez un système Linux"](https://openclassrooms.com/fr/courses/7274161-administrez-un-systeme-linux) + +**Le langage C - Zeste de Savoir**. Pour être proche du matériel et mieux appréhender comment ton système/OS a été conçu, et comment mieux concevoir et opérer tes applications. + +[Lire "Le langage C"](https://zestedesavoir.com/tutoriels/755/le-langage-c-1/) + +**Python - Zeste de Savoir & Site du Zéro**. Langage de script haut niveau très utilisé + +[Cours Zeste de Savoir](https://zestedesavoir.com/tutoriels/799/apprendre-a-programmer-avec-python-3/) - [Cours Site du Zéro](https://user.oc-static.com/ftp/livre/python/apprenez_a_programmer_en_python.pdf) + +**Ingénieurie de la fiabilité - Google**. Google publie un livre de référence en libre accès sur comment opérer des systèmes de manière fiable. + +[Lire les livres de la collection SRE](https://sre.google/books/) + +**Sécurité - ANSSI et Univ Savoie**. Pour la sécurité, aller voir du côté de l'ANSSI ou des cours d'école d'ingé en libre accès : + +[MOOC de l'ANSSI](https://secnumacademie.gouv.fr/) - [Guide bonnes pratiques ANSSI](https://www.ssi.gouv.fr/entreprise/bonnes-pratiques/) - [Cours Cryptologie et Sécurité](http://www.lama.univ-savoie.fr/pagesmembres/lachaud/Cours/INFO006/Cours/cours.pdf) + +**Trouver les livres de référence**. Dans chaque domaine, et parfois pour des technologies installées, des livres de référence existent. Ce sont souvent des ressources beaucoup plus efficaces qu'un simple tutoriel sur un blog. + +[Liste de livres](https://notes.shichao.io/books/) - [Exemple Linux](https://man7.org/tlpi/) - [Exemple Kubernetes](https://www.manning.com/books/kubernetes-in-action) + +**MOOC**. Il existe pas mal de MOOC en informatique, que ce soit en français comme en anglais, sur des plateformes spécialisées comme une playlist Youtube. + +[Exemple "France Université Numérique](https://www.fun-mooc.fr/fr/cours/?limit=21&offset=0&subjects=2787) diff --git a/content/formations/Chiffrement_froid.md b/content/formations/sysadmin/chiffrement_froid.md similarity index 98% rename from content/formations/Chiffrement_froid.md rename to content/formations/sysadmin/chiffrement_froid.md index 7348598..6d52df0 100644 --- a/content/formations/Chiffrement_froid.md +++ b/content/formations/sysadmin/chiffrement_froid.md @@ -1,6 +1,7 @@ --- title: Chiffrement à froid description: Guide à l'installation d'une machine en chiffrant intégralement son disque dur +weight: 20 published: true date: 2022-01-30T20:43:56.953Z tags: serveur, infrastructure, sysadmin, technique, guide, tutoriel, administration, chiffrement, luks @@ -8,8 +9,6 @@ editor: markdown dateCreated: 2021-12-29T15:29:02.943Z --- -# Chiffrer les partitions de son futur serveur - Le chiffrement à froid, c'est le fait de n'inscrire que des données chiffrées sur un disque (plus précisément [une partition de disque](https://fr.wikipedia.org/wiki/Partitionnement_logiciel_/_mat%C3%A9riel)). C'est le standard [LUKS](https://fr.wikipedia.org/wiki/LUKS) qui permet ce chiffrement : ce dernier se place entre le support de stockage et le système d'exploitation (OS), et dé/chiffre tout ce qui est lu ou écrit sur une partition. **Cette étape doit donc être réalisée avant d'installer le système d'exploitation, mais après [le partitionnement de vos disques](/Guide/Infra/Configuration_disques).** Une fois le chiffrement mis en place, on utilise le système d'exploitation comme d'habitude (tout a l'air déchiffré à l'usage), parce que LUKS chiffre et déchiffre - de façon transparente - toutes les informations que l'OS lit et écrit sur la mémoire morte (le disque). diff --git a/content/formations/Live_CD.md b/content/formations/sysadmin/installer_linux.md similarity index 94% rename from content/formations/Live_CD.md rename to content/formations/sysadmin/installer_linux.md index c4e5043..7975844 100644 --- a/content/formations/Live_CD.md +++ b/content/formations/sysadmin/installer_linux.md @@ -1,6 +1,7 @@ --- -title: Live CD -description: Guide à la création et à l'utilisation d'un Live CD (ou USB) Linux +title: Installer Linux +weight: 10 +description: Installer Linux published: true date: 2021-12-30T15:23:52.320Z tags: installation, infrastructure, sysadmin, technique, guide, tutoriel, linux, live cd, live usb @@ -8,8 +9,6 @@ editor: markdown dateCreated: 2021-12-30T15:23:50.137Z --- -# Création et utilisation d'un Live CD/USB - On utilise un Live CD (ou Live USB - le support de stockage important peu) pour lancer un système d'exploitation (celui présent dans le support de stockage) sur un ordinateur, sans toucher aux disques présents dans l'ordinateur. Utiliser un Live CD, c'est la base pour configurer les disques d'une machine, installer un système d'exploitation (OS) dessus, accéder au disque quand on ne connaît pas le mot de passe administrateur. Bref, c'est la vie ! @@ -46,4 +45,4 @@ Nous, chez Deuxfleurs, on utilise la distribution NixOS (parce qu'elle garantit ## Et pour finir, on a un système d'exploitation qui marche ! -> TODO (screenshots?) \ No newline at end of file +> TODO (screenshots?) diff --git a/content/formations/Configuration_disques.md b/content/formations/sysadmin/partitionnement.md similarity index 99% rename from content/formations/Configuration_disques.md rename to content/formations/sysadmin/partitionnement.md index 94119c1..ddc4f73 100644 --- a/content/formations/Configuration_disques.md +++ b/content/formations/sysadmin/partitionnement.md @@ -1,7 +1,8 @@ --- -title: Configuration des disques +title: Partitionnement description: "Redondance, partitionnement, chiffrement : comment configurer ses disques durs en vue d'une installation de serveur" published: true +weight: 30 date: 2022-04-02T13:38:01.527Z tags: serveur, infrastructure, sysadmin, technique, administration, chiffrement, disque, partitionnement, redondance editor: markdown diff --git a/content/operations/_index.md b/content/operations/_index.md index 29ebdef..17843e4 100644 --- a/content/operations/_index.md +++ b/content/operations/_index.md @@ -2,8 +2,14 @@ title = "Opérations" description = "Opérations" weight = 100 +sorted_by = "weight" +++ -# Opérations +# Définitions + +* _Une grappe_, c'est **un ensemble d'ordinateurs, au moins trois** pour obtenir une grappe bien solide. + + Une grappe est **gérée de façon cohérente** (avec le même système logiciel), **plus ou moins autonome** (elle ne dépend pas du reste du monde pour fournir des services web), **par une entité définie** (une personne physique ou un groupe de personnes). + +* _Les opérateur·ices_ de la grappe ont **deux responsabilités** principales : **la maintenance** de la grappe, et **la protection des données hébergées**. -Ceci est un manuel diff --git a/content/operations/Jitsi.md b/content/operations/app/Jitsi.md similarity index 100% rename from content/operations/Jitsi.md rename to content/operations/app/Jitsi.md diff --git a/content/operations/app/_index.md b/content/operations/app/_index.md new file mode 100644 index 0000000..8c93fad --- /dev/null +++ b/content/operations/app/_index.md @@ -0,0 +1,8 @@ ++++ +title = "Applications" +description = "Gestion des applicatifs" +sorted_by = "weight" +weight = 30 ++++ + + diff --git a/content/operations/email.md b/content/operations/app/email.md similarity index 100% rename from content/operations/email.md rename to content/operations/app/email.md diff --git a/content/operations/grappe/_index.md b/content/operations/grappe/_index.md new file mode 100644 index 0000000..f904d8c --- /dev/null +++ b/content/operations/grappe/_index.md @@ -0,0 +1,8 @@ ++++ +title = "Grappe" +description = "Gestion d'une grappe" +sorted_by = "weight" +weight = 20 ++++ + + diff --git a/content/operations/noeud/_index.md b/content/operations/noeud/_index.md new file mode 100644 index 0000000..4e894fd --- /dev/null +++ b/content/operations/noeud/_index.md @@ -0,0 +1,7 @@ ++++ +title = "Noeuds" +description = "Gestion des noeuds" +sorted_by = "weight" ++++ + + diff --git a/content/formations/Grappe.md b/content/operations/noeud/deploiement.md similarity index 63% rename from content/formations/Grappe.md rename to content/operations/noeud/deploiement.md index a60163b..dcc348f 100644 --- a/content/formations/Grappe.md +++ b/content/operations/noeud/deploiement.md @@ -1,6 +1,6 @@ --- -title: Nouvelle grappe -description: Guide d'installation d'une grappe de serveurs estampillés Deuxfleurs +title: Déploiement +description: Déploiement d'un noeud published: true date: 2022-01-09T13:29:29.710Z tags: installation, serveur, infrastructure, réseau, sysadmin, site géographique, technique, administration @@ -8,26 +8,19 @@ editor: markdown dateCreated: 2021-12-28T14:33:59.088Z --- -# Création d'une nouvelle grappe Dans ce guide, nous allons expliquer comment installer une grappe de serveurs, en vue d'un hébergement pour Deuxfleurs. -## Définitions -* _Une grappe_, c'est **un ensemble d'ordinateurs, au moins trois** pour obtenir une grappe bien solide. - Une grappe est **gérée de façon cohérente** (avec le même système logiciel), **plus ou moins autonome** (elle ne dépend pas du reste du monde pour fournir des services web), **par une entité définie** (une personne physique ou un groupe de personnes). - -* _L'entité administratrice_ de la grappe a **deux responsabilités** principales : **la maintenance** de la grappe, et **la protection des données hébergées**. - -## Choix des ordinateurs +# Choix des ordinateurs Héberger des services web est une tâche à la portée de la plupart des ordinateurs des 10 dernières années. Néanmoins, essayer de faire tourner correctement des applications lourdes sur une toute petite machine n'est pas une partie de plaisir. Alors, quitte à installer une nouvelle grappe, la vie sera plus agréable si ses machines disposent d'au moins : * 4 Go de RAM * 1 To de disque (dur ou SSD) -## Choix d'un site géographique +# Choix d'un site géographique Dans un *site géographique*, on installe une *grappe d'ordinateurs* au sein d'un *réseau local*, qu'on connecte au cluster de Deuxfleurs. @@ -51,27 +44,8 @@ Dans les deux cas - grâce à [la magie des VPN](/Technique/Infra/Wireguard) - o **À terme, chez Deuxfleurs, on compte héberger toute notre infrastructure chez des particuliers.** Mais [la route est encore longue](/Technique/Jalons/Interconnexion) avant que nous ayons assez de bonnes connexions et des ordinateurs suffisamment puissants, sans parler du système de gestion logiciel. Ainsi, **pour le moment, il est tout à fait acceptable d'héberger des services Deuxfleurs en centre de données** : tant qu'on en informe nos usagers et qu'on fait attention à la sécurité. -## Installation des ordinateurs +# Installation des ordinateurs Pour chaque ordinateur de notre future grappe, nous allons avoir besoin d'en configurer le ou les disques, de les chiffrer éventuellement, et d'installer son système d'exploitation. -### Configuration des disques - -La première chose à faire, avant d'installer un système d'exploitation sur un ordinateur, c'est de configurer son ou ses disques. Souhaite-t-on de la redondance (que plusieurs disques stockent la même chose - pour ne pas tout perdre en cas de pépin), et comment veut-on partitionner ses disques ? - -Référez-vous au guide [Configuration des disques](/Guide/Infra/Configuration_disques) - on vous attend ici. - -### Chiffrement à froid - -Une fois nos disques dûment partitionnés, on peut décider de chiffrer nos partitions (c'est même vivement conseillé en cas d'installation dans un centre de données). - -Référez-vous au guide [Chiffrement à froid](/Guide/Infra/Chiffrement_froid). pour ce faire. - -### Installation de NixOS - -Enfin, avec les disques de notre futur serveur tout bien configurés, on peut passer à l'installation du système d'exploitation. - -Dans le monde du réseau, il n'y a pas à hésiter : Linux reigne en maître. Chez Deuxfleurs, on utilise la distribution [NixOS](https://nixos.org/). - -Référez-vous à notre guide d'[installation de NixOS](/Guide/Infra/Installation_NixOS) pour installer NixOS à notre sauce. diff --git a/content/prise_en_main/matrix.md b/content/prise_en_main/matrix.md index f4e6386..321221f 100644 --- a/content/prise_en_main/matrix.md +++ b/content/prise_en_main/matrix.md @@ -25,7 +25,7 @@ Adrien a écrit un [guide d'installation/utilisation du résau Matrix](https://g Deuxfleurs a une pléthore de salons sur Matrix. C'est vraiment à cet endroit qu'on discute le plus entre nous. Le mieux pour les découvrir, c'est de rejoindre notre « espace » (un annuaire de salons et de personnes) qui s'appelle [#la-cabane:deuxfleurs.fr](https://matrix.to/#/#la-cabane:deuxfleurs.fr) et qui ressemble à ça : -![espace_matrix_3salons.png](/espace_matrix_3salons.png) +![espace_matrix_3salons.png](/img/matrix.png) À l'intérieur de cet espace, on vous recommande notamment les 3 salons suivants : diff --git a/static/img/matrix.png b/static/img/matrix.png new file mode 100644 index 0000000..5b67dcc Binary files /dev/null and b/static/img/matrix.png differ