-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSysadmin.page
124 lines (87 loc) · 4.75 KB
/
Sysadmin.page
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
---
format: markdown
title: Sysadmin a Gconfs
categories: base
---
Gconfs gère des outils pour ses membres. A partir de ce moment, se pose la
question de l'administration des systèmes et des outils en question.
## Nom de domaine
<!--TODO -->
## Autohébergement - Serveur CRI
Une VM est prêtée a Gconfs par le CRI. C'est un petit truc avec 2 CPU et 1Go de
RAM, mais c'est déjà pas mal pour ce qu'on veut en faire. Dessus on host a peu
près tout ce qui est pas trop chiant a hoster, en configurant le tout avec
[Ansible](https://www.ansible.com)
### Site web Gconfs
#### Comment ça marche?
Le [site de Gconfs](https://gconfs.fr) est fait avec
[Hyde](https://hyde.github.io), le dépot correspondant se trouve
[ici](https://github.com/gconfs/website-hyde). Y avait un projet de le remplacer
par un site en django mais y a pas trop de nouvelles. Le déploiement du site sur
le serveur est fait automatiquement avec le playbook ansible `website`, qui git
clone et regénère le site automatiquement.
#### Comment mettre a jour le contenu
Du coup, pour updater le site il faut modifier le dépot, **vérifier que ça
compile correctement**, push sur le dépot github, puis puller depuis le serveur
en utilisant le playbook (`sudo ansible-playbook
/etc/ansible/playbooks/website.yml`)
### Wiki Gconfs
#### Comment ça marche?
Le [wiki de Gconfs](https://wiki.gconfs.fr) utilise
[gitit](https://github.com/jgm/gitit). Les données du wiki sont donc stockées
dans git, et il faudrait setup un push vers github en parallelle pour avoir une
version master. Il peut se déployer via le playbook wiki (`sudo ansible-playbook
/etc/ansible/playbooks/wiki.yml`), mais ne clone pas (encore?) le contenu
directement depuis github.
#### Comment mettre a jour le contenu
Pour éditer le wiki, il est bien sur possible d'utiliser l'interface web, mais
on peut aussi git clone le dépot qui contient les données (`git clone
gconfs.fr:/srv/gitit/wikidata wiki_gconfs`) (quand on a un compte sur le
serveur, s'entend), éditer le texte, puis le push sur le serveur a nouveau, ce
qui mettra a jour la version web dynamiquement. Ça s'écrit en markdown.
<!-- TODO: créer des creds automatisés, et uncomment le hook post-receive pour
push sur github -->
### Vault
#### Comment ça marche?
Le [vault](https://vault.gconfs.fr) sert a conserver les mots de passe des
différents comptes utilisés par Gconfs, pour qu'ils soient partagés entre les
sysadmins et le bureau et transmis facilement. Le tout est géré par
[passbolt](https://github.com/passbolt/passbolt_api). Les mots de passe sont
stockés chiffrés avec GPG.
#### Créer un compte
Pour avoir un compte, il faut demander a quelqu'un qui a la main sur le serveur
(pour l'instant). Il lancera alors la commande magique (`sudo -H -u www-data
/srv/vault/bin/cake passbolt register_user -u [email] -f [prénom] -l [nom] -r
[role(user ou admin)]`) et ça lui donnera une URL, qu'il pourra transmettre a la
personne qui veut créer le compte pour qu'elle l'active.
#### Comment je l'utilise
Passbolt fonctionne avec une extension navigateur et des applis
android/iOS/whatever. Il *faut* avoir l'extension pour consulter les
mots de passe et pour créer son compte. Lors de l'activation du compte, une clé
GPG est créée (en js dans le browser), et sera utilisée pour déchiffrer les mots
de passe présents sur le vault. Ça filera aussi un ensemble (couleur + trois
lettres) qui est utilisé pour identifier passbolt quand il demande un mot de
passe. Après avoir sauvegardé la clé GPG, la passphrase et cet ensemble (couleur
+ lettres), bah il suffit d'aller sur [vault](https://vault.gconfs.fr) et
a commencer a stocker/partager des mots de passe.
<!-- TODO: Foutre un serveur mail quelque part et configurer les mails sur
passbolt pour permettre de créer des comptes depuis l'UI web -->
### Pad
Le [pad](https://pad.gconfs.fr) sert a, euh, écrire des trucs de manière
collaborative. C'est géré par [CodiMD](https://github.com/hackmdio/codimd).
#### Créer un compte
On va sur la page d'acceil, on clique sur log in, on rentre ses infos, et on
clique sur register. Done.
#### Comment je l'utilise
L'interface de base comprend un panel a gauche éditable en markdown, et un panel
a droite qui affiche le résultat HTML. Les couleurs correspondantes aux
différentes personnes éditant le document sont tout a gauche du panel d'édition,
et euh voilà quoi 🤷♂️
## Les trucs externes
### Slack
Avant, on avait un channel IRC sur rézosup. Depuis quelques années, Gconfs est
passé a [Slack](https://gconfs.slack.com). Bah c'est slack quoi.
### Google
Les comptes email @gconfs.fr sont gérés par gmail, tout comme les mailing lists
@gconfs.fr. C'est un compte gsuite associatif, mais on utilise vraiment que
Gmail et google drive pour stocker des fichiers partagés.