Serveurs/Golf.md
... ...
@@ -73,6 +73,40 @@ Cela signifie :
73 73
- On map un `posixAccount` a un `genericPerson`
74 74
- Le shell autorisé pour les utilisateurs depuis le ldap est `scponly` qui est un cli pour `scp`.
75 75
76
+#### La petite subtilité
77
+
78
+Pour que améliorer la sécurité sur Golf puisque des utilisateurs peuvent s'y connecter depuis le LDAP, il a té mis en place deux sécurités :
79
+
80
+D'abord NSS fait en sorte que le home soit dans `/srv/chrooted_sftp`.
81
+
82
+Ensuite, comme décrit plus haut le shell fourni au webmestre est le programme `/usr/bin/spconlyc_umask`.
83
+C'est en fait un programme custom au ResEl dont voici le code :
84
+
85
+```c
86
+#include <sys/types.h>
87
+#include <sys/stat.h>
88
+#include <unistd.h>
89
+#include <stdio.h>
90
+
91
+int main(int argc, char** argv)
92
+{
93
+ // Simple program that sets the correct umask and launch scponlyc
94
+ // If we don't do this, scponlyc will not make the chroot jail..
95
+ // Indeed, according to its sources, it checks if argv[0] is /usr/sbin/scponlyc in order to actually make the jail !
96
+ argv[0] = "scponlyc";
97
+ umask(0006);
98
+ execv("/usr/sbin/scponlyc", argv);
99
+}
100
+```
101
+
102
+Il s'agit juste d'appliquer un umask de *0006* soit des permissions en 0660 puis de lancer spconlyc, un simple client sftp.
103
+
104
+*Mais c'est pas fini*
105
+
106
+Parcequ'au ResEl on aime bien les trucs pas future-proof, il y a 7 ans a été développé "suiddiremulate", qui est une tentative d'appliquer le SUID a un répertoire parent, pour que lorsqu'un utilisateur écrive dans un dossier, le fichier écrit appartienne au propriétaire du répertoire parent.
107
+Le programme est [ici](https://trac.resel.fr/browser/devs/suiddiremulate) et fait cela pour tout le dossier `/srv/www/`.
108
+
109
+
76 110
# Historique
77 111
78 112
* Migration et re-rédaction des articles sur Golf et Sites Clubs par Théo Jacquin en 2017.