From c63e2b81d56ada4fa3dadb5bd7286b008944b902 Mon Sep 17 00:00:00 2001 From: Baptiste Jonglez Date: Thu, 30 May 2024 09:30:44 +0200 Subject: =?UTF-8?q?Ajout=20guide=20installation=20site=20g=C3=A9ographique?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "content/operations/pr\303\251requis-site.md" | 58 +++++++++++++++++++++++++ "content/operations/pr\303\251requis.md" | 19 ++------- content/operations/site-openwrt.md | 61 +++++++++++++++++++++++++++ content/operations/site.md | 19 +++++++++ 4 files changed, 141 insertions(+), 16 deletions(-) create mode 100644 "content/operations/pr\303\251requis-site.md" create mode 100644 content/operations/site-openwrt.md create mode 100644 content/operations/site.md diff --git "a/content/operations/pr\303\251requis-site.md" "b/content/operations/pr\303\251requis-site.md" new file mode 100644 index 0000000..f124568 --- /dev/null +++ "b/content/operations/pr\303\251requis-site.md" @@ -0,0 +1,58 @@ +--- +title: "Prérequis pour un site" +description: "Prérequis pour un site" +date: 2024-05-30 +dateCreated: 2024-05-30 +weight: 10 +extra: + parent: 'operations/site.md' +--- + +# Qu'est-ce qu'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. + +On peut distinguer deux types de sites : + +* _Dans un centre de données_ : chaque ordinateur de la grappe appartient au même centre de données, dispose d'une adresse IP fixe qui le connecte directement à Internet. + + Dans ce cas-ci, **l'installation et l'administration sont assez simples** (on a moins de concepts à avaler que chez un particulier). + Par contre, **nous ne sommes pas chez nous** : le propriétaire du centre de données peut accéder aux disques, et voit ce qui passe sur le réseau. **Chiffrement du disque vivement conseillé.** + +* _Chez un particulier_ : la grappe est reliée à Internet par une *box*, qui filtre le trafic réseau selon des règles variables. La grappe se partage l'adresse IP de la box (qui peut changer régulièrement, être en IPv4 ou en IPv6). + + Dans ce cas de figure, **l'installation comme l'administration demandent plus de connaissances** : pour caricaturer, on doit installer et administrer la grappe **malgré le Fournisseur d'Accès Internet** (FAI), qui considère *a priori* que son abonnement ne sert pas à héberger des services web. + + On aura affaire à sa box (NAT, pare-feu...), au manque de garanties concernant notre adressabilité (IPv4 dynamique, IPv6 ? ...), ce qui va nous mener à devoir faire du routage. Le nœud du problème, c'est que chaque ordinateur de la grappe n'aura pas pignon sur rue (pas d'adresse IP publique et fixe par machine). + + Néanmoins, **on est chez nous !** Votre disque dur - qui contient les données personnelles de vos usagers chéris - est sous vos yeux, bien au chaud. Le seul curieux qui voit passer votre trafic réseau est votre FAI : *rien de nouveau sous le soleil*. + +# Pré-requis humains + +- assurer une sécurité physique vis-à-vis des machines et des données qu'elles contiennent +- pouvoir intervenir physiquement dans un délai de quelques jours en cas de panne d'une machine ou du réseau +- être d'accord pour partager son réseau et son IP avec l'infrastructure de Deuxfleurs (ou alors disposer d'une seconde connexion à Internet) + +# Pré-requis techniques de base + +- disposer d'une connexion fibre / FTTH avec un débit montant d'au moins 100 Mbps +- disposer d'une IPv4 publique dédiée et non partagée (la plupart des FAI proposent cette option) +- avoir un FAI qui fournit de l'IPv6 +- avoir un routeur ou une box qui supporte UPnP +- pouvoir configurer le firewall IPv6 sur le routeur ou la box pour autoriser le trafic IPv6 entrant vers les noeuds Deuxfleurs +- ne pas déjà héberger des serveurs chez soi qui auraient besoin des mêmes ports TCP/UDP que Deuxfleurs (80, 443, 25, ...) + +# Pré-requis supplémentaires pour le mail + +Héberger un service mail demande des pré-requis supplémentaires : + +- pouvoir définir le reverse DNS associé à son IPv4 publique. Free le permet, ainsi que la plupart des FAI associatifs. Orange et SFR ne le permettent pas. +- s'assurer que le FAI ne bloque pas le port 25 en entrée. Certains FAI comme Free bloquent par défaut mais permettent de débloquer sur demande. Orange ne permet pas de débloquer le port 25. + +# Fournisseurs d'accès Internet recommandés + +Pour l'instant, les FAI suivants ont été testés et remplissent tous les pré-requis : + +- Free +- Belgacom +- Rézine diff --git "a/content/operations/pr\303\251requis.md" "b/content/operations/pr\303\251requis.md" index 37d5179..128f2ee 100644 --- "a/content/operations/pr\303\251requis.md" +++ "b/content/operations/pr\303\251requis.md" @@ -1,7 +1,7 @@ --- title: "Prérequis pour un nœud" description: "Prérequis pour un nœud" -date: 2022-01-09T13:29:29.710Z +date: 2024-05-30 dateCreated: 2021-12-28T14:33:59.088Z weight: 10 extra: @@ -22,20 +22,7 @@ Héberger des services web est une tâche à la portée de la plupart des ordina # 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. +Dans la plupart des cas, le nouveau noeud sera ajouté à un site géographique existant. -On peut distinguer deux types de sites : +Si il est envisagé d'installer un nouveau site géographique, voir : [guide d'installation d'un nouveau site géographique](@/operations/site.md) -* _Dans un centre de données_ : chaque ordinateur de la grappe appartient au même centre de données, dispose d'une adresse IP fixe qui le connecte directement à Internet. - - Dans ce cas-ci, **l'installation et l'administration sont assez simples** (on a moins de concepts à avaler que chez un particulier). - Par contre, **nous ne sommes pas chez nous** : le propriétaire du centre de données peut accéder aux disques, et voit ce qui passe sur le réseau. **Chiffrement du disque vivement conseillé.** - -* _Chez un particulier_ : la grappe est reliée à Internet par une *box*, qui filtre le trafic réseau selon des règles variables. La grappe se partage l'adresse IP de la box (qui peut changer régulièrement, être en IPv4 ou en IPv6). - - Dans ce cas de figure, **l'installation comme l'administration demandent plus de connaissances** : pour caricaturer, on doit installer et administrer la grappe **malgré le Fournisseur d'Accès Internet** (FAI), qui considère *a priori* que son abonnement ne sert pas à héberger des services web. - - On aura affaire à sa box (NAT, pare-feu...), au manque de garanties concernant notre adressabilité (IPv4 dynamique, IPv6 ? ...), ce qui va nous mener à devoir faire du routage. Le nœud du problème, c'est que chaque ordinateur de la grappe n'aura pas pignon sur rue (pas d'adresse IP publique et fixe par machine). - - Néanmoins, **on est chez nous !** Votre disque dur - qui contient les données personnelles de vos usagers chéris - est sous vos yeux, bien au chaud. Le seul curieux qui voit passer votre trafic réseau est votre FAI : *rien de nouveau sous le soleil*. - diff --git a/content/operations/site-openwrt.md b/content/operations/site-openwrt.md new file mode 100644 index 0000000..81a68f3 --- /dev/null +++ b/content/operations/site-openwrt.md @@ -0,0 +1,61 @@ +--- +title: "Configuration réseau OpenWrt" +description: "Configuration réseau OpenWrt" +date: 2024-05-30 +dateCreated: 2024-05-30 +weight: 20 +extra: + parent: 'operations/site.md' +--- + +# Pourquoi OpenWrt + +Pour installer un site géographique, il y a deux possibilités pour gérer le réseau : + +- utiliser la box fournie par le FAI +- utiliser son propre routeur + +Certaines box de FAI sont limitées : elles ne permettent parfois pas de configurer le pare-feu IPv6, ou bien elles ont un support d'UPnP pas assez fiable pour les besoins de Deuxfleurs. + +Dans ce cas, utiliser son propre routeur et y installer [OpenWrt](https://openwrt.org/) est un choix naturel : c'est un projet en logiciel libre, avec une grande communauté et beaucoup de modèles matériel supportés. +Par ailleurs, OpenWrt est très modulaire, on peut installer des paquets additionnels pour rajouter des fonctionnalités comme UPnP. + +Attention, installer et configurer OpenWrt demande d'être à l'aise avec SSH, vim, et d'avoir quelques connaissances en réseau. + +# Choisir un matériel supporté par OpenWrt + +Voir [le site d'OpenWrt](https://openwrt.org/supported_devices). + +# Installer OpenWrt + +Voir [la documentation OpenWrt](https://openwrt.org/docs/guide-quick-start/start) et un [guide générique](https://openwrt.org/docs/guide-user/installation/generic.flashing). + +# Configurer OpenWrt pour un site géographique Deuxfleurs + +- installer OpenWrt +- se connecter en SSH sur le routeur +- définir un mot de passe root avec `passwd`, le renseigner dans le [dépôt des secrets](@/operations/pass.md) +- désactiver les IPv6 ULA : dans `/etc/config/network`, supprimer le bloc qui ressemble à ça : + + config globals 'globals' + option ula_prefix 'fda0:8093:6a4c::/48' + +- définir un nom d'hôte pour le routeur, par exemple `gw-`. Ça se passe dans `/etc/config/system` +- installer le serveur UPnP : + + opkg update + opkg install miniupnpd-nftables + +- configurer le serveur UPnP, ça se passe dans `/etc/config/upnpd` : + + TODO + +- autoriser le trafic IPv6 en entrée. Attention, la configuration ci-dessous autorise absolument tout le trafic IPv6 pour toutes les machines du réseau local. Vous pouvez être plus fin si nécessaire. + Dans `/etc/config/firewall`, rajouter le bloc suivant : + + config forwarding + option src wan + option dest lan + option family ipv6 + +- rebooter le routeur pour être sûr d'appliquer tous les changements diff --git a/content/operations/site.md b/content/operations/site.md new file mode 100644 index 0000000..5d84ced --- /dev/null +++ b/content/operations/site.md @@ -0,0 +1,19 @@ +--- +title: "Installer un site" +description: "Installer un site géographique" +date: 2024-05-30 +dateCreated: 2024-05-30 +weight: 19 +extra: + parent: 'operations/_index.md' +--- + +# Déployer un nouveau site géographique pour l'infrastructure Deuxfleurs + +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. + +Rajouter un nouveau site pour l'infrastructure Deuxfleurs est une opération qui demande de nombreuses étapes et peut avoir un fort impact sur la production. + +Avant de se lancer, il faut en parler aux autres admins et [s'assurer qu'on remplit les prérequis](@/operations/prérequis-site.md). + +Pour le réseau, nous avons un [guide de configuration de routeur sous OpenWrt](@/operations/site-openwrt.md) -- cgit v1.2.3