2022-04-24 11:44:20 +02:00
|
|
|
INFRA(7) "Infrastructure de Baguette" "Manuel de l'infra de Baguette"
|
|
|
|
|
|
|
|
# Liste des machines
|
|
|
|
|
|
|
|
Pour les services : *très important*, _plutôt important_
|
|
|
|
|
|
|
|
[- *ARN*
|
|
|
|
:- _Système_
|
|
|
|
:- _Adresse_
|
|
|
|
:- _Port SSH_
|
|
|
|
:- _Services_
|
|
|
|
|- *Physique*
|
|
|
|
:- Alpine 3.15
|
|
|
|
:[ 89.234.141.125
|
|
|
|
:- 22
|
|
|
|
:[ *firewall*
|
|
|
|
|- team
|
2022-12-17 04:53:23 +01:00
|
|
|
:- OpenBSD 7.2
|
2022-04-24 11:44:20 +02:00
|
|
|
:[ 192.168.122.132
|
|
|
|
:- 2210
|
2022-12-17 22:10:24 +01:00
|
|
|
:[ *gitea* _mattermost_ *smtpd* _honk (fediverse/Mastodon)_
|
2022-04-24 11:44:20 +02:00
|
|
|
|- alpha
|
2022-12-17 04:53:23 +01:00
|
|
|
:- Alpine 3.16
|
2022-04-24 11:44:20 +02:00
|
|
|
:[ 192.168.122.84
|
|
|
|
:- 2203
|
|
|
|
:[ _alpha_ *websocketd* *nginx* todod arpenteurs
|
2022-12-17 22:10:24 +01:00
|
|
|
|- baguette
|
|
|
|
:- Alpine 3.16
|
|
|
|
:[ 192.168.122.181
|
|
|
|
:- 2220
|
|
|
|
:[ _zig dev_ _package.mk_
|
2022-04-24 11:44:20 +02:00
|
|
|
|- bsdbuild
|
|
|
|
:- OpenBSD 6.6
|
|
|
|
:[ 192.168.122.165
|
|
|
|
:- 2265
|
|
|
|
:[ builds (weechat)
|
|
|
|
|- R&D
|
|
|
|
:- Alpine 3.1X
|
|
|
|
:[ 192.168.122.211
|
|
|
|
:- 2205
|
|
|
|
:[ expérimental
|
|
|
|
|- CEIUS
|
|
|
|
:- Alpine 3.1X
|
|
|
|
:[ 192.168.122.30
|
|
|
|
:- 2230
|
|
|
|
:[ CEIUS (??)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_Notes_ :
|
|
|
|
- Les machines pourraient être renommées.++
|
|
|
|
Les adresses et les ports sont aléatoires.
|
|
|
|
- Le serveur physique a plusieurs disques, mais un seul est utilisé pour le moment.++
|
|
|
|
Un RAID serait envisageable.
|
|
|
|
|
|
|
|
# phy0
|
|
|
|
|
|
|
|
La machine `phy0` redémarre sur son disque `/dev/sdb`.
|
|
|
|
|
|
|
|
## procédure après redémarrage
|
|
|
|
|
|
|
|
Il faut supprimer la règle iptables empêchant les connexions extérieures vers les machines virtuelles.
|
|
|
|
- iptables -D FORWARD 2
|
|
|
|
|
|
|
|
# VM Alpha
|
|
|
|
|
|
|
|
## NGINX
|
|
|
|
|
|
|
|
- gère toutes les connexions entrantes sur les ports 80, 443
|
|
|
|
- configuration dans _/srv/root/nginx/_, attention au rewrite de service (voir *TODO*)
|
|
|
|
|
|
|
|
[- _Domaine_
|
|
|
|
:- _Service_
|
|
|
|
:- _Port_
|
|
|
|
|- *git.baguette.netlib.re*
|
|
|
|
:- gitea
|
|
|
|
:- 443 (80 redirigé)
|
|
|
|
|- *team.baguette.netlib.re*
|
|
|
|
:- mattermost
|
|
|
|
:- 443 (80 redirigé)
|
2022-12-17 22:10:24 +01:00
|
|
|
|- *social.karchnu.netlib.re*
|
|
|
|
:- honk
|
|
|
|
:- 80 (443 redirigé)
|
2022-04-24 11:44:20 +02:00
|
|
|
|- _todo.baguette.netlib.re_
|
|
|
|
:- todo
|
|
|
|
:- 443 (80 redirigé), 9999
|
|
|
|
|- arpenteurs.netlib.re
|
|
|
|
:- kemal
|
|
|
|
:- 80
|
|
|
|
|
|
|
|
# VM team
|
|
|
|
|
|
|
|
## {git,team}.baguette.netlib.re
|
|
|
|
|
|
|
|
Les services `gitea` et `mattermost` sont _ouvert_ au public, notamment pour le projet `Baguette`.
|
|
|
|
|
|
|
|
- gitea et mattermost utilisent _postgresql_
|
|
|
|
- gitea
|
|
|
|
- configuration: _/etc/gitea/_ = la base, _/var/gitea/_ = les données + personnalisation
|
|
|
|
- _/etc/gitea/gitea.conf_ = psql, mails, droits
|
|
|
|
- _/var/gitea/_ = dépôts, avatars, personnalisation de l'apparence
|
|
|
|
- mattermost pour le développement
|
2022-12-17 22:10:24 +01:00
|
|
|
- _honk_ pour remplacer Twitter
|
2022-04-24 11:44:20 +02:00
|
|
|
|
|
|
|
Les certificats ont été générés par _acme.sh_. Voir section *TODO*.
|
|
|
|
|
|
|
|
## opensmtpd
|
|
|
|
|
|
|
|
Le serveur smtpd gère les domaines :
|
|
|
|
- baguette.netlib.re (requis par gitea et mattermost)
|
|
|
|
|
|
|
|
*Debug potentiel*
|
|
|
|
|
|
|
|
En cas de **AUTH LOGIN failed** dans les logs, vérifier que *rspamd* est lancé.
|
|
|
|
|
|
|
|
|
|
|
|
# VM bsdbuild (toujours active ?)
|
|
|
|
|
|
|
|
Actuellement : zone de jeu, on peut tester des outils dessus, lancer des compilations.
|
|
|
|
|
|
|
|
|
|
|
|
# TODO pour le développement d'outils à déployer sur l'infra
|
|
|
|
|
|
|
|
## Pare-feu
|
|
|
|
|
|
|
|
- pourrait imposer un rate limit
|
|
|
|
- l'accès à un service depuis une autre VM est compromis pour l'instant, il faut des règles DNAT+SNAT
|
|
|
|
|
|
|
|
## Déploiement
|
|
|
|
|
|
|
|
Le déploiement devrait être effectué de manière automatique depuis les sources.
|
|
|
|
Actuellement un problème réseau nous en empêche : il faut se plonger dans `iptables`.
|
|
|
|
|
|
|
|
*service*
|
|
|
|
- pourrait (devrait ?) être utilisé à terme
|
|
|
|
- manque la gestion correcte des groupes au lancement d'un processus
|
|
|
|
- lance actuellement nginx *mais sa configuration est réécrite avec de mauvaises valeurs*, à revoir
|
|
|
|
|
|
|
|
*libipc* doit être patché pour les sockets unix qu'il crée :
|
|
|
|
- changer le propriétaire et le groupe
|
|
|
|
- changer les permissions
|
|
|
|
|
2022-12-17 22:10:24 +01:00
|
|
|
## Certificats à maintenir (acme-client sur team)
|
2022-04-24 11:44:20 +02:00
|
|
|
|
|
|
|
- baguette.netlib.re (+ git, team et todo sur le même domaine)
|
2022-12-17 22:10:24 +01:00
|
|
|
- social.karchnu.netlib.re
|
2022-04-24 11:44:20 +02:00
|
|
|
|
|
|
|
## Adresse IPv6
|
|
|
|
|
|
|
|
Pour le moment tout est en v4, y compris sur la machine physique.
|